Zum 3DCenter Forum
Inhalt




Deaktivierte Level2-Caches bei AMD und Intel

18. November 2004 / von BlackBirdSR / Seite 3 von 3


Als kontrastreiches Gegenbeispiel lassen sich hier GPUs, also die Chips der Grafikchip-Entwickler, oder der UltraSPARC-IV von Sun anführen. Der momentane UltraSPARC-IV ist eine riesige DualCore CPU ohne Level2-Cache. Nahezu der gesamte Chip besteht aus Logik. Ein Defekt führt fast sicher zum Ausfall eines der Kerne - und es gibt nichts, was Sun dagegen tun könnte.

Aber auch Intel kann mit einem Logikmonster aufwarten. Der Prescott besitzt zwar 1 MB Level2 Cache, dieser ist jedoch ausgesprochen klein verglichen mit dem Kern selbst. Besser sieht das Verhältnis bei der Pentium 4 Extreme Extreme Edition, dem Pentium-M oder dem nachfolgend zu sehenden Foto des Opteron-Prozessors aus.


     
Vergleich zwischen Prescott (links) und Opteron (rechts)


Einige CPUs als auch GPUs von nVidia und ATi erreichen also enorme Flächenausmaße. Das Problem wird dadurch natürlich intensiviert. Bei DualCore CPUs kann es sich lohnen, den beschädigten Kern abzuschalten. Bei GPUs besteht bekanntlich die Möglichkeit, zusammenhängende Pixel-Pipelines zu deaktivieren.

Intels Itanium 2 werden zuweilen mit 6 MB oder 9 MB an Level3-Cache auf dem DIE gefertigt. Auch hier zeigt sich Redundanz als einer der wichtigsten Maßnahmen gegen Defekte. Natürlich kann man somit fehlerhafte Chips als 3-MB-Modelle verkaufen. Aber selbst diese 3 MB überschatten die 512 kB oder 1 MB Level2-Cache heutiger Desktop-CPUs. Zukünftige Itanium Prozessoren werden sogar mit 24 MB Cache antreten. Wären die Defekte in diesen Transistoren-Monstern groß genug, um die Produktion dieser Prozessoren ernsthaft zu gefähren, würde man diese Vorhaben sicherlich gar nicht antreten können - was im Umkehrschluß auch heißt, daß heutige Desktop-Prozessoren mit Cache-Größen von 512 kB und 1 MB kaum mit einer hohen Defektdichte kämpfen können.

Auf der technischen Seite verringert sich im übrigen beim Abschalten des Caches nicht einmal spürbar die Leistungsaufnahme des Prozessors. Der Cache wird in der Regel weiterhin mit einem Taktsignal versorgt, und das schluckt ebenfalls Leistung. Ansonst gibt er sich natürlich arbeitslos.

Mit diesem Wissen bleiben eigentlich hauptsächlich die bereits erwähnten marktwirtschaftliche Gründe für das Deaktivieren der Level2-Caches bei einigen der heutigen Desktop-Prozessoren. Es muss schlicht günstiger sein, den Cache einfach teilweisse abzuschalten, als einen eigenen Kern für die geringere Menge an Cache zu fertigen.

Denn es bedeutet für die Hersteller einen gehörigen Zusatzaufwand, eine bestehende CPU noch einmal, ohne einen Teil des Level2-Cache, zu fertigen. Für die Fertigung werden eigene Fotolithographiemasken benötigt, nach ihrem Vorbild entsteht dann die neue CPU. Die Prozessschritte selbst laufen dann getrennt von den anderen Kernen ab. Das heißt, sie müssen teilweise separat davon betreut werden. Zudem besitzt auch die größte Fertigungsanlage eine begrenzte Kapazität. Viele verschiedene Kerne zu fertigen, führt zu alles anderem als optimalen Ergebnissen.

Besonders für AMD ist dies von großer Bedeutung. Natürlich fertigt man gegenüber Intel nur auf kleineren 200mm Wafern und ist damit auf kleinere Kerne angewiesen, um mehr fertigen zu können. Zugleich besitzt man aber auch nur eine Halbleiteranlage (Fab30 Dresden) und genau einmal Personal dafür. Was AMD demnach dringend braucht, ist maximale Flexibilität. Wie wir uns alle vorstellen können, dürfte eine gewichtige Fehlkalkulation gehörige Verluste für AMD bedeuten. Fällt man zu weit hinter Intel zurück, wäre zudem recht schnell vieles von dem verloren, was man sich seit Jahren erkämpft hat.

Es macht zudem generell immer Sinn, sich schnell an eine neue Marktsituation anpassen zu können, anstatt starr für jedes Marktsegment extra Kerne zu fertigen. Ähnliches geschieht schon seit Jahren bei der Festlegung der Taktraten. Oftmals sind CPUs in der Lage, höhere Taktraten zu erreichen, als ihre Bezeichnung vermuten lässt. Die hohe Nachfrage nach niedrig getakteten Modellen bei gleichzeitig gut laufender Produktion von hoch getakteten Modellen macht in vielen Fällen eine tiefere Einstufung eines produzierten Prozessors nötig. Effizienter kann man kaum auf eine Veränderung der Nachfrage reagieren.

