Ein Cache-Miss ist ein Ereignis, bei dem eine Anfrage eines Prozessors an einen Cache nicht erfolgreich ist. Er tritt auf, wenn ein Prozessor nach einem Teil der Daten in seinem Cache-Speicher sucht, dieser aber nicht gefunden wird. Infolgedessen muss der Prozessor nach den Daten im Hauptspeicher suchen, der langsamer ist als der Cache.
Es gibt mehrere Ursachen für Cache-Miss. Dazu gehört ein Konflikt, der dadurch entsteht, dass zwei Speicheranforderungen um dieselbe Cache-Zeile konkurrieren, eine Anforderung, die zu groß für den Cache ist, oder wenn ein Prozessor versucht, auf Daten zuzugreifen, die nicht im Cache gespeichert sind.
Cache Miss kann erhebliche Auswirkungen auf die Leistung eines Computersystems haben, da der Prozessor darauf warten muss, dass Daten aus dem Hauptspeicher abgerufen werden, der langsamer ist als der Cache. Dies kann zu erheblichen Verzögerungen bei der Reaktionszeit eines Prozesses führen.
Es gibt zwei Hauptarten von Cache-Fehlern: obligatorische und Kapazitäts-Fehler. Obligatorische Cache-Misses treten auf, wenn der Prozessor auf Daten zugreift, die nicht im Cache gespeichert sind. Capacity Cache Misses werden verursacht, wenn der Cache nicht groß genug ist, um die Datenanforderung zu bewältigen.
Cache-Fehlversuche können anhand der Anzahl der erfolglosen Anfragen gemessen werden. Dazu wird die Trefferquote (Hit-Rate) berechnet, d. h. das Verhältnis zwischen den erfolgreichen Anfragen und den gesamten Anfragen.
Cache-Fehlversuche können durch eine Vergrößerung des Cache oder durch eine Verringerung der Anzahl der Anfragen an den Cache verringert werden.
Zu den Hardware-Lösungen für Cache-Fehlabrufe gehört die Verwendung von Cache-Controllern und Cache-Speichern, die so konzipiert sind, dass sie zusammenarbeiten, um die Anzahl der Cache-Fehlabrufe zu verringern.
Softwarelösungen für Cache-Fehlabrufe umfassen die Optimierung des Codes, um die Anzahl der Speicheranforderungen zu verringern, oder die Verwendung von Softwaretechniken wie Prefetching, um die Anzahl der Cache-Fehlabrufe zu verringern.
Ein Cache-Miss ist ein Ereignis, bei dem eine Anfrage eines Prozessors an einen Cache nicht erfolgreich ist. Dies kann sich erheblich auf die Leistung eines Computersystems auswirken, da der Prozessor warten muss, bis er Daten aus dem Hauptspeicher abrufen kann, der langsamer ist als der Cache. Cache-Misses können durch eine Vergrößerung des Caches oder durch eine Verringerung der Anzahl der Cache-Anfragen reduziert werden. Zu den Hardware-Lösungen für Cache-Miss gehören Cache-Controller und Cache-Speicher, die so konzipiert sind, dass sie zusammenarbeiten, um die Anzahl der Cache-Misses zu verringern. Zu den Software-Lösungen für Cache-Miss gehören die Optimierung des Codes, um die Anzahl der Speicheranfragen zu verringern, oder die Verwendung von Software-Techniken wie Prefetching, um die Anzahl der Cache-Misses zu reduzieren.
Der Cache-Speicher wird auch als CPU-Speicher, Cache-RAM oder Prozessor-Cache bezeichnet.
Die Begriffe "Hit" und "Miss" beziehen sich auf den Erfolg oder Misserfolg einer Cache-Suche. Ein Hit liegt vor, wenn der Cache die angeforderten Daten enthält; ein Miss liegt vor, wenn der Cache die angeforderten Daten nicht enthält. Die Hit-Rate ist der Prozentsatz der Cache-Lookup-Anfragen, die zu einem Hit führen, während die Miss-Rate der Prozentsatz der Anfragen ist, die zu einem Miss führen.
Es gibt zwei Arten von Caching: Daten-Caching und Befehls-Caching. Daten-Caching wird verwendet, um Daten, auf die häufig zugegriffen wird, an einem schnell zugänglichen Speicherort zu speichern. Beim Befehls-Caching werden häufig genutzte Befehle an einem Speicherort mit schnellem Zugriff gespeichert.
Es gibt zwei Arten von Cache: interner und externer Cache. Der interne Cache befindet sich auf dem CPU-Chip und wird von der CPU zum Speichern häufig abgerufener Daten verwendet. Der externe Cache befindet sich außerhalb der CPU und wird vom System verwendet, um Daten zu speichern, auf die häufig zugegriffen wird.
CPU-Caches werden in der Regel nach ihrem Umfang kategorisiert, der durch die Ebene des Caches in der Speicherhierarchie bestimmt wird. Es gibt drei verschiedene Ebenen von Caches: L1, L2 und L3. Der L1-Cache ist der schnellste und kleinste Cache im System, während der L2-Cache langsamer und größer ist. Der L3-Cache ist der langsamste und größte Cache im System. Es gibt auch zwei Arten von Cache: Befehls-Cache und Daten-Cache. Der Befehls-Cache speichert Befehle, die die CPU ausführen muss, während der Daten-Cache Daten speichert, auf die die CPU zugreifen muss. Der L1-Cache ist in der Regel in zwei Caches unterteilt: den Befehls-Cache und den Daten-Cache.