CN104281540A - 原子地更新多处理器系统中的共享存储器的系统及方法 - Google Patents

原子地更新多处理器系统中的共享存储器的系统及方法 Download PDF

Info

Publication number
CN104281540A
CN104281540A CN201410319129.9A CN201410319129A CN104281540A CN 104281540 A CN104281540 A CN 104281540A CN 201410319129 A CN201410319129 A CN 201410319129A CN 104281540 A CN104281540 A CN 104281540A
Authority
CN
China
Prior art keywords
local cache
equipment
stored
data
shared storage
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
CN201410319129.9A
Other languages
English (en)
Inventor
瓦库尔·加尔
瓦伦·塞西
巴拉特·布尚
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.)
NXP USA Inc
Original Assignee
Freescale Semiconductor Inc
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 Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN104281540A publication Critical patent/CN104281540A/zh
Pending legal-status Critical Current

Links

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/084Multiuser, multiprocessor or multiprocessing cache systems with a shared cache

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)

Abstract

公开了原子地更新多处理器系统中的共享存储器的系统及方法。一种操作多处理器系统的共享存储器的系统,包括:处理器核心集合和对应的核心本地高速缓存集合;I/O设备集合和对应的I/O设备本地高速缓存集合。在核心本地高速缓存、I/O设备本地高速缓存上执行读取和写入操作,并且由确保所述共享存储器被原子地更新的高速缓存一致性协议(CCP)来管辖所述共享存储器。

Description

