Hinweis: Der folgende Artikel hilft Ihnen dabei: Was ist CPU-Cache-Speicher? L1-, L2- und L3-Cache erklärt
Wenn Sie ein Technikbegeisterter sind, haben Sie das Wort Cache möglicherweise in mehreren Zusammenhängen gehört. Ob Webbrowser oder Apps, Caches werden überall verwendet. Aber was hat ein Cache mit einer CPU zu tun? Kann es einen erheblichen Einfluss auf die Leistung Ihres Systems haben?
Wenn Sie sich ähnliche Fragen stellen, sind Sie hier genau richtig, denn in diesem Artikel werden wir darüber sprechen, was der Cache einer CPU alles ausmacht und ob er Ihr System schneller laufen lässt.
Vereinfacht ausgedrückt handelt es sich beim Cache-Speicher um einen erstaunlich schnellen, flüchtigen Speicher, der zur Bereitstellung von Daten für die CPU verwendet wird. Dieser Speicher wird auf der CPU selbst platziert und ist ein entscheidender Parameter für die Leistung eines Prozessors. Aber was macht den Cache-Speicher so schnell?
Um diese Frage zu beantworten: Es gibt einen grundlegenden Unterschied in der Art und Weise, wie Cache-Speicher und RAM hergestellt werden. Der Cache-Speicher verwendet SRAM (statisches RAM) zum Speichern von Daten, während RAM DRAM (dynamisches RAM) verwendet.
SRAM-Zellen verwenden Transistoren zum Speichern von Daten, während DRAM Kondensatoren und Transistoren zum Speichern von Daten verwendet. Aufgrund der Verwendung von Kondensatoren in DRAM-Zellen müssen diese häufig aufgefrischt werden, da Kondensatoren mit der Zeit Ladung verlieren. Während eines Aktualisierungszyklus kann nicht auf die Daten im RAM zugegriffen werden, wodurch dieser langsamer wird. Andererseits verliert SRAM keine Ladung und wird daher als statisches RAM bezeichnet.
Darüber hinaus wird Cache-Speicher auf dem CPU-Chip platziert. Dadurch kann die CPU schneller auf Daten zugreifen, je näher sie an der CPU platziert ist. Andererseits ist der RAM über das Motherboard mit der CPU verbunden, wodurch der RAM-Zugriff langsamer wird.
Betrachtet man alle Vorteile des Cache-Speichers, könnte man denken, dass man, wenn der Cache so schnell ist, ihn nicht einfach anstelle von RAM verwenden sollte. Das Problem bei SRAM besteht darin, dass es sehr teuer ist und im Vergleich zu RAM viel Platz auf dem Chip einnimmt. Aufgrund dieser großen Größe und Kosten des Cache-Speichers wird dieser in drei separate Blöcke unterteilt, nämlich L1-, L2- und L3-Cache.
Alle diese Caches sind unterschiedlich groß und arbeiten mit unterschiedlichen Geschwindigkeiten – mehr dazu im nächsten Abschnitt.
Lesen Sie auch: Was ist Cache-Partitionierung? Beeinträchtigt es Ihre Privatsphäre?
Bevor Sie verstehen, wie ein Cache funktioniert, ist es wichtig zu verstehen, warum er erforderlich ist. Der Hauptgrund für die Notwendigkeit von Caches liegt darin, dass der Systemspeicher nicht schnell genug für den Prozessor ist.
Um die Sache ins rechte Licht zu rücken: Eine heutige CPU arbeitet während eines Turbo-Boost-Zyklus mit einer Frequenz von 4 GHz. Während eines solchen Zyklus kann es Anweisungen in einer Viertelnanosekunde verarbeiten. Im Gegensatz dazu benötigt RAM, das Daten vorübergehend im System speichert, etwa 8,8 Nanosekunden, um Daten an den Prozessor zu senden.
Wenn man sich die Zahlen ansieht, erkennt man eine beträchtliche Lücke zwischen der Geschwindigkeit, mit der die Daten von der CPU verarbeitet werden, und der Geschwindigkeit, mit der der RAM sie an die CPU liefern kann. Um diese Lücke zu schließen, verwendet eine CPU einen speziellen Speichertyp, den sogenannten Cache-Speicher.
Lesen Sie auch: Was ist ein Festplattendefragmentierer? Kann es Ihren PC beschleunigen?
Wie im letzten Abschnitt erwähnt, ist der Cache-Speicher schnell, weist jedoch mehrere Nachteile auf. Um diese Nachteile zu überwinden, ist der Cache-Speicher auf der CPU in drei Ebenen unterteilt.
Der L1 ist der schnellste, aber kleinste aller Caches. Dieser Cache ist ebenfalls am nächsten zum Prozessor platziert und stellt der CPU Daten mit der höchstmöglichen Rate zur Verfügung. Als nächstes kommt der L2-Cache, der im Vergleich zum L1-Cache größer, aber langsamer ist. In Multiprozessor-CPUs sind die L1- und L2-Caches unabhängig von einem Prozessorkern, und der L1-Cache ist weiter in den Daten-Cache und den Befehls-Cache unterteilt.
Für die CPU steht ein weiterer Cache zur Verfügung, der zwar der größte von allen, aber auch der langsamste ist – der L3-Cache. Bei Multiprozessorsystemen wird der L3-Cache von den Prozessorkernen gemeinsam genutzt und in einigen Fällen außerhalb des Prozessorchips platziert.
Die Intel Core i7-10700K-CPU verfügt über einen 64 KB großen L1-Cache pro Kern, einen 256 KB großen L2-Cache und einen 16 MB großen gemeinsam genutzten L3-Cache. Die Größe des L3-Caches ist in den letzten Jahren drastisch gestiegen, die Größe des L1-Caches ist jedoch nur um wenige KB gestiegen.
Der Grund dafür ist, dass die CPU viel Zeit benötigt, um die Daten zu finden, wenn die Größe des L1-Caches zunimmt, wodurch der Zweck eines schnellen Caches zunichte gemacht wird. Darüber hinaus nimmt ein schneller L1-Cache viel Platz auf dem CPU-Chip ein, wodurch die Fläche für die Platzierung anderer Komponenten reduziert wird.
Lesen Sie auch: Was ist DNS-Cache und wie funktioniert er?
Wie bewegen sich Daten in Ihrem System?
Nachdem wir nun einen kurzen Überblick über die Verwendung von Caching-Systemen in modernen Maschinen erhalten haben, können wir uns ansehen, wie Daten in einem Computer fließen.
Der RAM- und Cache-Speicher Ihres Systems ist ein flüchtiges Speichersystem. Daher können sie keine Daten speichern, sobald der Strom ausgeschaltet ist. Daher sind für die Speicherung Ihrer Systemdaten nichtflüchtige Speichermedien wie Festplatten erforderlich.
Diese nichtflüchtigen Systeme verwenden Magnetplatten oder Flash-Speicher, um Daten zu speichern und Daten an den RAM zu senden, wenn ein Programm auf dem System geöffnet wird. Danach fordert die CPU den RAM auf, Daten in den Cache-Speicher zu übertragen; Diese Daten enthalten Dateien und Anweisungen, die vom Benutzer in Zukunft verwendet werden könnten oder von der CPU in Echtzeit benötigt werden.
Der L1-Cache ruft die Daten ab, an denen die CPU gerade arbeitet; Der L2-Cache speichert Dateien, die kürzlich vom Prozessor verwendet wurden und möglicherweise in Zukunft benötigt werden. Der L3-Cache speichert Daten, die mehrere Kerne zur Ausführung von Aufgaben nutzen könnten
Lesen Sie auch: Was ist DNS-Cache-Poisoning? Wie schützen Sie Ihren PC?
Was passiert, wenn sich keine Daten im Cache befinden?
Wir wissen, dass Daten vom Cache-Speicher an die CPU geliefert werden und wie wichtig ein Cache für eine CPU ist. Was passiert aber, wenn die von der CPU benötigten Daten nicht im Cache verfügbar sind?
Wenn so etwas passiert, spricht man von einem Cache-Miss und das System beginnt, nach den Daten zu suchen, die die CPU benötigt, und sie in den Cache zu verschieben. Es gibt drei Arten von Cache-Fehlern, die im System auftreten können, und zwar wie folgt.
- Befehls-Cache-Fehler: In diesem Fall enthält der L1-Befehlscache nicht den Befehl, der vom Prozessor ausgeführt werden muss. Dieser Cache-Fehler verursacht die größte Verzögerung, da die CPU keine Aufgabe ausführen kann, da sie nicht weiß, welche Anweisung sie ausführen soll. Wenn ein solcher Fehler auftritt, beginnt das System mit der Suche nach der Anweisung im RAM oder Hauptspeicher.
- Datenlesefehler: Wenn dieser Cache-Fehler auftritt, kann die CPU die Daten, mit denen sie arbeiten muss, nicht abrufen. Dies geschieht, wenn der L1-Datencache keine Daten enthält. Dieser Cache-Fehler hat mittlere Auswirkungen auf die Systemleistung, da die CPU mit anderen Daten arbeiten kann, bis das System die von der CPU benötigten Informationen abruft.
- Datenschreibfehler: Dabei können die vom Prozessor verarbeiteten Daten nicht in den Cache geschrieben werden; Dies kann passieren, wenn der L1-Datencache voll ist. Dieser Cache-Fehler verursacht die geringste Verzögerung, da die Daten vom Prozessor in einem Register gespeichert und später an den Cache gesendet werden können.
Lesen Sie auch: Was ist der Unterschied zwischen GPU und FPGA?
Cache-Speicher ist für jede CPU unerlässlich, aber wie viel davon benötigen Sie? Wie bereits erwähnt, bleibt die Größe des L1- und L2-Caches in den meisten Systemen gleich. Der einzige Cache, den Sie sich ansehen müssen, ist der L3-Cache. Ein größerer Cache bietet eine bessere Leistung.
Einige hochwertige CPU-Systeme können Cache-Größen von bis zu 64 MB haben, aber solche Cache-Größen sind zu kostspielig und werden in Serveranwendungen verwendet. Wenn Sie ein begeisterter Gamer sind und einen Multi-Core-Rechner betreiben, dann ist ein 16 MB Cache mehr als ausreichend für alle Ihre Anforderungen.
Lesen Sie auch: Wie erhalte ich den Google Maps-API-Schlüssel?