发明名称 Techniques for implementing barriers to efficiently support cumulativity in a weakly-ordered memory system
摘要 A technique for operating a cache memory of a data processing system includes creating respective pollution vectors to track which of multiple concurrent threads executed by an associated processor core are currently polluted by a store operation resident in the cache memory. Dependencies in a dependency data structure of a store queue of the cache memory are set based on the pollution vectors to reduce unnecessary ordering effects. Store operations are dispatched from the store queue in accordance with the dependencies indicated by the dependency data structure.
申请公布号 US9514045(B2) 申请公布日期 2016.12.06
申请号 US201414245156 申请日期 2014.04.04
申请人 International Business Machines Corporation 发明人 Guthrie Guy L.;Shen Hugh;Starke William J.;Williams Derek E.
分类号 G06F9/312;G06F9/52;G06F12/00;G06F12/08;G06F12/12;G06F9/30;G06F9/38 主分类号 G06F9/312
代理机构 Yudell Isidore PLLC 代理人 Yudell Isidore PLLC
主权项 1. A cache memory, comprising: a data array; a store queue configured to buffer synchronization operations and store operations; a pollution vector control configured to create respective pollution vectors to track which of multiple concurrent threads executed by an associated processor core are currently polluted by a store operation resident in the cache memory; and a store queue controller configured to set dependencies in a dependency data structure of the store queue based on the pollution vectors to reduce unnecessary ordering effects and dispatch store operations from the store queue in accordance with the dependencies indicated by the dependency data structure; wherein the cache memory is a lower level cache memory and the cache memory is further configured to: compare a load target address of a load operation that hits in an upper level cache memory that is associated with the lower level cache memory to active store target addresses in the lower level cache memory; and in response to a match of the load target address with one or more of the active store target addresses in the lower level cache memory, set an associated one of the respective pollution vectors to indicate that a thread that issued the load operation is polluted by a given store operation active in the lower level cache memory.
地址 Armonk NY US