Was ist der L0-Cache?

CPUs sind unglaublich komplexe Bestien. Es gibt viele miteinander verbundene Teile, die alle perfekt zusammenarbeiten müssen, um das Leistungsniveau zu erreichen, das wir sehen. Eines der wichtigsten Merkmale einer CPU ist der Cache. Es ist kein auffälliges Feature. Es wird nicht so gut geworben wie die Kernanzahl oder die Peak-Boost-Frequenz. Es ist jedoch entscheidend für die Leistung.

Warum cachen?

Moderne CPUs sind unglaublich schnell. Sie führen jede Sekunde mehr als fünf Milliarden Operationen durch. Es ist schwierig, die CPU mit Daten zu versorgen, wenn sie so schnell arbeitet. Das RAM hat genug Kapazität, um die CPU mit Daten zu versorgen. Dank sehr hoher Bandbreiten kann er sogar im Sekundentakt Daten übertragen. Das ist aber nicht das Problem. Das Problem ist die Latenz.

RAM kann sehr schnell reagieren. Das Problem ist, dass „sehr schnell“ eine lange Zeit ist, wenn Sie jede Sekunde fünf Milliarden Dinge tun. Selbst der schnellste RAM hat eine Latenz von über 60 Nanosekunden. Auch hier klingen 60 Nanosekunden wie keine Zeit. Das Problem ist, dass, wenn die CPU mit 1 GHz läuft, es 1 ns dauern würde, um einen Zyklus abzuschließen. Bei High-End-CPUs mit 5,7 GHz ist das ein Zyklus alle 175 Pikosekunden. Wie sehen diese 60 Nanosekunden Latenz jetzt aus? Das sind 342 Latenzzyklen.

Diese Art von Latenz wäre ein Killer für jede CPU-Leistung. Um das zu umgehen, wird ein Cache verwendet. Der Cache wird auf dem CPU-Chip selbst platziert. Es ist auch viel kleiner als RAM und verwendet eine andere Struktur, SRAM statt DRAM. Dadurch reagiert es viel schneller als der Hauptsystem-RAM. Der Cache ist normalerweise gestuft, wobei L1, L2 und L3 verwendet werden, um die Ebenen zu bezeichnen, die sich immer weiter von den CPU-Kernen entfernen. Niedrigere Ebenen sind schneller, aber kleiner. L1 kann eine Latenz von vier oder fünf Taktzyklen haben, viel besser als 342.

Aber einige CPUs erwähnen ein L0?

Die Terminologie für L1, L2 und L3 ist ziemlich standardisiert. Das vage Verständnis dessen, was sie bedeuten und tun, ist selbst bei CPU-Anbietern relativ verbreitet. Das liegt daran, dass sie von der Material- und Elektrophysik bestimmt werden; kann sich nicht viel ändern. Sie können einen schnellen Cache oder einen großen Cache haben, nicht beides. Es muss größer sein, wenn Sie einen Cache zwischen mehreren Kernen teilen. Zu diesem Zweck neigen L1 und L2 dazu, kernspezifisch zu sein. Der größere L3-Cache wird in der Regel von einigen oder allen Kernen auf der CPU oder dem Chiplet gemeinsam genutzt.

Wie Sie wahrscheinlich erraten können, ist L0 mit Caching verwandt, wurde aber nachträglich in das Namensschema geschoben. Es hilft jedoch nicht zu verstehen, was es bedeutet. Einiges kann man sich aber sicher schon denken. Es wird auf einen Kern beschränkt sein, es wird winzig sein und es wird schnell sein. Der andere Name, unter dem es läuft, kann ein wenig helfen; das ist Micro-Op-Cache.

Anstatt Daten aus dem Speicher oder vollständige Anweisungen zwischenzuspeichern, speichert L0 Mikrooperationen zwischen. Wie wir kürzlich beschrieben haben , ist ein Micro-Op ein Merkmal moderner CPUs. Anweisungen in x86 und anderen ISAs sind groß, komplex und schwierig, effizient in eine Pipeline zu passen. Sie können sie viel effizienter leiten, wenn Sie sie in einzelne Micro-Ops zerlegen. In einigen Fällen können Sie sogar mehrere Micro-Ops, sogar aus verschiedenen Anweisungen, in einem einzigen Micro-Op gruppieren, um sowohl eine Leistungsverbesserung als auch eine Leistungsreduzierung zu erreichen.

CPU-Architektur mit Micro-Op-Cache

