CN1858721A - 用于处理多处理器系统中的存储器访问的方法和装置 - Google Patents

用于处理多处理器系统中的存储器访问的方法和装置 Download PDF

Info

Publication number
CN1858721A
CN1858721A CNA2006100586437A CN200610058643A CN1858721A CN 1858721 A CN1858721 A CN 1858721A CN A2006100586437 A CNA2006100586437 A CN A2006100586437A CN 200610058643 A CN200610058643 A CN 200610058643A CN 1858721 A CN1858721 A CN 1858721A
Authority
CN
China
Prior art keywords
node
answer
nodes
speed cache
data
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.)
Granted
Application number
CNA2006100586437A
Other languages
English (en)
Other versions
CN100405333C (zh
Inventor
B·M·巴斯
J·N·迪芬德尔弗尔
T·Q·特吕翁
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1858721A publication Critical patent/CN1858721A/zh
Application granted granted Critical
Publication of CN100405333C publication Critical patent/CN100405333C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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/0813Multiuser, multiprocessor or multiprocessing cache systems with a network or matrix configuration

Landscapes

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

Abstract

提供了一种用于重试取消机制的方法、装置和计算机程序产品,以便当多处理器系统中的高速缓存不命中时或在多处理器系统中直接存储器访问期间增强系统性能。在具有多个独立节点的多处理器系统中,节点必须能够请求驻留在其他节点上的存储器位置中的数据。节点在其存储器高速缓存中搜索所请求的数据并提供答复。专用节点仲裁这些答复并通知节点如何继续。通过如果专用节点收到干预答复则允许所请求的数据的传输,而忽略任何重试答复,本发明提高了系统性能。干预答复表示修改的数据位于该节点的存储器高速缓存中,并且因此可以忽略其他节点的任何重试。

Description

用于处理多处理器系统中的存储器访问的方法和装置
技术领域
本发明一般地涉及多处理器系统,并且更具体地,涉及重试取消机制以提高系统性能。
背景技术
在多处理器系统中有三个主要组件:处理单元及其高速缓存、输入/输出(I/O)设备及其直接存储器访问引擎(DMA)以及分布式系统存储器。处理单元执行指令。IO设备使用DMA引擎处理到/来自存储器的数据的物理传输。处理单元通过从指令流发出命令来控制IO设备。分布式系统存储器存储数据。随着处理单元的数量和系统存储器大小的增加,该处理器系统可能需要被包含在单独的芯片或节点上。
所述单独的节点必须能够彼此通信以访问多处理器系统内的所有分布式存储器。仲裁器旨在控制多处理系统内的单独节点之间的命令流和数据传输。处理单元、I/O设备、分布式系统存储器和仲裁器是多节点多处理器系统的主要组件。
图1给出了一个方框图,示出了典型的8路四节点多处理器系统100。因此,有四个单独节点和四条通道来传输数据。例如,节点0 102可以将数据传送到节点1 114或从节点3 138接收数据。每个节点都连接到两个相邻节点。每个节点还包含四个主要组件:一部分分布式系统存储器、处理单元及其高速缓存、带有DMA引擎的I/O设备以及仲裁器。具体地,节点0 102包含:两个处理单元,PU0 108和PU0 110、一个I/O设备,I/O 0106、一组存储器设备,存储器0 104以及一个仲裁器,仲裁器0 112。节点1 114包含:两个处理单元,PU1 122和PU1 120、一个I/O设备,I/O 1118、一组存储器设备,存储器1 116以及一个仲裁器,仲裁器124。节点2 126包含:两个处理单元,PU2 132和PU2 134、一个I/O设备,I/O 2 130、一组存储器设备,存储器2 128以及一个仲裁器,仲裁器2 136。节点3 138包含:两个处理单元,PU3 144和PU3 146、一个I/O设备,I/O 3 142、一组存储器设备、存储器3 140以及一个仲裁器,仲裁器3 148。
每组分布式系统存储器104、116、128和140都存储数据。例如,存储器0 104包含存储器位置0至A,存储器1 116包含存储器位置A+1至B,存储器2 128包含存储器位置B+1至C,存储器3 140包含存储器位置C+1至D。这些多节点多处理器系统的一个问题是节点0 102可能需要存储在另一节点中的数据,而节点0 102并不知道所需数据位于何处。因此,必须有一种在所述系统的节点之间通信的方法。仲裁器112、124、136和148控制该系统中的节点之间的通信。此外,仲裁器与同一节点内的处理单元通信以存储并检索所请求的数据。
例如,节点0 102可能需要并未存储在其存储器104的地址范围中的特定数据包。因此,节点0 102必须搜索系统内的其他节点以查找此数据。处理单元108向仲裁器0 112发送对特定数据包的请求。此请求包含与所请求的数据对应的地址范围。随后,仲裁器0 112准备对该数据的请求并将其发送到系统中其他的节点114、126和138。根据所请求的地址范围,仲裁器124、136和148接收此请求,并且它们中的一个成为专用节点。此专用节点向系统中所有节点及其自己的高速缓存和系统存储器发送反射(reflected)(探听)命令。每个节点的处理单元的高速缓存和系统存储器都在存储器中搜索该数据,并将其搜索结果发回专用仲裁器。专用仲裁器解释搜索结果并确定带有特定地址值的最准确的数据包。然后,将所请求的数据发送给请求节点。随后,仲裁器0 112将该数据包发送给请求该数据的处理单元108。此实例仅提供了对DMA传输或高速缓存不命中访问的概述。以下讨论将更详细地描述此方法。
图2给出了一个方框图,说明了四节点多处理器系统200中的高速缓存不命中或直接存储器访问的常规实例。节点0 102、节点1 114、节点2 126和节点3 138表示图1中的节点而没有内部组件。在此类操作的环中有五个命令阶段。第一个阶段是初始请求,其产生自请求节点中的DMA请求或高速缓存不命中。请求节点将初始请求发送给专用仲裁节点,专用仲裁节点根据请求地址范围处理该操作。第二个阶段是反射命令,其中专用节点将该请求广播到系统中的所有节点。由专用节点的仲裁器产生所述反射命令。响应该反射命令,节点在其高速缓存或系统存储器中搜索所请求的数据。第三个阶段是由节点内所有处理单元进行的答复,称为探听答复。第四个阶段是组合响应,其是所有探听答复的组合结果。专用节点在收到所有探听答复之后发出该组合响应。此响应通知节点如何继续。第五个阶段是数据传输。具有所述数据的节点能够使用来自原始反射命令和组合响应的信息将该信息发送给请求节点。根据实现,在高速缓存干预(intervention)的情况下,可以在组合响应阶段之前将数据传输到请求节点。
图2示出了处理DMA请求或高速缓存不命中的常规方法。节点0 102需要一个数据包。这可以是DMA请求或所述数据不位于此节点的系统存储器或其上的高速缓存中的事实的结果。基于该请求地址范围,节点1 114是专用仲裁节点。专用仲裁节点可以是请求节点,但在此实例中并不是。节点0 102将(10)初始请求发送到具有所请求的数据的存储器范围地址的节点1 114。节点1 114向其余的节点发送(20)反射命令。节点0 102、节点1 114、节点2 126和节点3 138探听(搜索)其高速缓存和系统存储器。
在节点探听其高速缓存和系统存储器后,它们发送探听答复。在此实例中,节点2 126是忙碌的并且不能探听其高速缓存。因此,节点2 126发送(31)带有重试的探听答复,其意味着稍后需要重新发送原始请求。对于此实施例,带有重试的探听答复具有重试位设置。节点3 138具有准确的、更新的数据,并发送(32)带有干预的探听答复。干预位表示节点3 138具有修改的(最新的)数据。在此系统中,只有一个节点具有修改的数据。对于此实现,由于一个高速缓存状态标识符,节点3 138知道其具有修改的数据。此高速缓存状态标识符指示所述数据的状态。所述高速缓存状态标识符可以指出所述数据是否被修改、是否无效、是否是独占的等。由于节点0 102是请求节点并且没有该数据,所以其发送(33)探听答复(空)。同时,节点1 114探听其高速缓存以搜索正确的数据,并将反射命令发送到其存储器。
节点1 114的仲裁器收集来自所有节点的所有探听答复。可以看到已经设置了干预位和重试位。仲裁器命令(41)进行组合响应重试,指示由于一个节点是忙碌的并且不能探听其高速缓存,必须重新发起该请求。根据实现,当创建组合响应时,节点1 114的仲裁器可以取消来自节点3 138的探听答复的干预位。每当专用仲裁器看到重试位,它就发出组合响应重试。此过程效率低,因为节点3 138具有准确的、更新的数据。即使节点3138设置了干预位,由于这是常规的协议,节点1 114仍会忽略该干预并创建重试。当节点0 102看到(42)带有重试的组合响应时,它向该环再次发出其原始请求。此描述的过程是一种特定的实现,并且可以通过其他方法来实现。
反复重试会导致活锁状态或系统性能的降低。节点在多个状态下发送带有重试位设置的探听答复。满的队列或刷新操作导致节点发送带有重试的探听答复。节点还可能由于正忙于太多的排队或请求而重试。因此,即使节点不会对该请求做任何事情也可能发送重试。在此情况下,节点3 138具有所请求的信息,但由于节点2 126是忙碌的,必须重新发起该请求。在其他实例中,如果请求节点忙碌,即使很明显请求节点没有请求的数据,但是发出了带有重试位设置的答复,专用仲裁节点仍将发送重试的组合响应,这是因为其单元中的一个单元是忙碌的。专用节点,节点1 114还可以内部地断言重试位,这可以导致带有重试的组合响应。
发明内容
本发明提供了一种用于重试取消机制的方法、装置和计算机程序产品,以便当多处理器系统中的高速缓存不命中时或在多处理器系统中的直接存储器访问期间增强系统性能。在具有多个独立节点的多处理器系统中,节点必须能够访问驻留在其他节点上的存储器位置。如果一个节点需要并未包含在其存储器或高速缓存中的数据包,则该节点必须能够在其他节点的存储器或高速缓存中搜索此数据。
如果特定节点需要数据包,它产生提供所请求的数据的相应地址的初始请求。系统内的节点中的一个节点向系统中其余节点发出反射命令。所有节点都搜索它们的存储器高速缓存的相应地址。每个节点都发送指示搜索结果的答复。创建反射命令的节点综合这些答复并发出组合响应,通知每个节点如何继续。本发明通过即使收到了重试答复,只要也收到了干预答复就允许数据传输提高了系统性能。干预答复表示修改的数据位于特定节点的存储器高速缓存中。以前,来自系统中任何节点的重试答复都将促使重试的组合响应,它意味着在随后的时刻必须重新开始这个整个过程。
附图说明
为了更完整的理解本发明及其优点,结合附图参考以下说明,其中:
图1是示出了4节点多处理器系统中的典型的8通路(系统中的8个处理器)的方框图;
图2是示出了4节点多处理器系统中的高速缓存不命中或直接存储器访问的常规实例的方框图;
图3是示出了4节点多处理器系统中的高速缓存不命中或直接存储器访问的修改的实例的方框图;以及
图4是示出了多处理器系统中的高速缓存不命中或直接存储器访问的修改的过程的流程图。
具体实施方式
在以下讨论中,提出了许多特定细节以提供对本发明的全面理解。但是,本领域的技术人员将理解,可以不采用这些特定细节实现本发明。在其他实例中,以方框图的形式示出了公知元件以避免由于不必要的细节使得本发明难以理解。此外,在很大程度上,省略了有关网络通信、电磁信号收发技术等的细节,因为不认为这些细节是获得对本发明的全面理解所必需的,并且认为这些细节是相关领域的普通技术人员可以理解的。
图3描述了示出4节点多处理器系统300中的高速缓存不命中或直接存储器访问的修改的实例的方框图。这种高速缓存不命中或直接存储器访问的修改的方法包括如果设置了干预位则取消重试位。如果设置了干预位,则专用仲裁节点发出干净的组合响应,它指示可以传输所述数据。如果至少一个节点在其高速缓存内具有准确的、更新的数据并且已发送了带有干预位设置的答复,则专用仲裁节点不创建重试组合响应。
图3示出了处理DMA请求或高速缓存不命中请求的修改的方法。节点0 102需要数据包。这可以是DMA请求或该数据并非位于其存储器高速缓存中的事实的结果。根据请求地址范围,节点1 114是专用仲裁节点。节点0 102将(10)带有所请求的数据的存储器范围地址的初始请求发送到节点1 114。节点1 114将(20)标识该存储器地址范围的反射命令发送到其余节点。基于此地址范围,节点0 102、节点1 114、节点2 126和节点3 138探听其存储器高速缓存。
所述节点在探听了它们的高速缓存和系统存储器后发出探听答复。在此实例中,节点2 126是忙碌的并且不能探听其高速缓存。因此,节点2 126发送(31)带有重试的探听答复,其意味着需要重试该探听。节点3 138具有准确的、更新的数据并发送(32)带有干预的探听答复。干预位表示节点3 138具有修改的数据。由于节点0 102是请求节点并且不具有数据,所以其发送(33)探听答复(空)。同时,节点1 114探听其高速缓存以搜索正确的数据。
节点1 114的仲裁器收集来自所有节点的所有探听答复。可以看到已经设置了干预位和重试位。由于节点3 138设置了干预位,节点1 114取消重试位。节点3 138具有正确的数据,因此,没有必要重试数据请求。节点1 114发送(42)不具重试但具有干预位设置的组合响应。此响应指出找到了所述数据并且无需重新开始该操作。此组合响应还允许将所请求的数据从节点3 138传输到节点0 102,并且还允许如果必要所有节点用正确的数据更新其高速缓存。如果在组合响应中指出并且特定的节点认为有必要,则系统中的请求节点和其他探听器可以通过更改高速缓存状态标识符或替换所述数据来更新其高速缓存。
该修改的方法是对现有技术的明显改进,因为通过避免多个重试增强了系统的性能。如果在其他地方可以提供正确的数据,性能不会仅仅因为一个节点忙碌而下降。以高的通信次数,多个重试可以使多节点多处理器系统极大地变慢。
图4是示出了多处理器系统中的高速缓存不命中或直接存储器访问的修改的过程的流程图400。当节点需要不在其高速缓存中的数据时,该节点进行初始请求402。所述初始请求传递到专用节点,并且专用节点向系统404中的所有节点发送反射命令。系统中的节点探听其高速缓存和系统存储器以查找所请求的数据406。如果特定节点忙碌,则它发送带有重试的探听答复408。如果特定节点具有修改的数据,则它发送带有干预的探听答复410。其他节点发送一般的探听答复412。所述一般的探听答复可以指出该节点不具有所请求的数据或者所请求的数据可能没有被修改。
专用节点接收探听答复并综合这些答复414。换句话说,专用节点组合所有的探听答复并确定发送哪个组合响应。如果有带有干预的探听答复,则专用节点发送不带重试的组合响应416。响应不带重试的组合响应,节点可以更新其高速缓存并且将所请求的数据传输到请求节点422。如果没有带有干预或重试的探听答复,则专用节点发送指出哪个系统存储器具有所述数据418的组合响应。此组合响应指出所有探听器都未在其高速缓存中找到所述数据,并且专用节点上的存储器提供所请求的数据。响应此组合响应,节点可以更新其高速缓存并且将结果数据传输到请求节点422。如果有带有重试的探听答复而没有带有干预的探听答复,则专用节点发送带有重试的组合响应420。在带有重试的组合响应之后,必须以初始请求402重新开始所述过程。
应当理解,本发明可以采用许多形式和实施例。因此,在不偏离本发明的范围的情况下可以对本发明进行多种变化。此处所描述的功能允许各种编程模型的可能性。不应该作为对任何特定编程模型的优选来阅读本公开,而是应当着眼于可在其上建立这些编程模型的底层概念。
因此,已经通过参考本发明的某些优选实施例描述了本发明,注意,所公开的实施例在本质上是示例性的而不是限制性的,并且可以构想出对以上公开的大范围的变化、修改、更改和替代,并且在某些实例中,可以采用本发明的某些特征而不相应地使用其他特征。根据对优选实施例的上述描述的回顾,许多这样的修改和变化可被本领域的技术人员认为是合理的。因此,应当理解,以符合本发明的范围的方式并且宽广地构造所附的权利要求。

Claims (14)

1.一种用于处理包含多个独立节点的多处理器系统中的存储器访问的方法,包括:
由所述多个节点中的请求节点请求至少一个具有相应存储器地址的数据包;
由所述多个节点中的专用节点将所请求的存储器地址发布给所述多个节点;
由所述多个节点中的每个节点产生至少一个答复,所述答复包括干预答复、忙碌答复或空答复;
由所述多个节点中的专用节点综合所述多个答复;以及
响应至少一个干预答复,不论节点是否产生忙碌答复,将所请求的数据包提供给所述请求节点。
2 根据权利要求1的方法,其中所述存储器访问包括高速缓存不命中存储器访问或直接存储器访问。
3.根据权利要求1的方法,其中基于所请求的数据的存储器地址范围选择所述专用节点。
4.根据权利要求1的方法,其中所述发布步骤还包括所述多个节点中的每个节点在其高速缓存中搜索。
5.根据权利要求4的方法,其中所述产生步骤包括以下子步骤:
如果所请求的数据在其高速缓存中被修改了,则产生所述干预答复;
如果所述节点不能搜索其存储器或高速缓存,则产生所述重试(忙碌)答复;以及
如果所请求的数据不在其高速缓存中,则产生所述空答复。
6.根据权利要求1的方法,其中所述提供步骤还包括向所述多个节点发出组合响应。
7.根据权利要求1的方法,其中所述提供步骤还包括忽略任何重试(忙碌)答复。
8.一种用于处理多处理器系统中的存储器访问的装置,包括:
多个连接的、独立的节点,其中每个节点还包括:
至少一个数据传输模块,其至少被配置为将数据传递到所述多个模块;
至少一个存储器,其至少被配置为存储数据;以及
至少一个带有高速缓存的处理单元,其至少被配置为执行指令并搜索其高速缓存;以及
至少一个连接所述多个节点中的每个节点的仲裁器,其至少被配置为执行以下步骤:
确定所述至少一个存储器或高速缓存的搜索结果;
响应所述搜索,产生干预答复、重试(忙碌)答复或空答复;
综合来自所述多个节点的多个答复;以及
响应至少一个干预答复,不论是否产生忙碌答复,产生允许数据传输的组合响应。
9.根据权利要求8的装置,其中所述存储器访问包括高速缓存不命中存储器访问或直接存储器访问。
10.根据权利要求8的装置,其中所述至少一个仲裁器包括多个仲裁器,其中所述多个节点的每个节点上驻留有一个仲裁器。
11.根据权利要求10的装置,其中所述多个仲裁器至少被配置为实现以下步骤:
如果所述请求在其存储器范围内,则反射一个命令;
综合来自所述多个节点的所有探听答复;以及
将所述组合响应发送到所述多个节点。
12.根据权利要求10的装置,其中所述多个仲裁器至少被配置为实现以下步骤:
如果所请求的数据在其高速缓存中被修改了,则产生所述干预答复;
如果所述节点不能搜索其存储器或高速缓存,则产生所述重试(忙碌)答复;以及
如果所请求的数据不在其高速缓存中,则产生所述空答复。
13.根据权利要求8的装置,其中所述至少一个仲裁器至少被配置为响应至少一个干预答复,忽略任何重试(忙碌)答复。
14.一种用于处理包含多个独立节点的多处理器系统中的存储器访问的计算机程序产品,所述计算机程序产品具有其上包含有计算机程序的介质,其中所述计算机程序包括用于执行前面方法权利要求中的任意一种方法的计算机代码。
CNB2006100586437A 2005-05-03 2006-03-02 用于处理多处理器系统中的存储器访问的方法和装置 Expired - Fee Related CN100405333C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/121,121 US20060253662A1 (en) 2005-05-03 2005-05-03 Retry cancellation mechanism to enhance system performance
US11/121,121 2005-05-03

Publications (2)

Publication Number Publication Date
CN1858721A true CN1858721A (zh) 2006-11-08
CN100405333C CN100405333C (zh) 2008-07-23

Family

ID=37297630

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100586437A Expired - Fee Related CN100405333C (zh) 2005-05-03 2006-03-02 用于处理多处理器系统中的存储器访问的方法和装置

Country Status (2)

Country Link
US (1) US20060253662A1 (zh)
CN (1) CN100405333C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452400B (zh) * 2007-11-29 2011-12-28 国际商业机器公司 处理多处理器系统中事务缓冲器溢出的方法和系统
CN105531683A (zh) * 2013-09-09 2016-04-27 高通股份有限公司 定向窥探介入
CN107615259A (zh) * 2016-04-13 2018-01-19 华为技术有限公司 一种数据处理方法及系统

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7519780B2 (en) * 2006-11-03 2009-04-14 International Business Machines Corporation System and method for reducing store latency in symmetrical multiprocessor systems
US7818509B2 (en) * 2007-10-31 2010-10-19 International Business Machines Corporation Combined response cancellation for load command
CN101566977B (zh) * 2009-06-08 2011-02-02 华为技术有限公司 处理器访问共享数据的方法、装置及系统
CN103488606B (zh) * 2013-09-10 2016-08-17 华为技术有限公司 基于节点控制器的请求响应方法和装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4760521A (en) * 1985-11-18 1988-07-26 White Consolidated Industries, Inc. Arbitration system using centralized and decentralized arbitrators to access local memories in a multi-processor controlled machine tool
US5581784A (en) * 1992-11-17 1996-12-03 Starlight Networks Method for performing I/O's in a storage system to maintain the continuity of a plurality of video streams
US5581713A (en) * 1994-10-25 1996-12-03 Pyramid Technology Corporation Multiprocessor computer backplane bus in which bus transactions are classified into different classes for arbitration
PL336162A1 (en) * 1997-04-14 2000-06-05 Ibm Readout operations in a multiprocessor computer system
US6138218A (en) * 1998-02-17 2000-10-24 International Business Machines Corporation Forward progress on retried snoop hits by altering the coherency state of a local cache
US6351791B1 (en) * 1998-06-25 2002-02-26 International Business Machines Corporation Circuit arrangement and method of maintaining cache coherence utilizing snoop response collection logic that disregards extraneous retry responses
US6460133B1 (en) * 1999-05-20 2002-10-01 International Business Machines Corporation Queue resource tracking in a multiprocessor system
US6513084B1 (en) * 1999-06-29 2003-01-28 Microsoft Corporation Arbitration of state changes
US6247100B1 (en) * 2000-01-07 2001-06-12 International Business Machines Corporation Method and system for transmitting address commands in a multiprocessor system
US6859864B2 (en) * 2000-12-29 2005-02-22 Intel Corporation Mechanism for initiating an implicit write-back in response to a read or snoop of a modified cache line
US6763434B2 (en) * 2000-12-30 2004-07-13 International Business Machines Corporation Data processing system and method for resolving a conflict between requests to modify a shared cache line
EP1405175B1 (en) * 2001-06-29 2006-09-27 Koninklijke Philips Electronics N.V. Multiprocessor system and method for operating a multiprocessor system
US7484052B2 (en) * 2005-05-03 2009-01-27 International Business Machines Corporation Distributed address arbitration scheme for symmetrical multiprocessor system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101452400B (zh) * 2007-11-29 2011-12-28 国际商业机器公司 处理多处理器系统中事务缓冲器溢出的方法和系统
CN105531683A (zh) * 2013-09-09 2016-04-27 高通股份有限公司 定向窥探介入
CN107615259A (zh) * 2016-04-13 2018-01-19 华为技术有限公司 一种数据处理方法及系统
CN107615259B (zh) * 2016-04-13 2020-03-20 华为技术有限公司 一种数据处理方法及系统

Also Published As

Publication number Publication date
CN100405333C (zh) 2008-07-23
US20060253662A1 (en) 2006-11-09

Similar Documents

Publication Publication Date Title
CN103959255B (zh) 跨多个内存口使用选择性复制降低内存访问延迟的系统及方法
US7395379B2 (en) Methods and apparatus for responding to a request cluster
CN100595720C (zh) 用于基于集线器的存储系统中直接存储器访问的设备和方法
US7039740B2 (en) Interrupt handling in systems having multiple multi-processor clusters
KR102028252B1 (ko) 자율 메모리 아키텍처
CN100405333C (zh) 用于处理多处理器系统中的存储器访问的方法和装置
KR101747966B1 (ko) 자율 서브시스템 아키텍처
JP4593594B2 (ja) 複数ノード間での通信方法、相互接続ポートおよび相互接続システム
JP4667092B2 (ja) 情報処理装置、情報処理装置におけるデータ制御方法
US20230061668A1 (en) Cache Memory Addressing
CN100530141C (zh) 用于互连网络上高效的有序储存的方法和装置
US11061676B2 (en) Scatter gather using key-value store
JP4053208B2 (ja) ディスクアレイ制御装置
CN104252416B (zh) 一种加速器以及数据处理方法
JPH05274252A (ja) コンピュータシステムにおけるトランザクション実行方法
US20030210655A1 (en) Methods and apparatus for responding to a request cluster
CN115114042A (zh) 存储数据访问方法、装置、电子设备和存储介质
CN117015767A (zh) 存储器信道控制器的芯片上互连
JPH10240695A (ja) Sciシステムにおける複数の未処理要求の局所記憶装置を用いた操作
KR100841130B1 (ko) 상호접속 네트워크를 통한 효율적인 순서화 저장을 위한방법 및 장치
US20230195662A1 (en) Coherent block read fulfillment
KR20230105374A (ko) 컴퓨팅 장치 및 차세대 연결망 접근 방법
CN115964982A (zh) 加速器的拓扑结构
CN115865784A (zh) 路径生成方法、装置及电子设备
JPH09507939A (ja) マルチプロセッサ・システムにおける入出力オペレーションの実行

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080723