Daten-Cachespeicherblock-Freigabeanforderungen

Verfahren zum Verarbeiten von Daten in einem Datenverarbeitungssystem (100), das einen Prozessorkern (202) beinhaltet, der durch Cachespeicher (204; 230; 232) übergeordneter und untergeordneter Ebenen unterstützt wird, wobei das Verfahren aufweist:in Reaktion auf ein Ausführen eines Freigabebefehls...

Full description

Saved in:
Bibliographic Details
Main Authors Williams, Derek E, Ghai, Sanjeev, Starke, William J, Williams, Phillip G, Stuecheli, Jeff A, Guthrie, Guy L
Format Patent
LanguageGerman
Published 19.03.2020
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Verfahren zum Verarbeiten von Daten in einem Datenverarbeitungssystem (100), das einen Prozessorkern (202) beinhaltet, der durch Cachespeicher (204; 230; 232) übergeordneter und untergeordneter Ebenen unterstützt wird, wobei das Verfahren aufweist:in Reaktion auf ein Ausführen eines Freigabebefehls in dem Prozessorkern (202) Senden einer Freigabeanforderung von dem Prozessorkern (202) an den Cachespeicher (230; 232) der untergeordneten Ebene, wobei die Freigabeanforderung eine Zieladresse angibt, die einer Ziel-Cachespeicherzeile zugehörig ist;in Reaktion auf ein Empfangen der Freigabeanforderung in dem Cachespeicher (230; 232) der untergeordneten Ebene Ermitteln, ob die Zieladresse einen Treffer in dem Cachespeicher (230; 232) der untergeordneten Ebene erzielt; undin Reaktion auf ein Ermitteln, dass die Zieladresse einen Treffer in dem Cachespeicher (230; 232) der untergeordneten Ebene erzielt, Beibehalten der Ziel-Cachespeicherzeile in einem Daten-Array (302) des Cachespeichers (230; 232) der untergeordneten Ebene und Aktualisieren eines Ersetzungsreihenfolgefeldes (416) in einem Verzeichnis (308) des Cachespeichers (230; 232) der untergeordneten Ebene, sodass die Ziel-Cachespeicherzeile mit größerer Wahrscheinlichkeit in Reaktion auf einen nachfolgenden Cachespeicher-Fehltreffer in einer Kongruenzklasse, die die Ziel-Cachespeicherzeile beinhaltet, aus dem Cachespeicher (230; 232) der untergeordneten Ebene bereinigt wird,danach, in Reaktion auf einen Zugriff auf die Ziel-Cachespeicherzeile in dem Cachespeicher (230; 232) der untergeordneten Ebene vor dem Bereinigen der Ziel-Cachespeicherzeile aus dem Cachespeicher (230; 232) der untergeordneten Ebene, Unterlassen eines Aktualisierens des Ersetzungsreihenfolgefeldes (416). A data processing system includes a processor core supported by upper and lower level caches. In response to executing a deallocate instruction in the processor core, a deallocation request is sent from the processor core to the lower level cache, the deallocation request specifying a target address associated with a target cache line. In response to receipt of the deallocation request at the lower level cache, a determination is made if the target address hits in the lower level cache. In response to determining that the target address hits in the lower level cache, the target cache line is retained in a data array of the lower level cache and a replacement order field in a directory of the lower level cache is updated such that the target cache line is more likely to be evicted from the lower level cache in response to a subsequent cache miss.
Bibliography:Application Number: DE201310204417