CN101065735A - 本地存储器数据的一致性高速缓存 - Google Patents

本地存储器数据的一致性高速缓存 Download PDF

Info

Publication number
CN101065735A
CN101065735A CNA2005800401769A CN200580040176A CN101065735A CN 101065735 A CN101065735 A CN 101065735A CN A2005800401769 A CNA2005800401769 A CN A2005800401769A CN 200580040176 A CN200580040176 A CN 200580040176A CN 101065735 A CN101065735 A CN 101065735A
Authority
CN
China
Prior art keywords
processor
local storage
data block
data
cache
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2005800401769A
Other languages
English (en)
Inventor
J·霍格布吕格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of CN101065735A publication Critical patent/CN101065735A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • G06F12/0826Limited pointers directories; State-only directories without pointers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)

Abstract

一种多处理器系统,包括多个处理器21至25,系统总线30和主系统存储器40。每个处理器21至25连接到各自的高速缓冲存储器41至45,而每个高速缓冲存储器41至45又连接到系统总线30。高速缓冲存储器41至45存储各个处理器21至25常用的数据或者指令的拷贝,从而消除处理器21至25在每个读或者写操作期间访问主系统存储器40的需求。处理器25连接到具有多个数据块(未示出)的本地存储器50。根据本发明,本地存储器50具有用于连接到其各自的处理器25的第一端口51。另外,本地存储器50具有连接到系统总线30的第二端口52,从而允许其它处理器21至24中的一个或者多个来访问本地存储器50。本发明使用比高速缓冲存储器更便宜、更快、具有更可预测的定时的本地存储器设备实现了本地存储器数据的一致性高速缓存。

Description