原子地更新多处理器系统中的共享存储器的系统及方法
技术领域
本发明通常涉及多处理器系统,更具体地说,涉及用于原子地更新多处理器系统中的共享存储器的系统及方法。
背景技术
多处理器系统被用于需要大量数据处理的应用。这些系统包括并行处理若干指令的多个处理器核心。多处理器系统可能包括若干输入/输出(I/O)设备,以接收输入数据和指令,并提供输出数据。指令和数据被存储在处理器核心和I/O设备都可以访问的共享存储器中。为了改进性能,多处理器系统配备了快速存储器芯片,用于实现高速缓存存储器,其中高速缓存存储器访问时间比共享存储器访问时间少的相当多。每个处理器核心和I/O设备存储数据和指令,其在处理周期中在本地高速缓存中具有被访问的高可能性。当处理器核心和/或I/O设备所需的数据在其对应的高速缓存中是可用的时候,较慢的共享存储器不被访问,这就减少了数据访问时间和总处理时间。
具有用于处理器核心和I/O设备中每个的共享存储器和本地高速缓存存储器的这种多处理器系统基于高速缓存一致性协议进行操作。高速缓存一致性协议(cache coherence protocol)确保共享操作对象值的变化以及时的方式在整个系统中传播。高速缓存一致性协议也管辖由处理器核心和I/O设备在共享存储器上执行的读取/写入操作。高速缓存一致性协议确保由写入器对共享存储器的更新对各自的读取器是可见。为了确保这些更新是原子的,可以使用如同读取锁定和写入锁定的机制,来防止读取器访问瞬态数据。通常,这是通过允许读取器或写入器在给定时刻访问共享存储器来实现的。
然而,存在传统的锁定机制不能确保原子性的情况。例如,I/O设备可能不能定位在关联高速缓存存储器中的有效数据,在此期间,根据高速缓存一致性协议,请求被重定向到处理器核心的高速缓存存储器。然而,如果处理器核心处于更新其高速缓存的进程中,则读取操作导致I/O设备被提供了瞬态数据,这可能导致由多处理器系生成的错误输出。
因此,具有用于给多处理器系统的共享存储器提供原子更新的系统及方法将是有利的,其防止I/O设备访问瞬态数据,减少处理周期的持续时间,并克服了用于更新多处理器系统的共享存储器的传统系统及方法的上述局限性。
附图说明
当结合附图阅读的时候,本发明优选实施例的以下详细说明书将被更好的理解。本发明通过举例的方式说明并没有被附图所限制,在附图中类似的参考符号表示相同的元素。
图1根据本发明的一个实施例,是多处理器系统的示意方框图;以及
图2根据本发明的一个实施例,是用于操作多处理器系统的共享存储器的方法的流程图。
具体实施方式
附属权利要求的详细说明书旨在作为本发明当前优选实施例的说明书,而不旨在表示本发明在其中被实施的唯一形式。应了解,相同或等价功能可能通过旨在包含在本发明精神和范围内的不同的实施例来实现。
在本发明的一个实施例中,提供了一种操作多处理器系统的共享存储器的方法。所述多处理器系统包括:处理器核心集合和对应的核心本地高速缓存集合;以及,输入/输出(I/O)设备集合和对应的I/O设备本地高速缓存集合。所述共享存储器在所述处理器核心集合和所述I/O设备集合之间被共享。所述方法包括:由所述处理器核心集合的关联处理器核心更新存储在所述核心本地高速缓存集合的核心本地高速缓存中的数据。在被所述处理器核心更新之后,存储在所述核心本地高速缓存中的所述数据被发射到所述共享存储器。在将存储在所述核心本地高速缓存中的所述数据发射到所述共享存储器之后,由所述处理器核心将存储在所述I/O设备本地高速缓存集合的I/O设备本地高速缓存中的数据标记为无效。由所述I/O设备集合的关联I/O设备访问所述I/O设备本地高速缓存。由所述I/O设备确定存储在所述I/O设备本地高速缓存中的所述数据的有效性。当所述数据被确定为有效的时候,读取存储在所述I/O设备本地高速缓存中的所述数据。当存储在所述I/O设备本地高速缓存中的所述数据被确定为无效的时候,访问存储在所述共享存储器中的数据。存储在所述共享存储器中的所述数据被所述I/O设备访问。
在本发明的另一实施例中,提供了一种多处理器系统。所述多处理器系统包括:共享存储器;连接到所述共享存储器的核心本地高速缓存集合;以及,连接到所述共享存储器的输入/输出(I/O)设备本地高速缓存集合。所述I/O设备本地高速缓存集合将存储在所述共享存储器中的数据接收并存储。所述多处理器系统还包括:连接到所述核心本地高速缓存集合的处理器核心集合,用于更新存储在所述核心本地高速缓存集合中的所述数据。而且,所述处理器核心集合的至少一个处理器核心与所述核心本地高速缓存集合的至少一个核心本地高速缓存相关联。所述至少一个处理器核心锁定所述核心本地高速缓存,同时更新存储在其中的所述数据,将存储在所述核心本地高速缓存中的所述数据发射到所述共享存储器,以及,在将存储在所述核心本地高速缓存中的所述数据发射到所述共享存储器之后,将存储在所述I/O设备本地高速缓存集合的I/O设备本地高速缓存中的数据标记为无效。
所述系统还包括连接到所述I/O设备本地高速缓存集合的I/O设备集合。至少一个I/O设备与至少一个I/O设备本地高速缓存相关联。所述I/O设备确定存储在所述I/O设备本地高速缓存中的所述数据的有效性。当所述数据被确定为有效的时候,读取存储在所述I/O设备本地高速缓存中的所述数据,以及,当存储在所述I/O设备本地高速缓存中的所述数据被确定为无效的时候,访问存储在所述共享存储器中的数据。
本发明的多种实施例提供一种用于操作多处理器系统的共享存储器的系统及方法。所述多处理器系统包括:具有对应核心本地高速缓存集合的处理器核心集合;以及,具有对应组的I/O设备本地高速缓存的I/O设备集合。在核心本地高速缓存、I/O设备本地高速缓存上执行读取和写入操作,并且所述共享存储器由高速缓存一致性协议(CCP)管理,使得所述共享存储器被原子地更新。所述CCP确保只有I/O设备是能够对所述I/O设备本地高速缓存集合执行读取操作的有效读取器。此外,所述CCP定义了高速缓存一致性域,用于管理由所述I/O设备生成的读取访问请求。所述高速缓存一致性域仅仅包括所述I/O设备、所述I/O设备本地高速缓存以及所述共享存储器。
处理器核心更新在写入操作中存储在核心本地高速缓存中的数据,并且在更新所述核心本地高速缓存之后,将更新的数据发射到所述共享存储器。在成功地将更新数据发射到所述共享存储器之后,所述处理器核心也将存储在所述I/O设备本地高速缓存中的数据标记为无效。当与I/O设备本地高速缓存相关联的I/O设备启动读取访问请求并不能定位I/O设备本地高速缓存中的有效数据的时候,I/O设备被重定向到共享存储器,以用于定位有效数据(除了I/O设备本地高速缓存之外,共享存储器是高速缓存一致性域的唯一其它组件)。当其仍然由处理器核心更新的时候,将读取访问请求重定向到核心本地高速缓存而不是共享存储器增加了I/O设备访问核心本地高速缓存的可能性,并且当其由处理器核心更新的时候,访问核心本地高速缓存导致瞬态数据被提供给I/O设备。然而,在本发明的多处理器系统中,只有当在核心本地高速缓存上完成处理器核心的写入操作,更新数据才将被发射到共享存储器,因此,共享存储器接收到更新的有效数据。响应于I/O设备的重定向读取访问请求,更新的有效数据随后被发射到I/O设备本地高速缓存。I/O设备从I/O设备本地高速缓存读取更新数据。
将核心本地高速缓存保留在高速缓存一致性域之外导致了I/O设备的读取访问请求被重定向到共享存储器,而不是核心本地高速缓存。这防止了I/O设备被提供瞬态数据,这接下来根除了由多处理器系统生成错误输出的任何可能性。由于CCP必需将更新数据从核心本地高速缓存发射到共享存储器,因此共享存储器保持了最近的更新数据,所述最近的更新数据基于读取访问请求被提供给I/O设备。
现在参照图1,图1根据本发明的一个实施例,显示了多处理器系统100。多处理器系统100包括多个处理器核心102(其中一个被显示)、多个核心本地高速缓存104(其中一个被显示)、多个I/O设备106(其中一个被显示)、多个I/O设备本地高速缓存108(其中一个被显示)以及共享存储器110。I/O设备的例子包括输入/输出存储器管理单元(IOMMU)、模式匹配引擎、帧分类硬件等等。每个处理器核心102具有对应的I/O设备本地高速缓存104并且每个I/O设备106具有对应的I/O设备本地高速缓存108。核心本地高速缓存104和I/O设备本地高速缓存108被连接到共享存储器110。本领域所属技术人员应了解,设备本地高速缓存存储器可能直接被连接到共享存储器110(如图所示)或间接被连接到共享存储器110,例如通过核心。
处理器核心102并行处理由I/O设备106提供的指令。具有在处理周期被处理器核心102和I/O设备106访问的高可能性的数据和指令从共享存储器110中被预取出,并被存储在核心本地高速缓存104和I/O设备本地高速缓存108中。在本发明的一个实施例中,I/O设备106从共享存储器110读取数据结构,并将其存储在I/O设备本地高速缓存108中。I/O设备106随后应用存储在数据结构中的信息,以进行事务处理或工作处理。一个示例数据结构是被IOMMU使用的I/O事务授权和转换表。正如本领域所属技术人员已知的,该表包含针对每个I/O设备的条目,其中每个条目包含多个字。根据本发明,这些条目可以被原子地更新。
多个读取/写入操作在共享存储器110、核心本地高速缓存104和I/O设备本地高速缓存108上进行。多种读取/写入操作是由CCP,即CoreNetTM一致性结构来管辖。例如,在一些实施例中,一致性域符合由Power体系结构技术标准指定的一致性、连贯性和高速缓存规则和事务顺序规则以及在CoreNetTM一致性结构中使用的访问协议。Power体系结构和Power.org字标以及Power和Power.org标识以及相关标志是由Power.org许可的商标和服务标志。Power体系结构技术标准通常指与由IBM、Motorola(现Freescale Semiconductor)和Apple Computer组织的指令集和架构有关的技术。CoreNet是Freescale Semiconductor,Inc的商标。
根据本发明的CCP,只有I/O设备106是能够对I/O设备本地高速缓存108执行读取操作的有效读取器。而且,只有I/O设备本地高速缓存108和共享存储器110位于高速缓存一致性域中。
处理器核102更新在写入操作中存储在核心本地高速缓存104中的数据,以存储/更新其中的一个或多个数据字。在写入操作中,处理器核心102锁定核心本地高速缓存104,以便防止存储在其中的内容被在处理器核心102上运行的高速缓存替换算法清理(flush)到共享存储器110。更新数据随后由处理器核心102发射到共享存储器110,并且核心本地高速缓存104上的锁定被移除。在将更新数据成功存储到共享存储器110中之后,处理器核心102将存储在/O设备本地高速缓存108中的数据标记为无效。
而且,I/O设备106启动对I/O设备本地高速缓存108的读取访问请求,并确定存储在其中的数据的有效性。由于存储在I/O设备本地高速缓存108中的数据被标记为无效,因此读取访问请求被重定向到共享存储器110,该共享存储器110是高速缓存一致性域的唯一其它组件(除了I/O设备本地高速缓存108)。由于更新数据被成功地从核心本地高速缓存104接收并存储在共享存储器110中,因此响应于重定向的读取访问请求,共享存储器110将更新数据发射到I/O设备本地高速缓存108。更新数据被存储在I/O设备本地高速缓存108中,并且此后被I/O设备106访问。
现在参照图2,图2根据本发明一个实施例,显示了一种用于操作多处理器系统100的共享存储器110的方法的流程图。
在步骤202,存储在核心本地高速缓存104中的数据在写入操作中被处理器核心102更新。在步骤204,当处理器核心102对核心本地高速缓存104执行写入操作的时候,核心本地高速缓存104被处理器核心102锁定。核心本地高速缓存104的锁定防止了存储在其中的内容被在处理器核心102上运行的高速缓存替换算法清理到共享存储器110。在步骤206,在完成写入操作之后,处理器核心102发射存储在核心本地高速缓存104中的更新数据,并且核心本地高速缓存104上的锁定被移除。在步骤208,处理器核心102将存储在I/O设备本地高速缓存106中的数据标记为无效。在步骤210,I/O设备106访问I/O设备本地高速缓存108,以对其执行读取访问。在步骤212,I/O设备106确定存储在I/O设备本地高速缓存108中的数据的有效性。在步骤214,如果存储在I/O设备本地高速缓存108中的数据被确定为是有效,则I/O设备106读取存储在其中的数据。在步骤216,如果存储在I/O设备本地高速缓存108中的数据被确定为无效,那么读取访问请求被重定向到共享存储器110,除了I/O设备本地高速缓存108,共享存储器110是高速缓存一致性域的唯一其它组件。共享存储器110将更新数据发射到I/O设备本地高速缓存108。在步骤218,I/O设备106读取存储在I/O设备本地高速缓存108中的更新数据。
虽然本发明的各种实施例被说明和描述,很明显本发明并不仅仅限于这些实施例。正如权利要求中所描述的,在不脱离本发明精神和范围的情况下,各种修改、变化、变体、替代以及等同物对于本领域所属技术人员来说很明显。

