Die Sache mit den Caches aktueller CPUs

PhenomII-Fan

Freizeitschrauber(in)
Hallo allerseits,

Ich wollte mal diesen Thread eröffnen, weil ich denke, dass das mal diskutiert werden muss. :D

In der letzten PCGH stand im Spieleartikel zu aktueller Hardware, dass der L2 Cache mit 10 Taktzyklen angesprochen werden kann, der L3 Cache jedoch mit satten 40 Zyklen!:wow:

Ich wusste ja, dass der L1 am schnellsten arbeitet und L2 & L3 dann jeweils langsamer sind, aber das es so stark ist, wusste ich nicht. Deshalb ist der Nutzen eines großen L3 Caches in Spiele teilweiße sehr, sehr gering.
  • Was diese Timings (Taktzyklen) "anrichten können", kann man ja schön sehen, wenn man den i7 975 und den i7 980X vergleicht (beide mit 3,33GHz). Letzterer ist trotz zwei Kerne mehr in Anwendungen (wenn man 2 Kerne deaktiviert -> Chancengleicheit) und in Spielen teilweiße langsamer. --> Weil der L3 Cache des 980X mit höheren Timings arbeitet. ;)
  • Früher merkte man den einen größeren L2 Cache mit 10-15%, gegenüber dem kleineren Modell.
  • Da sich aber in den letzten (2) Jahren in Sachen L2 Cache nicht mehr viel gatan hat (Intel hat den L2 Cache sogar auf 256KB reduziert!!) ist wie schon erwähnt der Nutzen einens größeren L3 Caches in Spielen gering.
  • Intel hat ja auch bei dem Yorkfield es "geschafft" den L2 Cache auf 2x6MB aufzubohren
Warum gehen Intel und AMD diesen Weg den L2 Cache unangetastet zu lassen und den L3 Cache weiter zu erhöhen.
Intel will bei Sandy Bridge den L3 Cache sogar noch mal pro Kern deutlich erhöhen (Nehalem 4Kerne & 8MB - SB 4Kerne 10MB (?)). Wie es beim Bulldozer aussehen wird, weis ich gerade nicht.


Deshalb würde ich gerne mal darüber diskutieren, warum man den L3 Cache immer weiter ausbaut und die schnelleren (aber auch kleineren) Caches "darunter" stagnieren lässt.

Möge die Runde eröffnet sein. :D
 
Der L3 Cache kann von allen Kerne angesprochen werden, wenn Kern 1 nicht viel Braucht, hat Kern 4 der vielleicht jede Menge Cache für seinen Thread braucht, sich einfach mehr genehmigen. Man ist also flexibler mit der Verteilung während der L2 Cache immer nur für eine CPU da ist.

Auch ist L3 CAche deutlich günstiger in der Herstellung, da eben langsamer. Der sehr schnelle L1 und L2 Cache ist recht teuer in der Herstellung.
 
Der L3 Cache kann von allen Kerne angesprochen werden, wenn Kern 1 nicht viel Braucht, hat Kern 4 der vielleicht jede Menge Cache für seinen Thread braucht, sich einfach mehr genehmigen. Man ist also flexibler mit der Verteilung während der L2 Cache immer nur für eine CPU da ist.
Ja aber der L2 Cache muss ja nicht immer Kernexklusiv sein, beim Conroe/Wolfdale & Yorkfield habel sich auch 2 Kerne einen gemeinsamen L2 Kache geteilt.

Dass der L3 Cache von allen Kernen gemeinsam genutzt werden kann weis ich, aber was nützt es denn, wenn der Gewinn mager ausfällt.
Man kann das ja eigentlich sehr gut bei den AthlonII -& PhenomII Prozessoren messen, wie hoch der Gewinn durch den zusätzlichen L3 Cache ist.

Deswegen entweder ist der Gewinn wirklich gering, die Software/Spiele nutzen es noch nicht vollständig, oder aber AMD hat die Prozess- und Cacheverwaltung nicht optimal integriert.
Auch ist L3 CAche deutlich günstiger in der Herstellung, da eben langsamer. Der sehr schnelle L1 und L2 Cache ist recht teuer in der Herstellung.
OK, das wusste ich nicht.
ABER das mag zwar ein entscheidendes Argument bei preiswerten CPUs sein, nicht aber in der Oberklasse, wo es ja eindeutig mehr auf die Leistung, als auf den Preis ankommt. ;)
 
hmm.. ich denke, ein on-die-l3-cache-transistor kostet
in der herstellung exakt dasselbe wie ein l1-cache-transistor
 
Es ist nur eine Belichtungsmaske, aus der der gesamte Chip entsteht.

Die Kosten sind gleich.

Aber L1 und L2 Cache muss man pro Kern aufbringen. Und ich bin mir sicher, dass Intel verschiedene Kombinationen probiert hat, bis die zur jetzigen Konstellation gelangt sind.

40 Taktzyklen sind nicht so übermäßig viel. Es stand mal in einer Chip glaube ich, dass es sich statistisch lohnt öfter mal länger zu warten, ob ein "Datum" im Cache vorhanden ist, als den Speichercontroller sofort auf die Suche im RAM zu schicken.