本地存储器数据的一致性高速缓存
技术领域
本发明涉及具有本地存储器的处理器系统,具体而言涉及在多处理器系统中本地存储器数据的一致性高速缓存。
背景技术
一直存在着提高处理器系统的速度和使它们处理更大量数据的能力的驱动力。为了实现提高速度的目的,并行技术得到了更多的应用,利用并行技术将复杂的程序作为多个复杂度较低的例程同时运行来执行以提高性能。另一种用来提高速度的手段是提供高速缓冲存储器。
高速缓冲存储器通过将常用的一部分数据和指令的拷贝从主系统存储器存储到紧耦合、低时延的高速缓冲存储器中来进行工作。这意味着被频繁访问的数据或指令是从高速缓冲存储器中获取的,从而避免了访问主系统存储器的需求。因此,每当发出新的读和写命令时,系统首先查询高速缓冲存储器,以确定信息是否存储在高速缓存中。如果信息在高速缓冲存储器中,就不需要访问主系统存储器,而可以更容易地执行命令或者访问数据。
高速缓冲存储器系统的本质是一种保证一个或者多个处理器高速缓存和主系统存储器本身中的数据拷贝之间的一致性的需求。一种确保一致性的方法是“MESI”协议,其包括每个高速缓存块的状态信息。所述状态信息包括指示高速缓存行(cache line)是否被修改(Modified)、共享(Shared)、独占(Exclusive)和无效(Invalid)(MESI)。
在MESI系统中,当未共享的高速缓存行被访问时,其被标记为“独占”(E)。其后的读将不会改变其状态,但是随后对该高速缓存行的写将其状态改变为“修改”(M)。如果多处理器系统中的另一处理器将高速缓存数据装载进其自身的高速缓存中,则高速缓存行被标记为“共享”(S)。如果处理器想向共享的高速缓存写数据,则必须向所有其它处理器发送无效命令,或者至少向所有其它具有所述共享数据的拷贝的处理器发送无效命令。在处理器能够从修改的高速缓存行中载入数据前,具有修改的高速缓存行的处理器必须将所述数据写回存储器中,并且将所述数据标记为共享(S)。对被标记为无效(I)的高速缓存行的任何读或者写均会导致高速缓存未命中(cache miss)。
以上介绍的协议,例如MESI协议,确保了高速缓冲存储器保持一致性,这使得它们在多处理器系统中对于软件是透明的。关于高速缓冲存储器和高速缓冲存储器一致性的进一步内容可以在出版物John L.Hennessy和David A.Patterson的Computer Architecture aQuantitative Approach(计算机体系结构一量化研究方法),2003,第三版中找到。
虽然高速缓冲存储器提供了上述优点,但是它们也具有与其它类型的存储器设备相比设计复杂、相对昂贵的缺点。例如,高速缓冲存储器需要比较器来检查标签与呈现的地址,以及需要选择器来选择匹配的方式。高速缓冲存储器还具有用于管理数据替换的最近最少使用(LRU)位,并且需要回拷(copyback)功能来管理修改数据的写回。高速缓冲存储器还由于高速缓冲存储器中位的访问方式,而比其它类型的存储器消耗更多的能量。进一步地,在高速缓存中数据命中或者未命中的方式取决于替换策略(典型地为LRU),其对于软件而言难于预测。
处理器系统,例如用于数字信号处理的处理器,还使用本地存储器作为提高处理速度的方式。本地存储器使得能够在处理器和本地存储器之间直接进行读和/或写操作,而不是和单独的主存储器,例如随机访问存储器(RAM)来进行。尽管对于访问本地存储器的特定处理器而言,本地存储器允许其处理速度提高,但对于多处理器系统其却未提供任何更多的优势。
本发明的目的是提供一种多处理器系统,其中提供本地存储器数据的一致性高速缓存。
发明内容
根据本发明的第一方面,提供了一种多处理器系统,包括:多个处理器,所述处理器中的一个或者多个具有关联的高速缓冲存储器;系统总线,用于连接所述多个处理器;与所述多个处理器中的一个相关联的本地存储器;其中所述本地存储器用于由其关联的处理器进行访问,还用于由所述多处理器系统中的所述多个处理器中的另外一个进行访问。
本发明的优点是提供具有可预测的定时特性的、快速的、低能秏的、廉价的本地存储器,同时优点还有使多处理器系统中的其它处理器也能访问所述本地存储器。
根据本发明的另一方面,提供了一种在多处理器系统中处理数据的方法,所述多处理器系统包括多个连接到系统总线的处理器,所述多个处理器中的至少一个具有高速缓冲存储器,所述方法包括以下步骤:提供本地存储器,所述本地存储器连接到关联的处理器;以及配置所述本地存储器使得其能够由与其关联的处理器直接访问,并且能够由其它处理器中的一个或者多个通过所述系统总线访问。
附图说明
为了更好地理解本发明,以及更清晰地示出其如何执行生效,将仅通过举例的方式来参照下面的附图,其中:
图1示出了根据本发明优选实施例的多处理器系统的概要视图;
图2示出了描述根据本发明的读操作的流程图;
图3示出了描述根据本发明的写操作的流程图。
具体实施方式
图1示出了根据本发明的多处理器系统1。多处理器系统1包括多个处理器21至25,系统总线30和主系统存储器40。每个处理器21至25连接到各自的高速缓冲存储器41至45,而每个高速缓冲存储器41至45又连接到系统总线30。如上所述,高速缓冲存储器41至45存储各个处理器21至25常用的数据或者指令的拷贝,从而处理器21至25在每个读或者写操作期间不需要访问主系统存储器40。
处理器25连接到具有多个数据块(未示出)的本地存储器50。根据本发明,本地存储器50具有用于连接到与其关联的处理器25的第一端口51。另外,本地存储器50具有连接到系统总线30的第二端口52,从而允许其它处理器21至24中的一个或者多个来访问本地存储器50。
注意,虽然优选实施例示出了处理器25除了连接到本地存储器50之外还连接到高速缓冲存储器45,但是应该注意,高速缓冲存储器45是可选的,处理器25可以仅简单地连接到本地存储器50。进一步地,还应该注意,虽然优选实施例中的多处理器系统显示为只有一个处理器25具有本地存储器50,但是应该理解,其它处理器21至24中的一个或者多个也能够连接到各自的本地存储器。
因此,应该理解,本地存储器50的第二端口52允许除了关联的处理器25以外的其它处理器21至24访问本地存储器50(虽然没有处理器25和本地存储器50之间的访问那么快)。
本发明允许其它处理器21至24以对软件透明的方式对本地存储器50中的数据进行高速缓存。这使得具有本地存储器和高速缓存一致性的系统更容易编程。
通过将第一和第二状态位与本地存储器50中的每个块相关联来使本地存储器50的一致性成为可能。优选地,在该系统中本地存储器中的每个数据块具有和高速缓存一致性粒度相同的大小(典型地为32或者64字节)。
第一状态位被定义为共享位,当系统中的另一处理器通过共享读命令读取所述块时其被置位。
第二状态位被定义为无效位,当系统中的另一个处理器通过独占读命令读取所述数据块或者向所述数据块发布升级命令时其被置位。
和本地存储器50关联的处理器25,即“拥有”本地存储器50的处理器25,只要访问其本地存储器50就检查共享和无效位。
图2示出了描述由处理器25对其本地存储器50执行的读操作的流程图。在步骤201中,处理器25检查本地存储器50中正被访问的数据块的无效位。如果无效位未被置位,则在步骤207处理器25简单地继续读操作。然而,如果无效位已被置位,则处理器25在步骤203向系统总线30发出一个高速缓存查询和降级命令。所述高速缓存查询和降级命令要求任何持有处于修改状态的数据块的处理器21至25将修改的数据块发送回本地存储器50。在步骤204接收到修改的数据块之后,无效位在步骤205被清零,共享位在步骤206被置位。然后在步骤207照常完成读操作。注意,共享位被置位是因为提供数据块的处理器21至25在其各自的高速缓冲存储器41至45中保存了处于共享状态的数据块的拷贝。由上所述,注意,处理器25还能够对其本地存储器中存储的数据进行高速缓存。这可以发生在不基于存储器地址而基于指令的操作码在本地和系统存储器之间进行选择的处理器中。
图3示出了描述了对本地存储器50的写操作的流程图。在步骤301中,进行写操作的处理器25检查正在写的数据块的无效位和共享位。在步骤302中,处理器25确定是否有其中一个位被置位。如果其中一个位被置位,则处理器25在步骤303向系统总线发出高速缓存查询和无效命令。所述高速缓存查询和无效命令要求在其各自的高速缓冲存储器41至45中缓存有数据块的处理器21至25无效所述数据块。
如果处理器21至25中的一个具有处于修改状态的数据块,则各个处理器在无效之前将修改的数据块写回本地存储器50。在修改的数据块被接收回本地存储器50之后,无效位在步骤307清零,并且在步骤308完成写操作。
应该理解,步骤304至306由具有处于修改状态的数据块的各个处理器来执行。
如果在步骤302中确定无效或共享位均未被置位,则写操作在步骤308照常继续。
数据的回拷(由于其是“被牺牲的”)导致了本地存储器中其数据块的无效位的重置。这是因为只要新的数据块被装载到数据高速缓存中,老数据就必须从该数据高速缓存中移除来给新数据留出空间。老数据就是所谓的被牺牲了。如果老数据已经被处理器修改了,则该数据必须被写回其源于的存储器,也就是回拷。
第一和第二状态位,也就是共享位和无效位,存储在数据最初存储的位置,而不是其被高速缓存的位置。换言之,第一和第二状态位被存储在本地存储器中,而不是高速缓冲存储器中。
“共享读”,“独占读”,“高速缓存查询和降级”,以及“高速缓存查询和无效”操作都是在支持高速缓存一致性的典型的总线协议中的命令。具体而言:
-共享读用于为了读数据而读数据。
-独占读用于为了修改数据而读数据。
-高速缓存查询和降级要求具有处于修改状态的数据的处理器将其改变回共享状态。
-高速缓存查询和无效要求在其高速缓存中具有数据的处理器将数据从高速缓存中移除。
上述本发明介绍了具有本地存储器的处理器如何结合到具有高速缓存一致性的系统中。其它的处理器可以在本地存储器中高速缓存数据而不必要求软件获知此信息。
进一步地,本发明的优点是提供了本地存储器数据的一致性高速缓存、本地存储器相比于高速缓存设计起来更加容易、具有可预测的定时特性、更快。另外,本地存储器使用更少的能量并且更便宜。
应当注意,上述实施例用于解释而非限制本发明,本领域技术人员在不脱离所附权利要求限定的范围的情况下,能够设计出许多其它的实施例。“包括”这个词并不排除权利要求中列出的元件或者步骤之外的其它元件或者步骤,“一个”或“一种”也不排除多个,以及单个处理器或者其它单元可以实现权利要求中引用的若干个单元的功能。权利要求中的任何标号不应被解释为对所述权利要求范围的限制。

