Home

Speicherhierarchie

Die Speicherhierarchie ist ein konzeptionelles Modell der Computerspeicherorganisation, das mehrere Schichten unterschiedlicher Zugriffszeiten, Kapazitäten und Kosten umfasst. Ziel ist es, langsamer zugängliche Speicherbereiche durch schnellere Ebenen zu puffern, sodass der Prozessor Daten rasch verwenden kann. In modernen Systemen wird der Zugriff typischerweise über eine aufsteigende Hierarchie realisiert: CPU-Register, L1-, L2- und L3-Caches, der Hauptspeicher (RAM) und der Sekundärspeicher (Festplatten oder SSDs). Zusätzlich können Grafikspeicher (VRAM) und nichtflüchtiger Speicher (NVM wie Flash oder Optane) als weitere Ebenen betrachtet werden.

Die Funktionsweise beruht auf dem Lokalitätsprinzip: Programme neigen dazu, auf denselben Daten oder angrenzende Daten innerhalb

Die Speicherhierarchie beeinflusst Gesamtsystemleistung und Softwaredesign: Compiler- und Betriebssystemoptimierungen zielen darauf ab, Lokalisität zu erhöhen, während

kurzer
Zeiträume
zuzugreifen.
Die
Caches
speichern
Kopien
der
verwendeten
Daten,
um
spätere
Zugriffe
zu
beschleunigen.
Wird
eine
angeforderte
Information
nicht
im
schnelleren
Speicher
gefunden
(Cache-Miss),
wird
sie
aus
einer
langsameren
Ebene
nachgeladen.
Ersatzpolitiken
(z.
B.
LRU)
entscheiden,
welche
Cache-Einträge
entfernt
werden.
Der
Zugriff
auf
den
Hauptspeicher
erfolgt
oft
mithilfe
einer
virtuellen
Speicherverwaltung,
die
Seiten
in
den
RAM
lädt
und
mittels
Translation
Lookaside
Buffer
(TLB)
Adressen
übersetzt.
Anwendungen
und
Algorithmen
so
gestaltet
werden,
dass
sie
Caches
effizient
nutzen.
Mit
zunehmender
Größe
und
Geschwindigkeit
der
Ebenen
verschiebt
sich
das
Gleichgewicht
zwischen
Kosten,
Kapazität
und
Geschwindigkeit
stetig
weiter
zugunsten
schnellerer,
teurerer
Speicherbausteine.