Method and system for supplier-based memory speculation in memory subsystem of data processing system
    1.
    发明专利
    Method and system for supplier-based memory speculation in memory subsystem of data processing system 有权
    用于数据处理系统的存储器子系统中基于供应商的存储器规范的方法和系统

    公开(公告)号:JP2005174342A

    公开(公告)日:2005-06-30

    申请号:JP2004356060

    申请日:2004-12-08

    CPC classification number: G06F9/383 G06F9/3832 G06F9/3851 G06F12/0215

    Abstract: PROBLEM TO BE SOLVED: To provide a method and system for reducing apparent memory access wait time. SOLUTION: A data processing system includes one or more processing cores, a system memory having a plurality of rows of data storage apparatuses, and a memory controller which controls an access to the system memory and performs supplier-based memory speculation. In response to a memory access request, the memory controller directs an access to a selected row, in the system memory to service the memory access request. In order to reduce the access waiting time, immediately after the memory access, the memory controller speculatively directs that the selected row will continue to be energized following the acess, based on the history information in the memory speculation table, even after the access. COPYRIGHT: (C)2005,JPO&NCIPI

    Abstract translation: 要解决的问题:提供一种减少表观存储器访问等待时间的方法和系统。 解决方案:数据处理系统包括一个或多个处理核心,具有多行数据存储装置的系统存储器,以及控制对系统存储器的访问并执行基于供应商的存储器推测的存储器控​​制器。 响应于存储器访问请求,存储器控制器指导对系统存储器中的所选行的访问以服务存储器访问请求。 为了减少访问等待时间,在存储器访问之后,存储器控制器推测地指示即使在访问之后,基于存储器猜测表中的历史信息,所选行将在acess之后继续被通电。 版权所有(C)2005,JPO&NCIPI

    Daten-Cachespeicherblock-Freigabeanforderungen in einer Cachespeicherhierarchie mit mehreren Ebenen

    公开(公告)号:DE102013204414A1

    公开(公告)日:2013-10-02

    申请号:DE102013204414

    申请日:2013-03-14

    Applicant: IBM

    Abstract: In Reaktion auf ein Ausführen eines Freigabebefehls wird eine Freigabeanforderung, die eine Zieladresse einer Ziel-Cachespeicherzeile angibt, von einem Prozessorkern an einen Cachespeicher einer untergeordneten Ebene gesendet. In Reaktion darauf wird ermittelt, ob die Zieladresse einen Treffer in dem Cachespeicher der untergeordneten Ebene erzielt. In diesem Fall wird die Ziel-Cachespeicherzeile in einem Daten-Array des Cachespeichers der untergeordneten Ebene beibehalten, und es wird ein Ersetzungsreihenfolgefeld des Cachespeichers der untergeordneten Ebene so aktualisiert, dass die Ziel-Cachespeicherzeile mit größerer Wahrscheinlichkeit in Reaktion auf einen nachfolgenden Cachespeicher-Fehltreffer in einer Kongruenzklasse bereinigt wird, die die Ziel-Cachespeicherzeile beinhaltet. In Reaktion auf den nachfolgenden Cachespeicher-Fehltreffer wird die Ziel-Cachespeicherzeile durch eine Castout-Operation in den Cachespeicher der untergeordneten Ebene mit einer Kennzeichnung geschrieben, dass die Ziel-Cachespeicherzeile ein Ziel einer vorherigen Freigabeanforderung des Prozessorkerns war.

    Daten-Cachespeicherblock-Freigabeanforderungen

    公开(公告)号:DE102013204417B4

    公开(公告)日:2020-03-19

    申请号:DE102013204417

    申请日:2013-03-14

    Applicant: IBM

    Abstract: 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).

    Handling of Deallocation Requests and Castouts in System Having Upper and Lower Level Caches

    公开(公告)号:GB2502663A

    公开(公告)日:2013-12-04

    申请号:GB201303302

    申请日:2013-02-25

    Applicant: IBM

    Abstract: A deallocate request specifying a target address associated with a target cache line is sent from processor core to lower level cache; if the request hits, replacement order of lower level cache is updated such that the target is more likely to be evicted (e.g. making the target line least recently used [LRU]) in response to a subsequent cache miss. On a subsequent miss, the target line is cast out to the lower level cache with an indication that the line was deallocation request target (e.g. by setting a field in directory). The lower level cache may include load and store pipelines, with the deallocation request sent to the load pipeline. The deallocation may be executed at completion of dataset processing. Lower cache may include state machines servicing data requests, with retaining and updating performed without allocation of state machine/s to the request. A previous coherence state of the target may be retained. An interconnect fabric may connect processing units.

    Daten-Cachespeicherblock-Freigabeanforderungen in einer Cachespeicherhierarchie mit mehreren Ebenen

    公开(公告)号:DE102013204414B4

    公开(公告)日:2022-01-27

    申请号:DE102013204414

    申请日:2013-03-14

    Applicant: IBM

    Abstract: Verfahren zum Verarbeiten von Daten in einem Datenverarbeitungssystem (100), das einen Prozessorkern (202) beinhaltet, der durch Cachespeicher übergeordneter und untergeordneter Ebenen (204, 230, 232) unterstützt wird, wobei das Verfahren aufweist:in Reaktion auf ein Ausführen eines Freigabebefehls in dem Prozessorkern Senden einer Freigabeanforderung von dem Prozessorkern an den Cachespeicher der untergeordneten Ebene (902), wobei die Freigabeanforderung eine Zieladresse angibt, die einer Ziel-Cachespeicherzeile zugehörig ist;in Reaktion auf ein Empfangen der Freigabeanforderung in dem Cachespeicher der untergeordneten Ebene Ermitteln (904), ob die Zieladresse einen Treffer in dem Cachespeicher der untergeordneten Ebene erzielt;in Reaktion auf ein Ermitteln, dass die Zieladresse einen Treffer in dem Cachespeicher der untergeordneten Ebene erzielt, Beibehalten (910) der Ziel-Cachespeicherzeile in einem Daten-Array des Cachespeichers der untergeordneten Ebene und Aktualisieren eines Ersetzungsreihenfolgefeldes in einem Verzeichnis des Cachespeichers 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 der untergeordneten Ebene bereinigt wird; undin Reaktion auf den nachfolgenden Cachespeicher-Fehltreffer Schreiben der Ziel-Cachespeicherzeile durch eine Castout-Operation in den Cachespeicher der untergeordneten Ebene mit einer Kennzeichnung (922), dass die Ziel-Cachespeicherzeile ein Ziel einer vorherigen Freigabeanforderung des Prozessorkerns war,wobei die Castout-Operation beinhaltet:Übertragen einer Cast-in-Anforderung (1000) von dem Cachespeicher der untergeordneten Ebene zu einem Cachespeicher einer noch weiter untergeordneten Ebene, wobei die Cast-in-Anforderung die Kennzeichnung beinhaltet; undin Reaktion auf die Cast-in-Anforderung (1006) Festlegen (1008) eines Ersetzungsreihenfolgefeldes in einem Verzeichnis des Cachespeichers der noch weiter untergeordneten Ebene durch den Cachespeicher der noch weiter untergeordneten Ebene, sodass die Ziel-Cachespeicherzeile mit größerer Wahrscheinlichkeit aus dem Cachespeicher der noch weiter untergeordneten Ebene bereinigt wird (1010),wobei in Reaktion auf die Cast-in-Anforderung das Verfahren weiterhin aufweist:Festlegen der Kennzeichnung für die Ziel-Cachespeicherzeile in dem Verzeichnis des Cachespeichers der noch weiter untergeordneten Ebene durch den Cachespeicher der noch weiter untergeordneten Ebene.

    Data processing
    7.
    发明专利

    公开(公告)号:GB2502663B

    公开(公告)日:2014-07-30

    申请号:GB201303302

    申请日:2013-02-25

    Applicant: IBM

    Abstract: In response to executing a deallocate instruction, a deallocation request specifying a target address of a target cache line is sent from a processor core to a lower level cache. In response, a determination is made if the target address hits in the lower level cache. If so, the target cache line is retained in a data array of the lower level cache, and a replacement order field of the lower level cache is updated such that the target cache line is more likely to be evicted in response to a subsequent cache miss in a congruence class including the target cache line. In response to the subsequent cache miss, the target cache line is cast out to the lower level cache with an indication that the target cache line was a target of a previous deallocation request of the processor core.

    Daten-Cachespeicherblock-Freigabeanforderungen

    公开(公告)号:DE102013022610B4

    公开(公告)日:2025-01-30

    申请号:DE102013022610

    申请日:2013-03-14

    Applicant: IBM

    Abstract: 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:automatisches Einfügen eines Freigabebefehls durch einen Compiler (500) in einen Programmcode, der durch den Prozessorkern (202) ausgeführt wird, wobei das automatische Einfügen beinhaltet, dass der Compiler (500) den Freigabebefehl in Reaktion auf ein Erkennen eines Endes einer Verarbeitung eines Datensatzes automatisch in den Programmcode einfügt,Ausführen des Freigabebefehls durch den Prozessorkern (202) bei Abschluss des Verarbeitens eines Datensatzes, der eine Ziel-Cachespeicherzeile und eine Vielzahl sonstiger Cachespeicherzeilen beinhaltet, um das Bereinigen des Datensatzes aus dem Cachespeicher (230; 232) der untergeordneten Ebene zu unterstützen,in Reaktion auf ein Ausführen des 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 der 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.

    Handling of Deallocation Requests in System Having Upper and Lower Level Caches

    公开(公告)号:GB2502662A

    公开(公告)日:2013-12-04

    申请号:GB201303300

    申请日:2013-02-25

    Applicant: IBM

    Abstract: A deallocate request specifying a target address associated with a target cache line is sent from processor core to lower level cache; if the request hits the replacement order of the lower level cache is updated such that the target is more likely to be evicted (e.g. making the target line least recently used [LRU]) in response to a subsequent cache miss. The replacement order may not be updated with further accesses to target cache line prior to eviction. The lower cache may include load and store pipelines, with deallocation requests sent to the load pipeline. The deallocate instruction may be executed at completion dataset processing, and may be sent to lower level cache regardless of hitting in the upper cache. Lower cache may include state machines servicing data requests, with retaining and updating performed without allocation of state machine/s to the request. A compiler may insert the deallocation instruction into program code executed by the processor core, in response to the detection of an end of dataset processing. An interconnect fabric may couple the processing units.

Patent Agency Ranking