Um eine Anweisung auszuführen, dekodiert eine moderne CPU sie. Dies beinhaltet das Aufteilen des Befehls in seine einzelnen Mikrooperationen und das Bestimmen der Speicherorte, auf die verwiesen werden sollte. Viele Software verwendet regelmäßig ähnliche Funktionen und kann häufig denselben Code in einer Schleife oder aus einer aufgerufenen Funktion wiederverwenden. Dadurch kann die genaue Anleitung immer wieder aufgerufen werden. Das bedeutet dann, dass immer wieder die gleichen Micro-Ops aufgerufen werden. Und wenn die gleichen Micro-Ops wiederholt benötigt werden, können sie zwischengespeichert werden. Das Caching von Micro-Ops kann die Belastung der Befehlsdecoder verringern, den Stromverbrauch verringern oder dazu beitragen, die Pipeline schneller zu füllen.

Der Cache muss zwar klein gehalten werden, aber wenn er sorgfältig verwaltet wird, kann auf ihn mit einer einzigen oder sogar ohne Latenzzeit zugegriffen werden. Dies kann ausreichen, um die Notwendigkeit zu vermeiden, die 4-Zyklen-Latenz zum L1-Cache zu übernehmen, und kommt ohne Cache-Miss-Penalty.

Abschluss

L0-Cache ist ein anderer Name für den Micro-Op-Cache. Es kann ein Teil moderner CPUs sein, die Mikrooperationen verwenden. Es enthält normalerweise einige tausend Einträge und hat Kapazitäten, die in Anzahl von Einträgen und nicht in Bytes angegeben sind. Auf L0 kann schneller zugegriffen werden als auf L1, typischerweise mit einer Latenz von 1 oder 0 Zyklen. Das Zwischenspeichern von Mikrooperationen reduziert die Belastung der Befehlsdecodierer, insbesondere in Code, der Schleifen oder Funktionen gut nutzt.



Leave a Comment

So klonen Sie eine Festplatte

So klonen Sie eine Festplatte

Im modernen digitalen Zeitalter, in dem Daten ein wertvolles Gut sind, kann das Klonen einer Festplatte unter Windows für viele ein entscheidender Prozess sein. Dieser umfassende Leitfaden

Wie behebt man, dass der Treiber WUDFRd unter Windows 10 nicht geladen werden konnte?

Wie behebt man, dass der Treiber WUDFRd unter Windows 10 nicht geladen werden konnte?

Wird beim Booten Ihres Computers die Fehlermeldung angezeigt, dass der Treiber WUDFRd nicht auf Ihren Computer geladen werden konnte?

So beheben Sie den NVIDIA GeForce Experience-Fehlercode 0x0003

So beheben Sie den NVIDIA GeForce Experience-Fehlercode 0x0003

Tritt auf Ihrem Desktop der NVIDIA GeForce-Fehlercode 0x0003 auf? Wenn ja, lesen Sie den Blog, um herauszufinden, wie Sie diesen Fehler schnell und einfach beheben können.

Warum lässt sich mein Chromebook nicht einschalten?

Warum lässt sich mein Chromebook nicht einschalten?

Erhalten Sie Antworten auf die Frage: Warum lässt sich mein Chromebook nicht einschalten? In diesem hilfreichen Leitfaden für Chromebook-Benutzer.

So ändern Sie das Zifferblatt einer Fitbit Versa 4

So ändern Sie das Zifferblatt einer Fitbit Versa 4

Ändere das Zifferblatt deiner Fitbit Versa 4, um deiner Uhr jeden Tag kostenlos ein anderes Aussehen zu verleihen. Sehen Sie, wie schnell und einfach es geht.

Roomba stoppt, bleibt hängen und dreht sich um – Reparieren

Roomba stoppt, bleibt hängen und dreht sich um – Reparieren

Beheben Sie ein Problem, bei dem Ihr Roomba-Roboterstaubsauger anhält, hängenbleibt und sich ständig umdreht.

So ändern Sie die Grafikeinstellungen auf Steam Deck

So ändern Sie die Grafikeinstellungen auf Steam Deck

Das Steam Deck bietet ein robustes und vielseitiges Spielerlebnis direkt auf Knopfdruck. Allerdings, um Ihr Spiel zu optimieren und das bestmögliche zu gewährleisten

Was ist isolationsbasierte Sicherheit?

Was ist isolationsbasierte Sicherheit?

Wir werden uns mit einem Thema befassen, das in der Welt der Cybersicherheit immer wichtiger wird: Isolationsbasierte Sicherheit. Dieser Ansatz zu

How to Use Auto Clicker for Chromebook

How to Use Auto Clicker for Chromebook

Today, were going to delve into a tool that can automate repetitive clicking tasks on your Chromebook: the Auto Clicker. This tool can save you time and

Was ist SMPS?

Was ist SMPS?

Erfahren Sie, was SMPS ist und welche Bedeutung die verschiedenen Effizienzbewertungen haben, bevor Sie sich für ein SMPS für Ihren Computer entscheiden.