Selective cache-to-cache lateral castouts
    1.
    发明授权
    Selective cache-to-cache lateral castouts 有权
    选择性高速缓存到缓存横向转义

    公开(公告)号:US09189403B2

    公开(公告)日:2015-11-17

    申请号:US12650018

    申请日:2009-12-30

    IPC分类号: G06F12/00 G06F12/08 G06F12/12

    CPC分类号: G06F12/0811 G06F12/12

    摘要: A data processing system includes first and second processing units and a system memory. The first processing unit has first upper and first lower level caches, and the second processing unit has second upper and lower level caches. In response to a data request, a victim cache line to be castout from the first lower level cache is selected, and the first lower level cache selects between performing a lateral castout (LCO) of the victim cache line to the second lower level cache and a castout of the victim cache line to the system memory based upon a confidence indicator associated with the victim cache line. In response to selecting an LCO, the first processing unit issues an LCO command on the interconnect fabric and removes the victim cache line from the first lower level cache, and the second lower level cache holds the victim cache line.

    摘要翻译: 数据处理系统包括第一和第二处理单元和系统存储器。 第一处理单元具有第一上层和第一下层高速缓存,第二处理单元具有第二上层和下层高速缓存。 响应于数据请求,选择要从第一较低级高速缓存丢弃的受害者高速缓存行,并且第一较低级高速缓存选择在执行到第二低级高速缓存的受害者高速缓存行的横向流出(LCO) 基于与受害者高速缓存行相关联的置信指示,将受害者缓存行的丢弃发送到系统存储器。 响应于选择LCO,第一处理单元在互连结构上发布LCO命令,并从第一低级缓存中移除受害者高速缓存行,并且第二下级缓存保存受害缓存行。

    Data cache block deallocate requests in a multi-level cache hierarchy
    2.
    发明授权
    Data cache block deallocate requests in a multi-level cache hierarchy 有权
    数据缓存块在多级缓存层次结构中释放请求

    公开(公告)号:US08874852B2

    公开(公告)日:2014-10-28

    申请号:US13433048

    申请日:2012-03-28

    IPC分类号: G06F12/08

    摘要: 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.

    摘要翻译: 响应于执行取消分配指令,将指定目标高速缓存行的目标地址的解除分配请求从处理器核发送到较低级高速缓存。 作为响应,确定目标地址是否在较低级别高速缓存中。 如果是这样,则目标高速缓存行被保留在较低级高速缓存的数据阵列中,并且更新较低级高速缓存的替换顺序字段,使得目标高速缓存行更可能响应于后续高速缓存未命中而被驱逐 在包含目标缓存行的同余类中。 响应于随后的高速缓存未命中,目标高速缓存行被推出到较低级缓存,指示目标高速缓存行是处理器核心的先前释放请求的目标。

    Aggregate data processing system having multiple overlapping synthetic computers
    3.
    发明授权
    Aggregate data processing system having multiple overlapping synthetic computers 有权
    具有多个重叠合成计算机的综合数据处理系统

    公开(公告)号:US08656128B2

    公开(公告)日:2014-02-18

    申请号:US13599856

    申请日:2012-08-30

    IPC分类号: G06F12/00

    摘要: A first SMP computer has first and second processing units and a first system memory pool, a second SMP computer has third and fourth processing units and a second system memory pool, and a third SMP computer has at least fifth and sixth processing units and third, fourth and fifth system memory pools. The fourth system memory pool is inaccessible to the third, fourth and sixth processing units and accessible to at least the second and fifth processing units, and the fifth system memory pool is inaccessible to the first, second and sixth processing units and accessible to at least the fourth and fifth processing units. A first interconnect couples the second processing unit for load-store coherent, ordered access to the fourth system memory pool, and a second interconnect couples the fourth processing unit for load-store coherent, ordered access to the fifth system memory pool.

    摘要翻译: 第一SMP计算机具有第一和第二处理单元和第一系统存储器池,第二SMP计算机具有第三和第四处理单元和第二系统存储器池,并且第三SMP计算机具有至少第五和第六处理单元,第三SMP计算机具有至少第五和第六处理单元, 第四和第五系统内存池。 第四系统存储器池对于第三,第四和第六处理单元是不可访问的,并且可访问至少第二和第五处理单元,并且第五系统存储器池对于第一,第二和第六处理单元是不可访问的,并且至少可访问 第四和第五处理单元。 第一互连耦合第二处理单元,用于对第四系统存储池进行加载存储相关的有序访问,并且第二互连耦合第四处理单元,用于加载存储相关的有序访问到第五系统存储池。

    DATA CACHE BLOCK DEALLOCATE REQUESTS
    4.
    发明申请
    DATA CACHE BLOCK DEALLOCATE REQUESTS 有权
    数据缓存块解析请求

    公开(公告)号:US20130262777A1

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

    申请号:US13433022

    申请日:2012-03-28

    IPC分类号: G06F12/12

    摘要: 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.

    摘要翻译: 数据处理系统包括由上层和下层高速缓存支持的处理器核心。 响应于在处理器核心中执行取消分配指令,从处理器核心向下级高速缓存发送解除分配请求,所述释放请求指定与目标高速缓存行相关联的目标地址。 响应于在较低级别高速缓存处接收到解除分配请求,确定目标地址是否在较低级别高速缓存中。 为了响应于确定目标地址在较低级别高速缓存中的命中,目标高速缓存行被保留在较低级别高速缓存的数据阵列中,并且更新下级高速缓存的目录中的替换顺序字段,使得目标高速缓存 线路可能会响应于后续的高速缓存未命中而从较低级别的缓存中逐出。

    Memory coherence directory supporting remotely sourced requests of nodal scope
    5.
    发明授权
    Memory coherence directory supporting remotely sourced requests of nodal scope 失效
    内存一致性目录支持远程请求节点范围

    公开(公告)号:US08504779B2

    公开(公告)日:2013-08-06

    申请号:US13445010

    申请日:2012-04-12

    IPC分类号: G06F13/00 G06F13/28

    CPC分类号: G06F12/0817

    摘要: A data processing system includes at least a first through third processing nodes coupled by an interconnect fabric. The first processing node includes a master, a plurality of snoopers capable of participating in interconnect operations, and a node interface that receives a request of the master and transmits the request of the master to the second processing unit with a nodal scope of transmission limited to the second processing node. The second processing node includes a node interface having a directory. The node interface of the second processing node permits the request to proceed with the nodal scope of transmission if the directory does not indicate that a target memory block of the request is cached other than in the second processing node and prevents the request from succeeding if the directory indicates that the target memory block of the request is cached other than in the second processing node.

    摘要翻译: 数据处理系统至少包括通过互连结构耦合的第一至第三处理节点。 第一处理节点包括主机,能够参与互连操作的多个侦听器,以及接收主机请求的节点接口,并将主机的请求传送到第二处理单元,传送范围限于 第二处理节点。 第二处理节点包括具有目录的节点接口。 第二处理节点的节点接口允许请求继续进行节点传输范围,如果该目录没有指示该请求的目标存储器块不是在第二处理节点中被缓存,并且如果该请求成功 目录指示除第二处理节点之外的请求的目标存储块被缓存。

    Handling castout cache lines in a victim cache
    6.
    发明授权
    Handling castout cache lines in a victim cache 失效
    在受害者缓存中处理castout缓存行

    公开(公告)号:US08499124B2

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

    申请号:US12336048

    申请日:2008-12-16

    IPC分类号: G06F12/00

    摘要: A victim cache memory includes a cache array, a cache directory of contents of the cache array, and a cache controller that controls operation of the victim cache memory. The cache controller, responsive to receiving a castout command identifying a victim cache line castout from another cache memory, causes the victim cache line to be held in the cache array. If the other cache memory is a higher level cache in the cache hierarchy of the processor core, the cache controller marks the victim cache line in the cache directory so that it is less likely to be evicted by a replacement policy of the victim cache, and otherwise, marks the victim cache line in the cache directory so that it is more likely to be evicted by the replacement policy of the victim cache.

    摘要翻译: 受害者缓存存储器包括缓存阵列,高速缓存阵列的内容的高速缓存目录以及控制受害者缓存存储器的操作的高速缓存控制器。 高速缓存控制器响应于从另一高速缓冲存储器接收识别受害者高速缓存线路突发的丢弃命令,使受害者高速缓存行保持在高速缓存阵列中。 如果其他高速缓冲存储器是处理器核心的高速缓存层级中的较高级缓存,则高速缓存控制器将高速缓存目录中的受害者高速缓存行标记为不太可能被受害缓存的替换策略驱逐, 否则,将缓存目录中的受害者缓存行标记为更有可能被受害者缓存的替换策略驱逐。

    Synchronizing access to data in shared memory via upper level cache queuing
    7.
    发明授权
    Synchronizing access to data in shared memory via upper level cache queuing 失效
    通过高级缓存排队同步访问共享内存中的数据

    公开(公告)号:US08327074B2

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

    申请号:US13445080

    申请日:2012-04-12

    IPC分类号: G06F12/00

    摘要: A processing unit includes a store-in lower level cache having reservation logic that determines presence or absence of a reservation and a processor core including a store-through upper level cache, an instruction execution unit, a load unit that, responsive to a hit in the upper level cache on a load-reserve operation generated through execution of a load-reserve instruction by the instruction execution unit, temporarily buffers a load target address of the load-reserve operation, and a flag indicating that the load-reserve operation bound to a value in the upper level cache. If a storage-modifying operation is received that conflicts with the load target address of the load-reserve operation, the processor core sets the flag to a particular state, and, responsive to execution of a store-conditional instruction, transmits an associated store-conditional operation to the lower level cache with a fail indication if the flag is set to the particular state.

    摘要翻译: 处理单元包括具有确定存在或不存在预留的预约逻辑的存储下位缓存和包括存储通过上级缓存,指令执行单元,负载单元的处理器核心,该负载单元响应于 由指令执行单元通过执行装载预约指令而产生的加载备用操作的上级缓存暂时缓冲加载备用操作的加载目标地址,以及指示载入预约操作被绑定到 上级缓存中的值。 如果接收到与加载保留操作的加载目标地址冲突的存储修改操作,则处理器核心将该标志设置为特定状态,并且响应于执行存储条件指令,发送关联的存储 - 如果该标志被设置为特定状态,则向低级缓存进行条件操作,并显示故障指示。

    Synchronizing access to data in shared memory via upper level cache queuing

    公开(公告)号:US08296519B2

    公开(公告)日:2012-10-23

    申请号:US12650961

    申请日:2009-12-31

    IPC分类号: G06F12/00

    摘要: A processing unit includes a store-in lower level cache having reservation logic that determines presence or absence of a reservation and a processor core including a store-through upper level cache, an instruction execution unit, a load unit that, responsive to a hit in the upper level cache on a load-reserve operation generated through execution of a load-reserve instruction by the instruction execution unit, temporarily buffers a load target address of the load-reserve operation, and a flag indicating that the load-reserve operation bound to a value in the upper level cache. If a storage-modifying operation is received that conflicts with the load target address of the load-reserve operation, the processor core sets the flag to a particular state, and, responsive to execution of a store-conditional instruction, transmits an associated store-conditional operation to the lower level cache with a fail indication if the flag is set to the particular state.

    SYNCHRONIZING ACCESS TO DATA IN SHARED MEMORY VIA UPPER LEVEL CACHE QUEUING
    9.
    发明申请
    SYNCHRONIZING ACCESS TO DATA IN SHARED MEMORY VIA UPPER LEVEL CACHE QUEUING 失效
    通过上级缓存队列同步访问共享存储器中的数据

    公开(公告)号:US20120198167A1

    公开(公告)日:2012-08-02

    申请号:US13445080

    申请日:2012-04-12

    IPC分类号: G06F12/08

    摘要: A processing unit includes a store-in lower level cache having reservation logic that determines presence or absence of a reservation and a processor core including a store-through upper level cache, an instruction execution unit, a load unit that, responsive to a hit in the upper level cache on a load-reserve operation generated through execution of a load-reserve instruction by the instruction execution unit, temporarily buffers a load target address of the load-reserve operation, and a flag indicating that the load-reserve operation bound to a value in the upper level cache. If a storage-modifying operation is received that conflicts with the load target address of the load-reserve operation, the processor core sets the flag to a particular state, and, responsive to execution of a store-conditional instruction, transmits an associated store-conditional operation to the lower level cache with a fail indication if the flag is set to the particular state.

    摘要翻译: 处理单元包括具有确定存在或不存在预留的预约逻辑的存储下位缓存和包括存储通过上级缓存,指令执行单元,负载单元的处理器核心,该负载单元响应于 由指令执行单元通过执行装载预约指令而产生的加载备用操作的上级缓存暂时缓冲加载备用操作的加载目标地址,以及指示载入预约操作被绑定到 上级缓存中的值。 如果接收到与加载保留操作的加载目标地址冲突的存储修改操作,则处理器核心将该标志设置为特定状态,并且响应于执行存储条件指令,发送关联的存储 - 如果该标志被设置为特定状态,则向低级缓存进行条件操作,并显示故障指示。

    Cache-Based Speculation of Stores Following Synchronizing Operations
    10.
    发明申请
    Cache-Based Speculation of Stores Following Synchronizing Operations 失效
    基于缓存的商店跟随同步操作

    公开(公告)号:US20120179876A1

    公开(公告)日:2012-07-12

    申请号:US12985590

    申请日:2011-01-06

    IPC分类号: G06F12/08

    CPC分类号: G06F12/0837 G06F12/0895

    摘要: A method of processing store requests in a data processing system includes enqueuing a store request in a store queue of a cache memory of the data processing system. The store request identifies a target memory block by a target address and specifies store data. While the store request and a barrier request older than the store request are enqueued in the store queue, a read-claim machine of the cache memory is dispatched to acquire coherence ownership of target memory block of the store request. After coherence ownership of the target memory block is acquired and the barrier request has been retired from the store queue, a cache array of the cache memory is updated with the store data.

    摘要翻译: 在数据处理系统中处理存储请求的方法包括在数据处理系统的高速缓存存储器的存储队列中引入存储请求。 存储请求通过目标地址识别目标存储器块并指定存储数据。 当存储请求和存储请求之前的屏障请求在存储队列中排队时,调度高速缓冲存储器的读取机器以获取存储请求的目标存储器块的一致性所有权。 在获取目标存储器块的一致性所有权并且屏障请求已经从存储队列中退出之后,用存储数据更新高速缓冲存储器的高速缓存阵列。