Claims (10)

1.一种用于操作多处理器系统的共享存储器的方法,所述多处理器系统包括:处理器核心集合和对应的核心本地高速缓存集合;以及输入/输出I/O设备集合和对应的I/O设备本地高速缓存集合,所述共享存储器在所述处理器核心集合和所述I/O设备集合之间被共享,所述处理器核心集合包括至少一个处理器核心,以及所述I/O设备集合包括至少一个I/O设备,所述方法包括:
由所述处理器核心集合的关联处理器核心来更新存储在所述核心本地高速缓存集合的核心本地高速缓存中的数据;
在由所述处理器核心更新之后,将存储在所述核心本地高速缓存中的所述数据发射到所述共享存储器;
在将存储在所述核心本地高速缓存中的所述数据发射到所述共享存储器之后,由所述处理器核心将存储在所述I/O设备本地高速缓存集合的I/O设备本地高速缓存中的数据标记为无效;
由所述I/O设备集合的关联I/O设备访问所述I/O设备本地高速缓存;
由所述I/O设备确定存储在所述I/O设备本地高速缓存中的所述数据的有效性;
当所述数据被确定为有效的时候,读取存储在所述I/O设备本地高速缓存中的所述数据;以及
当存储在所述I/O设备本地高速缓存中的所述数据被确定为无效的时候,访问存储在所述共享存储器中的数据,其中,存储在所述共享存储器中的所述数据由所述I/O设备访问。
2.根据权利要求1所述的方法,还包括:当所述核心本地高速缓存由所述处理器核心更新的时候,由所述处理器核心锁定所述核心本地高速缓存。
3.根据权利要求2所述的方法,其中,访问存储在所述共享存储器中的所述数据的步骤还包括:
将存储在所述共享存储器中的所述数据发射到所述I/O设备本地高速缓存;以及
由所述I/O设备读取从所述共享存储器被发射到所述I/O设备本地高速缓存的所述数据。
4.根据权利要求3所述的方法,其中,所述多处理器系统根据与CoreNetTM一致性结构相关联的高速缓存一致性协议的集合进行操作。
5.根据权利要求1所述的方法,其中,所述I/O设备集合包括下述中的至少一个:输入/输出存储器管理单元(IOMMU)、模式匹配引擎、和帧分类硬件。
6.一种多处理器系统,包括:
共享存储器;
连接到所述共享存储器的核心本地高速缓存集合;
连接到所述共享存储器的输入/输出I/O设备本地高速缓存集合,用于将被存储在所述共享存储器中的数据接收和存储;
连接到所述核心本地高速缓存集合的处理器核心集合,用于更新存储在所述核心本地高速缓存集合中的所述数据,其中,至少一个处理器核心与所述核心本地高速缓存集合的至少一个核心本地高速缓存相关联,其中,所述至少一个处理器核心锁定所述至少一个核心本地高速缓存,同时更新存储在其中的所述数据;将存储在所述至少一个核心本地高速缓存中的所述数据发射到所述共享存储器;以及,在将存储在所述至少一个核心本地高速缓存中的所述数据发射到所述共享存储器之后,将存储在所述I/O设备本地高速缓存集合的至少一个I/O设备本地高速缓存中的数据标记为无效;以及
连接到所述I/O设备本地高速缓存集合的I/O设备集合,其中,至少一个I/O设备与至少一个I/O设备本地高速缓存相关联,其中,所述至少一个I/O设备确定存储在所述至少一个I/O设备本地高速缓存中的所述数据的有效性;当所述数据被确定为有效的时候,读取存储在所述至少一个I/O设备本地高速缓存中的所述数据;以及,当存储在所述至少一个I/O设备本地高速缓存中的所述数据被确定为无效的时候,访问存储在所述共享存储器中的所述数据。
7.根据权利要求6所述的多处理器系统,其中,在接收到存储在所述核心本地高速缓存中的所述数据之后,所述共享存储器将存储在其中的所述数据发射到所述至少一个I/O设备本地高速缓存,其中,所述共享存储器基于从所述至少一个I/O设备接收的请求来发射所述数据。
8.根据权利要求8所述的多处理器系统,其中,所述至少一个I/O设备读取由所述共享存储器发射到所述至少一个I/O设备本地高速缓存的所述数据。
9.根据权利要求6所述的多处理器系统,其中,所述I/O设备集合包括下述中的至少一个:输入/输出存储器管理单元(IOMMU)、模式匹配引擎帧分类硬件。
10.根据权利要求6所述的多处理器系统,其中,所述多处理器系统根据与CoreNetTM一致性结构相关联的协议集合进行操作。
CN201410319129.9A 2013-07-04 2014-07-04 原子地更新多处理器系统中的共享存储器的系统及方法 Pending CN104281540A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/935,550 US20150012711A1 (en) 2013-07-04 2013-07-04 System and method for atomically updating shared memory in multiprocessor system
US13/935,550 2013-07-04

Publications (1)

Publication Number Publication Date
CN104281540A true CN104281540A (zh) 2015-01-14

Family

ID=52133618

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410319129.9A Pending CN104281540A (zh) 2013-07-04 2014-07-04 原子地更新多处理器系统中的共享存储器的系统及方法

Country Status (2)

Country Link
US (1) US20150012711A1 (zh)
CN (1) CN104281540A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354153A (zh) * 2015-11-23 2016-02-24 浙江大学城市学院 一种紧耦合异构多处理器数据交换缓存的实现方法
CN106897230A (zh) * 2015-11-27 2017-06-27 Arm 有限公司 用于处理原子更新操作的装置和方法
CN109117415A (zh) * 2017-06-26 2019-01-01 上海寒武纪信息科技有限公司 数据共享系统及其数据共享方法
CN113792006A (zh) * 2020-08-14 2021-12-14 阿里巴巴集团控股有限公司 具有高速缓存一致性的设备间处理系统
US11537843B2 (en) 2017-06-29 2022-12-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11656910B2 (en) 2017-08-21 2023-05-23 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11687467B2 (en) 2018-04-28 2023-06-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11726844B2 (en) 2017-06-26 2023-08-15 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112559433B (zh) * 2019-09-25 2024-01-02 阿里巴巴集团控股有限公司 一种多核互联总线、核间通信方法及多核处理器
US11709822B2 (en) * 2020-05-29 2023-07-25 EMC IP Holding Company LLC Managing datapath validation on per-transaction basis

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5263142A (en) * 1990-04-12 1993-11-16 Sun Microsystems, Inc. Input/output cache with mapped pages allocated for caching direct (virtual) memory access input/output data based on type of I/O devices
US5247648A (en) * 1990-04-12 1993-09-21 Sun Microsystems, Inc. Maintaining data coherency between a central cache, an I/O cache and a memory
US6049851A (en) * 1994-02-14 2000-04-11 Hewlett-Packard Company Method and apparatus for checking cache coherency in a computer architecture
US6529968B1 (en) * 1999-12-21 2003-03-04 Intel Corporation DMA controller and coherency-tracking unit for efficient data transfers between coherent and non-coherent memory spaces
US6675265B2 (en) * 2000-06-10 2004-01-06 Hewlett-Packard Development Company, L.P. Multiprocessor cache coherence system and method in which processor nodes and input/output nodes are equal participants
US6981101B1 (en) * 2000-07-20 2005-12-27 Silicon Graphics, Inc. Method and system for maintaining data at input/output (I/O) interfaces for a multiprocessor system
US20050289300A1 (en) * 2004-06-24 2005-12-29 International Business Machines Corporation Disable write back on atomic reserved line in a small cache system
US7412570B2 (en) * 2005-11-15 2008-08-12 Sun Microsystems, Inc. Small and power-efficient cache that can provide data for background DNA devices while the processor is in a low-power state
US8131941B2 (en) * 2007-09-21 2012-03-06 Mips Technologies, Inc. Support for multiple coherence domains
JP2010244327A (ja) * 2009-04-07 2010-10-28 Toshiba Corp キャッシュシステム
US8554967B2 (en) * 2009-06-16 2013-10-08 Freescale Semiconductor, Inc. Flow control mechanisms for avoidance of retries and/or deadlocks in an interconnect
US20110131381A1 (en) * 2009-11-27 2011-06-02 Advanced Micro Devices, Inc. Cache scratch-pad and method therefor

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105354153A (zh) * 2015-11-23 2016-02-24 浙江大学城市学院 一种紧耦合异构多处理器数据交换缓存的实现方法
CN105354153B (zh) * 2015-11-23 2018-04-06 浙江大学城市学院 一种紧耦合异构多处理器数据交换缓存的实现方法
CN106897230A (zh) * 2015-11-27 2017-06-27 Arm 有限公司 用于处理原子更新操作的装置和方法
CN106897230B (zh) * 2015-11-27 2021-12-14 Arm 有限公司 用于处理原子更新操作的装置和方法
CN109117415A (zh) * 2017-06-26 2019-01-01 上海寒武纪信息科技有限公司 数据共享系统及其数据共享方法
US11726844B2 (en) 2017-06-26 2023-08-15 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN109117415B (zh) * 2017-06-26 2024-05-14 上海寒武纪信息科技有限公司 数据共享系统及其数据共享方法
US11537843B2 (en) 2017-06-29 2022-12-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11656910B2 (en) 2017-08-21 2023-05-23 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
US11687467B2 (en) 2018-04-28 2023-06-27 Shanghai Cambricon Information Technology Co., Ltd Data sharing system and data sharing method therefor
CN113792006A (zh) * 2020-08-14 2021-12-14 阿里巴巴集团控股有限公司 具有高速缓存一致性的设备间处理系统

Also Published As

Publication number Publication date
US20150012711A1 (en) 2015-01-08

Similar Documents

Publication Publication Date Title
CN104281540A (zh) 原子地更新多处理器系统中的共享存储器的系统及方法
US8706973B2 (en) Unbounded transactional memory system and method
CN102103570B (zh) Simd向量的同步化
CN1894662B (zh) 作为用于执行引导码的ram的处理器缓存存储器
US7363435B1 (en) System and method for coherence prediction
US8423736B2 (en) Maintaining cache coherence in a multi-node, symmetric multiprocessing computer
KR100567099B1 (ko) L2 디렉토리를 이용한 멀티프로세서 시스템의 가-저장촉진 방법 및 장치
US8762651B2 (en) Maintaining cache coherence in a multi-node, symmetric multiprocessing computer
KR100704089B1 (ko) L2 디렉토리를 이용한 멀티프로세서 시스템의 가-로드촉진 방법 및 장치
US8051250B2 (en) Systems and methods for pushing data
US20110219215A1 (en) Atomicity: a multi-pronged approach
US9886397B2 (en) Load and store ordering for a strongly ordered simultaneous multithreading core
CN101322103A (zh) 无约束事务存储器系统
CN101470629A (zh) 用于在事务性存储器系统中实现强原子性的机制
CN110312997A (zh) 使用缓存行锁定来实现原子原语
CN101495976A (zh) 直接更新软件事务存储器
CN103279428B (zh) 一种显式的面向流应用的多核Cache一致性主动管理方法
WO2010041515A1 (ja) 複数のアプリケーションサーバにより共有データをアクセスするシステム
CN106663026B (zh) 针对事务型数据处理执行模式的调用堆栈维护
GB2507759A (en) Hierarchical cache with a first level data cache which can access a second level instruction cache or a third level unified cache
CN101788922A (zh) 基于辅助线程实现事务存储系统的方法和装置
EP4026005B1 (en) Producer-to-consumer active direct cache transfers
US8380935B2 (en) Atomic memory operation cache protocol with opportunistic combining
US9164928B2 (en) Validation of cache locking using instruction fetch and execution
US11586462B2 (en) Memory access request for a memory protocol

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

Application publication date: 20150114