Claims (14)

1、一种多处理器系统,包括:
多个处理器,所述处理器中的一个或者多个具有关联的高速缓冲存储器;
系统总线,用于连接所述多个处理器;
与所述多个处理器中的一个相关联的本地存储器;
其中所述本地存储器用于由其关联的处理器进行访问,还用于由所述多处理器系统中的所述多个处理器中的另外一个进行访问。
2、根据权利要求1所述的多处理器系统,其中所述本地存储器包括用于直接和与其关联的处理器进行通信的第一端口,以及用于通过所述系统总线来和其它处理器中的一个或者多个进行通信的第二端口。
3、根据权利要求1或2所述的多处理器系统,其中所述本地存储器被配置来作为一致性高速缓冲存储器。
4、根据权利要求3所述的多处理器系统,其中所述本地存储器用于在数据块中存储信息,给每个数据块分配第一状态位和第二状态位,所述第一状态位和所述第二状态位用于在所述本地存储器和一个或者多个高速缓冲存储器之间维持一致性。
5、根据权利要求4所述的多处理器系统,其中所述第一状态位用于指示特定数据块是否正被共享,以及其中所述第二状态位用于指示所述特定数据块是否无效。
6、根据权利要求4或5所述的多处理器系统,其中所述系统用于在所述数据块最初存储的本地存储器中存储所述第一和第二状态位。
7、根据权利要求4所述的多处理器系统,其中所述本地存储器用于按照与所述系统的高速缓存一致性粒度相对应的块大小来存储数据。
8、一种在多处理器系统中处理数据的方法,所述多处理器系统包括多个连接到系统总线的处理器,所述多个处理器中的至少一个具有高速缓冲存储器,所述方法包括以下步骤:
提供本地存储器,所述本地存储器连接到关联的处理器;以及
配置所述本地存储器使得其能够由与其关联的处理器直接访问,并且能够由其它处理器中的一个或者多个通过所述系统总线访问。
9、根据权利要求8所述的方法,还包括将第一和第二状态位分配给存储在所述本地存储器中的每个数据块的步骤,所述第一和第二状态位用于在所述本地存储器和所述一个或者多个高速缓冲存储器之间维持一致性。
10、根据权利要求9所述的方法,其中所述第一状态位指示特定数据块是否正被共享,以及其中所述第二状态位指示所述特定数据块是否无效。
11、根据权利要求10所述的方法,还包括在所述数据块最初存储的本地存储器中存储所述第一和第二状态位的步骤。
12、根据权利要求10或11所述的方法,其中处理器和与其关联的本地存储器之间的读操作包括以下步骤:
确定所访问的数据块的状态,并且如果所述数据块被确定为无效,则执行以下步骤:
通过所述系统总线从在其关联的高速缓冲存储器中存储有修改的数据块的一个或者多个其它处理器中的每一个获取修改的数据块;
将所述无效状态位清零;
置位所述共享状态位;以及
完成所述读操作。
13、根据权利要求10或11所述的方法,其中处理器和与其关联的本地存储器之间的写操作包括以下步骤:
确定所写的数据块的状态,并且如果所述数据块被确定为无效或者共享,则执行以下步骤:
确定是否有任何其它处理器具有修改的数据块,如果是,则请求这样的处理器将所述修改的数据块写回到所述本地存储器;以及
使所述其它处理器中的每一个各自的存储器中的数据块无效;
将所述无效状态位清零;以及
完成所述写操作。
14、根据权利要求8所述的方法,其中所述本地存储器按照与所述系统的高速缓存一致性粒度相对应的块大小来存储数据。
CNA2005800401769A 2004-11-24 2005-11-08 本地存储器数据的一致性高速缓存 Pending CN101065735A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04106032.8 2004-11-24
EP04106032 2004-11-24