Bei vielen CPUs ist der Multi (zur Baseclock o.a.) im Moment um die 20. Das sind also nur 2 Zyklen hier im Vergleich zur Speicherlatenz von DDR3 Speicher (24-27). Ich hoffe die "Rechnung" ist einigermaßen korrekt :P .

Die Bearbeitungsgeschwindigkeit hängt von vielen Faktoren ab, nicht nur in der Cachestrategie sondern z.B. auch von der Trefferquote der branchprediction (Voraussage wie das Programm weitergeht, die u.a. ermöglicht, dass die CPU weiterrechnen kann, wenn nicht auf das Ergebnis der aktuellen Berechnung gewartet werden muss. z.B. bei voneinander unabhängigen Variablen)
 
Das wird wohl auch eine Optimierungs Frage sein , ich denke mal das nicht viel Software wirklich denn L3 ausnuzt , jedenfalls nicht so wie es sein koennte/Sollte ;)
komisch aber auch das die Intels auch beim L1 ziemlich wenig haben im vergleich zu AMD und trotzdem scheint der L1 dem Phenom 2 nicht viel zu bringen :)

mfg F-4
 
Die Belichtung ist nicht das was ich mit "teurer" meine. Da der Cache feiner gearbeitet ist, ist die Ausfallrate beim Belichten höher. Und das kostet.
 
komisch aber auch das die Intels auch beim L1 ziemlich wenig haben im vergleich zu AMD und trotzdem scheint der L1 dem Phenom 2 nicht viel zu bringen :)

mfg F-4
Bei Intel sind je 32KB für Daten und Instruktionen, bei AMD hingegen je 64 KB.

Mich würde es auch mal stark interessieren, ob nun AMD damit eine andere Schwäche ihrer Phenoms ausgeleichen wollten, oder warum Intel anscheinend auch mit 2x32KB auskommt...

Was man halt auch nicht vergessen darf, ist, dass bei Intel der L1 + L2 Cache im L3 intergiert sind, was bei AMD nicht der Fall ist...

Ich finde, dass es bei den Caches in der Zukunft noch Optimierungsbedarf besteht.
 
Die Belichtung ist nicht das was ich mit "teurer" meine. Da der Cache feiner gearbeitet ist, ist die Ausfallrate beim Belichten höher. Und das kostet.
Wie gesagt bei preiswerten Prozessoren mag das richtig sein zu sparen, aber im High End Segment, sollte ich (aus der Sicht von AMD & Intel) doch viel versuchen um leistungsstarke CPUs produzieren zu können.

Selbst, wenn diese (aufgrund ihres Preises) nicht so starken Verkaufszahlen haben, wie preiswertere, so wirft das immer ein gutes Licht über den Rest der Prozessorfamilie - so denken zumindestens viele Otto-normal-Verbraucher. ;)
 
Nur das der Retail Markt... also wo Leute einzlene CPUs kaufen, ziemlich klein ist. Das wird gerne vergessen. OEM, Server und der Notebook Markt stellen den Bereich dar der das dicke Geld macht. Außerdem, ist dir die derzeitige High End Liga zu langsam? Wo liegt da also das Problem oder besser, wo liegt das Bedürfnis hier krampfhaft jedes Quentchen an Leistung raus zu quetschen wenn man auch so sehr gut fährt?
Cache ist ja auch nicht alles, bei weitem nicht. Und warum die Ausbeute ausbremsen nur um noch ein bisschen besser zu sein? Bringt ja nichts an Gewinn.

Im übrigen, desto größer der L1 und L2 Cache, desto länger dauern auch die Zugriffe, denn der Cache muss ja auch erst mal durchsucht werden. Großer Cache ist nicht gleich schnellerer Cache.
 
jaja und in den alten Tagen wo die Caches noch nicht in irgendwelchen Leveln geteilt waren ,wo es nur data und Inst gab und 16 kb schon Hammer viel waren , da wurde noch auf Motorola eingepruegelt weil der 40er nur 4 kb hatte der 60er nur 8 kb und Chips wie der 30er kammen nur mit je 512 Byte daher :)
das waren noch Zeiten :)

mfg F-4
 
das war vor meine zeit wo ich was mit pc´s zutun hatte^^

Damals war für mich immer klar PC ist zum arbeiten und Konsolen zum zoggern.

Naja dann nun ziehe ich meinen rechner jeder konsole vor :D
 
das war vor meine zeit wo ich was mit pc´s zutun hatte^^

Damals war für mich immer klar PC ist zum arbeiten und Konsolen zum zoggern.

Naja dann nun ziehe ich meinen rechner jeder konsole vor :D

komisch als ich meine Dreamcast hatte zog ich die jedem PC vor , aber seit dem Wii Xbox und Ps3 auf dem Markt sind stimme ich dir zu *duck*

mfg F-4
 