Beim Level2-Cache dürfte es sich ähnlich verhalten. Besonders AMD musste zu Beginn seiner K8-Erfolgsgeschichte mit Kontern von Intel rechnen. Zusätzlich zu Clawhammer (Athlon 64) und Sledgehammer (Opteron) noch weitere Kerne zu fertigen, hätte fatale Folgen, sollten sich diese als zu langsam erweisen.

Bei Intel gestaltet sich das natürlich anders: Mit Unmengen an Kapazität und hohen Gewinnmargen, kann man sich eher den umgedrehten Weg leisten. Und so wurden und werden aus Top-Produkten wie dem Pentium 4 letztlich Celeron-Prozessoren. Doch sinkt die Nachfrage nach Celerons, hat man zu keinem Zeitpunkt in stillstehenden Produktionsanlagen noch Berge von dann unnützen LowCost-Produkten herumliegen, die einem niemand mehr abnimmt.


   CPUs mit deaktivierten Level2-Caches

Bisher ging es um Redundanz, Fertigung und marktwirtschaftliche Gründe. Der ein oder andere fragt sich jedoch vielleicht, welche CPUs nun letztlich davon betroffen sind und wie man diese Level2-Caches eventuell wieder reaktiviert.

Als Vorreiter des Deaktivierens von Level2-Cache dürfe sich Intels Celeron II ab 533 MHz rühmen. Intel nutze die Coppermine-Kerne der Pentium III Prozessoren und deaktivierte die Hälfte des Level2-Caches. Der Käufer musste mit einem Performanceverlust rechnen, bekam dafür aber einen aktuellen Core inklusive SSE auch bei LowCost-Modellen.

Die heutigen Celerons auf Pentium-4-Basis stammen ebenfalls direkt von ihren großen Brüdern ab. Von den 256 kB Level2-Cache des Williamette-Cores blieben 128 kB für den ersten Celeron auf Pentium-4-Basis übrig. Gleiches gilt für die bis vor kurzem noch aktuellen Celerons auf Northwood-Basis, nur das es dort 128 kB von ursprünglich 512 kB sind. Die neuen Celeron-D Modelle auf Prescott-Basis können immerhin 256 kB Level2-Cache vorweisen (wieder eine Viertelung des original 1 MB großen Level2-Caches beim Pentium 4 Prescott) und hängen ihre schwachen Vorgänger in nahezu allen Belangen ab.

Anders musste AMD die Sache für ihre LowCost-CPU handhaben. Den Athlon XP Thunderbird um die Hälfte seiner 256 KB großen Level2-Caches zu berauben, hätte den Duron als seinerzeitige LowCost-CPU von AMD nicht genügend verlangsamt. Aufgrund der großen Level1-Caches bei AMD wirkt sich ein kleinerer Level2-Cache doch deutlich geringer auf die Performance aus als bei den Intel-Prozessoren. AMD hatte also die Möglichkeit den Duron mit nur 64 kB Level2-Cache auszustatten und trotzdem noch hohe Performance zu erzielen. Dafür lohnt es sich dann sogar einen eigenen Kern zu fertigen - eine Ausnahme beim "Sport" des Cache-Deaktivierens für LowCost-CPUs.

Daneben findet man bei AMD beim Athlon XP Thorton, Sempron und Athlon 64 3000+ überall teilweise deaktivierte Level2-Caches vor. Allen "AMDlern" gemein ist die Abschaltung genau der Hälfte des Caches. Intel hingegen deaktiviert bei seinen Celerons generell sogar 3/4 des ursprünglichen Caches. Wie die nachstehenden Die-Fotos zeigen, sind die Caches von AMD dazu in zwei Bereiche aufgeteilt, die Pentium 4 Prozessoren besitzen dafür vier Bereiche, von denen wohl jeder einzeln deaktiviert werden kann.


     
Vergleich zwischen Northwood (links) und Opteron (rechts)


Bleibt die Frage, ob solche Caches wieder aktivierbar sind? Nicht wenige träumen davon, aus ihrem Celeron einen vollwertigen Pentium zu machen. Das wird allerdings auch ein Traum bleiben. Egal ob Caches nun per Laser physikalisch vom Rest getrennt werden, oder einfach bei der ersten Initialisierung übersprungen werden, für die spätere Reaktivierung ist es wohl meist zu spät. Allenfalls bei AMD mag das in einzelnen Fällen möglich sein. Dort scheinen Caches nicht physikalisch abgetrennt zu werden und können durch Änderungen an den sogenannten Brücken wieder vervollständigt werden. Es besteht natürlich keine Garantie, dass diese dann auch funktionieren.

Am Ende wollen wir natürlich nicht ausschließen, dass defekte Caches mitunter deaktiviert werden, um wirklich die CPU zu retten. Es kann durchaus passieren, dass weder die Redundanz greift, noch der Logikanteil beschädigt ist. Dies dürfte jedoch bei der Mehrheit der CPUs kaum der Grund für die Existenz von Prozessoren mit teilweise deaktivierten Level2-Caches sein.






Kommentare, Meinungen, Kritiken können ins Forum geschrieben werden - Registrierung ist nicht notwendig Zurück / Back 3DCenter-Artikel - Index Home

Shortcuts
nach oben