Publications (1)

Publication Number Publication Date
CN101065735A true CN101065735A (zh) 2007-10-31

Family

ID=35744855

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005800401769A Pending CN101065735A (zh) 2004-11-24 2005-11-08 本地存储器数据的一致性高速缓存

Country Status (6)

Country Link
US (1) US7779205B2 (zh)
EP (1) EP1828907A1 (zh)
JP (1) JP5587539B2 (zh)
KR (1) KR101168364B1 (zh)
CN (1) CN101065735A (zh)
WO (1) WO2006056900A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407989A (zh) * 2014-11-25 2015-03-11 上海兆芯集成电路有限公司 具有统一标签和片化数据的高速缓冲存储器
CN107688545A (zh) * 2016-12-23 2018-02-13 北京国睿中数科技股份有限公司 高速缓存的一致性状态预置方法及系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8291175B2 (en) * 2009-10-16 2012-10-16 Oracle America, Inc. Processor-bus attached flash main-memory module
JP5404433B2 (ja) 2010-01-08 2014-01-29 株式会社東芝 マルチコアシステム
TWI478055B (zh) * 2012-12-11 2015-03-21 Gemtek Technology Co Ltd 非對稱式處理之多核心系統與其網路設備
CN105095145B (zh) * 2015-09-17 2018-04-03 浪潮(北京)电子信息产业有限公司 一种自适应嵌入式处理器

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6073766A (ja) * 1983-09-29 1985-04-25 Meidensha Electric Mfg Co Ltd Cpu間の情報交換装置
JPS61211759A (ja) * 1985-03-16 1986-09-19 Meidensha Electric Mfg Co Ltd マルチcpuシステムにおける2ポ−トメモリ制御回路
US5291442A (en) * 1990-10-31 1994-03-01 International Business Machines Corporation Method and apparatus for dynamic cache line sectoring in multiprocessor systems
JPH05225147A (ja) * 1992-02-17 1993-09-03 Toshiba Corp マルチプロセッサ型データ処理システム
US5513335A (en) * 1992-11-02 1996-04-30 Sgs-Thomson Microelectronics, Inc. Cache tag memory having first and second single-port arrays and a dual-port array
US5590308A (en) * 1993-09-01 1996-12-31 International Business Machines Corporation Method and apparatus for reducing false invalidations in distributed systems
US5832534A (en) * 1994-01-04 1998-11-03 Intel Corporation Method and apparatus for maintaining cache coherency using a single controller for multiple cache memories
WO1996029653A1 (en) * 1995-03-17 1996-09-26 Intel Corporation Multi-processing cache coherency protocol on a local bus
US5943500A (en) * 1996-07-19 1999-08-24 Compaq Computer Corporation Long latency interrupt handling and input/output write posting
DE69715203T2 (de) * 1997-10-10 2003-07-31 Bull S.A., Louveciennes Ein Datenverarbeitungssystem mit cc-NUMA (cache coherent, non-uniform memory access) Architektur und im lokalen Speicher enthaltenem Cache-Speicher für Fernzugriff
JP2002024198A (ja) * 2000-07-06 2002-01-25 Fujitsu Ltd 分散共有メモリ型並列計算機
US6356983B1 (en) * 2000-07-25 2002-03-12 Src Computers, Inc. System and method providing cache coherency and atomic memory operations in a multiprocessor computer architecture
US6862640B2 (en) * 2001-04-10 2005-03-01 Texas Instruments Incorporated Arbitration in local system for access to memory in a distant subsystem
WO2003075162A1 (en) * 2002-02-28 2003-09-12 Silicon Graphics, Inc. Method and system for cache coherence in dsm multiprocessor system without growth of the sharing vector
US7133977B2 (en) * 2003-06-13 2006-11-07 Microsoft Corporation Scalable rundown protection for object lifetime management

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407989A (zh) * 2014-11-25 2015-03-11 上海兆芯集成电路有限公司 具有统一标签和片化数据的高速缓冲存储器
CN104407989B (zh) * 2014-11-25 2019-02-12 上海兆芯集成电路有限公司 具有统一标签和片化数据的高速缓冲存储器
CN107688545A (zh) * 2016-12-23 2018-02-13 北京国睿中数科技股份有限公司 高速缓存的一致性状态预置方法及系统
CN107688545B (zh) * 2016-12-23 2021-01-19 北京国睿中数科技股份有限公司 高速缓存的一致性状态预置方法及系统