Außerdem, ist dir die derzeitige High End Liga zu langsam? Wo liegt da also das Problem oder besser, wo liegt das Bedürfnis hier krampfhaft jedes Quentchen an Leistung raus zu quetschen wenn man auch so sehr gut fährt?
Und reiccht ein i7irgendwas xtreme nicht mehr?!
Hey, mir gings in dem Thread mehr um den theoretischen Teil, also das Wissen darüber. Ich habe nicht gesagt, dass mir die aktuelle CPU Reihe zu langsam ist, wovon ich hier spreche ist: Was könnte man in Zukunft noch bessern, ändern, wie ist Eure Meinung darüber etc. ;)
Cache ist ja auch nicht alles, bei weitem nicht. Und warum die Ausbeute ausbremsen nur um noch ein bisschen besser zu sein? Bringt ja nichts an Gewinn.
Eben genau das habe ich ja in meinen Einleitungpost geschrieben, dass früher der Cache noch spürbar zur Leistungsfähigkeit dazu bei getragen hat.

Ich komme nur auf das AthlonII/PhenomII-Beispiel zurück, es gibt da mehr Spiele, die wenig, oder gar keinen Nutzen aus dem zusätzlichen L3 Cache ziehen, als welche die davon merkbar profitieren. Bei Anwendungen sieht es etwas besser aus.
Im übrigen, desto größer der L1 und L2 Cache, desto länger dauern auch die Zugriffe, denn der Cache muss ja auch erst mal durchsucht werden. Großer Cache ist nicht gleich schnellerer Cache.
Tja, werden L1 & L2 Caches also erst mal stagnieren. Wenn man die Größe erhöht, werden sie langsamer, wenn man die Größe nicht ändert, können sie (im Verhältnis) wenig Daten fassen und der Fortschritt der Leistung stagniert.

Beim L3 Cache ähnlich:

Macht man ihn kleiner, wird er schneller, aber fasst weniger Daten. Macht man ihn größer kann er mehr Daten speicher, wird aber auch langsamer...

Ich hoffe ihr seht, was ich meine und damit sagen will. ;)
 
@PhenomII-Fan
Ich bin nicht so sehr in CPU-Architektur beandert und ich glaube nicht das du hier viele im Forum finden wirst die dir hier wirklich kompetente Aussagen geben können. Im Forum von 3DCenter wohl eher, aber da werden dir dann Dinge um die Ohren gehauen die man wirklich nur mit hohem Fachwissen versteht.

Stagnieren tut nichts. Es ist die Frage wie man in Zukunft mit dem Cache Sinvoller umgeht, das man die Sprungvorhersage verbessert, den Cache vielleicht noch flexiber gestaltet. Die Größe allein macht es nicht.
 
komisch als ich meine Dreamcast hatte zog ich die jedem PC vor , aber seit dem Wii Xbox und Ps3 auf dem Markt sind stimme ich dir zu *duck*

mfg F-4

Also die Dreamcast war ja wohl endgeil :ugly: ich hab meine ps1 auch jedem pc vorgezogen :D:D:D zu ps2 zeiten allerdings hatte ich schon einen pc.

Achja richtig am pc kleben geblieben bin ich aber mit cod 1 und uo :D
 
Ich denke auch, dass beim Core ix und gerade beim Phenom (II) es viel mehr gebracht hätte, den Level 2 Cache hoch zu halten/machen. Der war beim Core 2 Duo bzw. Quad am Ende megagroß und AMD konnte sich nicht absetzen. Jaja, interner Speichercontroller, aber Cache ist immer noch wesentlich schneller als RAM.
 
Das Problem beim PII ist, dass der L3-chache niedriger getaktet ist als der Core-Bereich.

Ich glaube sogar(bin mir nicht ganz sicher... muss mich da mal wieder einlesen) er läuft nur mit dem Takt Northbridge....

Deshalb brigt ein hoher NB takt auch mehr als ein hoher Prozessertakt......

lg
 
Zuletzt bearbeitet:
Das Problem beim PII ist, dass der L3-chache niedriger getaktet ist als der Core-Bereich.

Ich glaube sogar(bin mir nicht ganz sicher... muss mich da mal wieder einlesen) er läuft nur mit dem Takt Northbride....

Deshalb brigt ein hoher NB takt auch mehr als ein hoher Prozessertakt......

lg
Stimmt, dass könnte möglich sein. Ich bin mir auch fast sicher, dass der NB-Takt bei 1.8 oder 2.0 GHz liegt.

Wobei, bei AMD der Uncorebereich Northbrigde-Takt heißt und damit nicht wirklich die "echte" Northbrigde gemeint ist. ;) :schief:

Ich bin gerade dabei mir den Artikel über die mögliche Architektur des Bulldozers auf Planet3Dnow! durchzulesen [AMDs Bulldozer-Architektur - ein Puzzle zusammengesetzt - Prozessoren - Planet 3DNow!] - der wirklich sehr interessant ist.

Und ich denke, dass wir beim Bulldozer in Sachen Cache gute Fortschritte sehen können und ich meine weniger die Größe. ;)
 
Zurück