Home

CacheGrößen

Cachegrößen bezeichnen die Kapazität eines Cache-Speichers und geben an, wie viel Daten der Cache gleichzeitig speichern kann. In modernen Rechnerarchitekturen existieren mehrstufige Cache-Hierarchien (L1, L2, L3), deren Größen stark variieren. Größere Cachegrößen erhöhen tendenziell die Trefferwahrscheinlichkeit und können die Gesamtsleistung verbessern, gehen aber oft mit längeren Zugriffszeiten, größerer Chipfläche und höherem Energieverbrauch einher.

Die Größe ergibt sich aus der Anzahl der Cachezeilen multipliziert mit der Zeilengröße. Wesentliche Designentscheidungen betreffen

Miss-Typen bestimmen die Performance in Abhängigkeit von Cachegrößen: Erstzugriffs-Misses (Kaltstarts), Kapazitäts-Misses und Konflikt-Misses. Größere Caches senken

In Praxis unterscheiden sich Cachegrößen stark nach Anwendungsgebiet: Desktop- und Server-CPUs besitzen typischerweise größere Caches als

---

die
Assoziativität
(direkt
abgebildet,
2-,
4-,
8-Weg)
sowie,
ob
der
Cache
inklusiv
oder
exklusiv
zur
nächsttiefen
Ebene
ist.
Die
Blockgröße
(Zeilengröße)
beeinflusst
die
räumliche
Lokalität
und
die
Polution
des
Caches:
Größere
Zeilen
verringern
Misses
durch
räumliche
Nachbarschaft,
erhöhen
jedoch
das
Risiko,
unnötige
Daten
zu
laden.
allgemein
die
Miss-Rate,
können
aber
die
Latenz
pro
Zugriff
erhöhen.
Schreibstrategien
wie
Write-Through
oder
Write-Back
sowie
Write-Allocate
beeinflussen,
wie
Schreibzugriffe
die
effektive
Cacheausnutzung
und
die
Speicherbandbreite
beeinflussen.
Dazu
kommen
Cache-Kohärenzprotokolle
(z.
B.
MESI),
die
Konsistenz
bei
Mehrkernprozessoren
sicherstellen.
Embedded-Systeme
oder
mobile
Geräte.
Auch
GPU-Architekturen
weisen
eigene
Cachegrößenvehikel
auf,
die
auf
hohe
Parallelität
optimiert
sind.
Die
Wahl
der
Cachegrößen
hängt
von
Workloads,
Energie-
und
Flächenbeschränkungen
sowie
vom
gewünschten
Gleichgewicht
zwischen
Latenz
und
Durchsatz
ab.