Also Published As

Publication number Publication date
US7779205B2 (en) 2010-08-17
JP2008521114A (ja) 2008-06-19
WO2006056900A1 (en) 2006-06-01
US20090150619A1 (en) 2009-06-11
JP5587539B2 (ja) 2014-09-10
EP1828907A1 (en) 2007-09-05
KR20070084441A (ko) 2007-08-24
KR101168364B1 (ko) 2012-07-25

Similar Documents

Publication Publication Date Title
US7698508B2 (en) System and method for reducing unnecessary cache operations
TWI526829B (zh) 電腦系統、用於存取儲存裝置之方法及電腦可讀儲存媒體
US7266647B2 (en) List based method and apparatus for selective and rapid cache flushes
US7366847B2 (en) Distributed cache coherence at scalable requestor filter pipes that accumulate invalidation acknowledgements from other requestor filter pipes using ordering messages from central snoop tag
US8291175B2 (en) Processor-bus attached flash main-memory module
JP3281893B2 (ja) キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム
US9489239B2 (en) Systems and methods to manage tiered cache data storage
US20130091331A1 (en) Methods, apparatus, and articles of manufacture to manage memory
US6782453B2 (en) Storing data in memory
US20180300258A1 (en) Access rank aware cache replacement policy
US10901908B2 (en) Storing data into a memory
JP3989457B2 (ja) 局所的なキャッシュ・ブロック・フラッシュ命令
CN1268695A (zh) 用于改进超高速缓存性能的输入/输出页面删除确定
US8131945B2 (en) Disowning cache entries on aging out of the entry
US10331568B2 (en) Locking a cache line for write operations on a bus
US20090300340A1 (en) Accuracy of Correlation Prefetching Via Block Correlation and Adaptive Prefetch Degree Selection
KR20100021868A (ko) 플래시 메모리 장치를 위한 버퍼 캐쉬 관리 방법
CN1470019A (zh) 用于在一个分布式存储器、高速缓存相干的多处理器系统中把有序的输入/输出事务流水线处理到相干存储器的方法和装置
US5809526A (en) Data processing system and method for selective invalidation of outdated lines in a second level memory in response to a memory request initiated by a store operation
CN101065735A (zh) 本地存储器数据的一致性高速缓存
US20100332763A1 (en) Apparatus, system, and method for cache coherency elimination
US20060179173A1 (en) Method and system for cache utilization by prefetching for multiple DMA reads
US20120047330A1 (en) I/o efficiency of persistent caches in a storage system
JPH04230549A (ja) 多重レベル・キャッシュ
US9323671B1 (en) Managing enhanced write caching

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication