PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : L1-Cache bei zukünftigen AMD-Prozzessoren


BlueI
2003-02-06, 17:23:15
Keine Ahnung, ob ich's ins Tech- oder ins Speku-Forum schreiben soll, aber ich hab' mich für dieses hier entschieden.

Zur Frage:
Was wird eigentlich aus dem L1-Cache bei z.b Athlon64 und folgenden Prozessoren, wenn AMD SSE2 integriert? 128KB+12KB oder nur 12KB für die µOPS und der normale L1-Cache verschwindet? Und was hätte das für folgen? Langsamer in Anwendungen ohne SSE2 und schneller bei SSE2 (das auf jeden Fall)?

p.s.: Oder wird's was ganz anderes, weil der Chip ja sowieso völlig neu designed is (Speichercontroller integriert, u.ä.)?

Endorphine
2003-02-06, 17:52:03
Eine Frage zum besseren Verständnis, was du meinst: Was hat SSE2 mit dem L1-Cache zu tun? Der L1 Befehlscache speichert beim P4 nur µ-Ops, ja. Aber was hat das mit SSE2 zu tun, das ist doch ein Bestandteil der "Netburst"-Architektur?

BlackBirdSR
2003-02-06, 17:53:32
ich versteh dich nicht ganz..

der K8 hat ganz wieder K7 schon 2x64KB L1 Cache. jeweils 64KB für Daten und Instruction Cache.

rops/µops werden aus den Befehlen erst nach dem Decoder, egal ob jetzt SSE/SSE2 oder x87.
Das hat mit dem Cache nichts zu tun.

Verwechselst du hier den Trace Cache des P4 mit irgenwas hinsichtlich SSE2?

GloomY
2003-02-07, 02:54:21
Ich kann mich meinen Vorrednern nur anschließen.

SSE(2) ist ein SIMD (Single Instruction Multiple Data) "Befehlsbündel", welches zusätzlich noch ein paar extra Prozessorregister für deren Verwendung mitbringt. SSE(2) sind also spezielle Befehle (bzw. hardwaremäßig betrachtet spezielle Schaltungen) der Ausführungseinheit(en), die somit an sich mit Cache(s) gar nichts zu tun haben.

Der Athlon / Athlon 64 hat weiterhin seinen (Harvard-gesplitteten) L1 Cache mit den schon erwähnten 2x64 kByte (2-fach assotiativ, 64 Byte Line Size usw.).

BlueI
2003-02-07, 14:12:48
Ok, dann war's mein Fehler :sulkoff: : Ich dachte immer, dass der P4 12KB für die erst mit SSE2 hinzugekommenen µOPS hat und keinen L1-Cache wie der AthlonXP. Der P3 hatte ja einen L1-Cache, genau wie Athlons.

Meine Frage is trotzdem beantwortet: Athlon64 mit normalen 128KB L1-Cache und unabhängig davon SSE2.

p.s. Man lernt nie aus! Und ich bin für nähere Erklärungen zum Thema offen. ;)

BlackBirdSR
2003-02-07, 14:41:58
Originally posted by BlueI
Ok, dann war's mein Fehler :sulkoff: : Ich dachte immer, dass der P4 12KB für die erst mit SSE2 hinzugekommenen µOPS hat und keinen L1-Cache wie der AthlonXP. Der P3 hatte ja einen L1-Cache, genau wie Athlons.

Meine Frage is trotzdem beantwortet: Athlon64 mit normalen 128KB L1-Cache und unabhängig davon SSE2.

p.s. Man lernt nie aus! Und ich bin für nähere Erklärungen zum Thema offen. ;)

Nein der P4 hat die µOps nicht erst für SSE2 bekommen.

Die Befehle für die Verabreitung, kommen als CISC Befehle an.
Um diese ausführen zu können, müssen diese von Decoder(n) in RISC artige Befehle zerlegt werden.
Bei Intel sind das µOps. (bei AMD z.B ROPS/MOPS)
Und das schon seit dem PPro also dem Urahn der IA32 RISC Kerne.
Ob nun SSE2 oder FPU, sie Alle verarbeiten diese µOps.

der P4 hat auch noch einen L1 Cache, allerdings nur 8KB (64KB K7, 16KB P3)für Daten, und nicht mehr für die Befehle.
Die Befehle werden durch den Decoder in den Core gebracht und dann im sog. TraceCache gespeichert, der den L1 BefehlsCache ersetzt, aber auch noch viel mehr macht als dieser.
Daher kommen vielleicht deine 12µOps, wenn auch dieser Wert nicht stimmt. Es sind 12K µOps, also ein bischem mehr :)

Dass Intel diesen Weg gegangen ist, hängt mehr damit zusammen dass man weniger Decoder braucht (nur 1) der auch noch weniger benutzt wird, und man das Design damit häher Takten kann.
Ausserdem hat der TraceCache Vorteile für das generelle Design des P4.

Der Athlon64 kann also ohne weiteres SSE2 nutzen, und dabei die 128KB L1 Cache.