die SpeicherhierarchieSpeicherarten:
- Register: innerhalb der CPU
- Cache:
- kleiner, schneller Speicher in der Nähe der CPU
- enthält aktuelle Daten und Befehle
- data cache, instruction cache
- Speicher (RAM): Physischer Speicher der in Blöcke (pages, Seiten) eingeteilt wird, die verschiedenen Prozessen zugeordnet sind
- E/A-Geräte: Geräte zur Nutzung von externen Speicher (z.B. Diskette, Festplatte, CD-ROM, ...)
Lokalitätsprinzip:
- wird auf einen bestimmten Speicherbereich zugegriffen, so erfolgt der nächste Zugriff mit hoher Wahrscheinlichkeit auf den gleichen Speicherbereich
- d.h. zuletzt genutzte Daten sollten im schnellsten Speicher gehalten werden
Cache ... Speicherzugriffsbeschleuniger, der die mittlere Zugriffszeit zum Hauptspeicher senkt
- CPU kann auf die Daten im Cache-RAM schneller zugreifen, als auf die Daten im normalen RAM
- Daten werden zuerst im Cache gesucht, dann im langsameren Hauptspeicher
zwei Arten:
- Level-1 Cache:
- auch: L1, 1st level, internal, primary
- interner Prozessor-Cache
- Datencache und Befehlscache getrennt
z.B.:
Prozessor Datencache Befehlscache Zugriff Intel P4 8 kB 12000 µOps CPU-Takt Intel PIII 16 kB 16 kB CPU-Takt AMD Athlon 64 kB 64 kB CPU-Takt Der P4 Befehlscache speichert nicht den Original-x86-Code, sondern fertig übersetzte Mikrooperationen (µOps). Wenn man bedenkt, dass beim P6 jede Mikrooperation 118 Bit benötigt, so belegen 12000 Mikrooperationen rund 177 kB Speicherplatz.
- Level-2 Cache:
- auch: L2, 2nd level, external, secondary
- externer Cache auf dem Motherboard oder einer Extraplatine
- SRAM (static RAM) kein Refresh der Speicherzellen notwendig!
z.B.:
Prozessor Bus Cache Zugriff Bandbreite Intel P4 256 Bit 256 kB CPU-Takt 48 GB/s Intel PIII 256 Bit 256 kB CPU-Takt 16 GB/s AMD Athlon 64 Bit 256 kB CPU-Takt 9,6 GB/s