Gelöst CPU-Funktionen erklärt, Wozu L2/L3-Cache?

GoodKing

Stammgast III
Themen-Ersteller
Nov 18, 2020
831
270
Hallo,
kann mir jemand die folgenden CPU-Funktionen des 3700X erklären:
MMX(+), SSE, SSE2, SSE3, SSE4.1, SSE4.2, SSE4A, x86-64, AMD-V, AES, AVX, AVX2, FMA3, SHA
Also AES, SHA und x86-64 weiß ich ja, was sie bedeuten, aber was ist mit den anderen?
Und warum gibt es L2-und L3-Cache und für was ist der da, also was wird da drauf gespeichert?
 

Lanwolf

Stammgast II
Feb 12, 2021
327
57
Naja alles was du hier wissen willst, kannst du gut auf Wikipedia nachlesen. Ist bei meinen Azubis im ersten Lehrjahr dran.

MMX(+), SSE, SSE2, SSE3, SSE4.1, SSE4.2, SSE4A, x86-64, AMD-V, AES, AVX, AVX2, FMA3, SHA
Sind Grundsätzlich Befehlssätze. Hiermit kann der Programmiere der Software auf Optimierungen zurückgreifen die Programme / Games schneller machen.
Als mit der älteste Befehlssatz ist MMX. Dieser wurde das erste mal mit einem Pentium 1 166Mhz vertrieben. Später kamen die SSE Versionen hinzu.
AMD-V ist heute (bei mir) sehr wichtig. Dieses ist eine Verbesserung für virtualisierung von Betriebsystemen.

Früher wurden die normalen CPUs nur mit L2 Cache gebaut. Server CPUs hatten schon L3 Cache. Der Cache ist ähnlich wie Arbeitsspeicher nur wesentlich schneller. Leider sind diese Speicher meist verhältnismäßig klein. Somit ist mehr besser. :cool:
Dieses kann man super bei div. RAM Tests sehen.
1621538092828.png
 
  • Gefällt mir!
Reactions: GoodKing

TheSupercomputer

Administrator
Mitarbeiter
Nov 3, 2018
12.672
10.308
Um das ganze noch etwas technischer aufzudröseln:
MMX, SSE und AVX sind SIMD Befehlssatzerweiterungen, die es ermöglichen mehrere Daten die den selben Befehl benutzen gleichzeitig in einem Thread zu verarbeiten.

Z.b. wenn du 4 Zahlen paare addieren möchtest, kannst du das ohne die SIMD Erweiterungen ausschließen nach einander, mit diesen Erweiterungen gleichzeitig. Das erhöht den Datendurchsatz stellenweise enorm, wodurch die Geschwindigkeit erhöht wird.

AMD-V ist der AMD spezifische Name, einer Technik, die es ermöglicht Virtuelle Maschinen auf einem Rechner zu betrieben, da bei der Aktivierung, jedoch unter anderem Teiles des Caches reserviert werden, ist diese Technik standardmäßig deaktiviert.

Zum Schluss zum Cache, im Cache befinden sich Daten und Instruktionen zum schnellen Zugriff, den RAM ist verdammt langsam und die Festplatten kannst du komplett vergessen wenn es um die schnelle Bereitstellung von Daten geht.

Im Cache stehen die benötigten Daten in unter 8 Takten zur Verfügung (genaue Daten müsste ich jetzt erst mal nach schauen)
L1 Typischerweise 1 Takt
L2 Typischerweise 2-4 Takte
L3 Typischerweise 4-8 Takte

In der Zeit, bis die Daten da sind, kann die CPU nichts tun, also Zeit ohne nutzen und somit ein massiver Verlust von Geschwindigkeit.

RAM liegt hier übrigens bei weit über 100 Takte für einen Zugriff und bei Festplatten ist es noch mal deutlich schlimmer.

Ohne Cache ist eine CPU kaum auslastbar, da sie ständig auf Daten warten müsste.

Nun ist der Cache aber sehr teuer in der Herstellung und je größer desto langsamer, daher gibt es die drei Level an Cache, hin und wieder sogar L4, aber das ist selten zu finden und nicht bei Consumer Hardware zu sehen. Und da der Cache so teuer ist, wird der in der Regel möglichst klein gehalten.