发明名称 Inducing transactional aborts in other processing threads
摘要 In a transactional memory environment, a computer-implemented method includes a first processor initiating a first transaction and encountering an abort condition. Responsive to the abort condition, an abort other request is communicated between the first processor and one or more additional processors. The one or more additional processors receive the abort other request, and, responsive to the abort other request, the one or more additional processors selectively abort a current second transaction based on the abort other request and an abort other condition. Optionally, the transactional memory environment supports a transaction category scheme, whereby each transaction has associated therewith a category identifier. In such embodiments, the abort other request includes an abort category identifier, and the abort other condition includes aborting the current second transaction if the abort category identifier matches the category identifier for the current second transaction. A corresponding computer program product and computer system are also disclosed.
申请公布号 US9514048(B1) 申请公布日期 2016.12.06
申请号 US201514935493 申请日期 2015.11.09
申请人 International Business Machines Corporation 发明人 Busaba Fadi Y.;Salapura Valentina;Shum Chung-Lung K.
分类号 G06F9/46;G06F12/08 主分类号 G06F9/46
代理机构 代理人 Fisher-Stawinski Steven L.
主权项 1. A computer-implemented method comprising, in a transactional memory environment having a plurality of processors comprising a first processor and one or more additional processors, and said transactional memory environment supporting one or more transactions by said plurality of processors: initiating, by said first processor, a first transaction of said one or more transactions in said transactional memory environment supporting a transaction category scheme, wherein each of said one or more transactions has associated therewith a category identifier defining a semaphore created at a software level; encountering, by said first processor, an abort condition; responsive to said abort condition, aborting, by said first processor, said first transaction; responsive to said abort condition, communicating an abort other request between said first processor and said one or more additional processors, wherein said abort other request is communicated through one or more mechanisms selected from the group consisting of: a cache protocol, a snooping protocol, and a direct broadcast protocol; receiving, by said one or more additional processors, said abort other request, wherein said abort other request comprises an abort category identifier that includes the category identifier of said first transaction; responsive to said abort other request, selectively aborting, by said one or more additional processors, a current second transaction, based on said abort other request and an abort other condition, wherein said abort other condition comprises aborting said current second transaction responsive to said abort category identifier matching said category identifier for said current second transaction; wherein said abort other request is not implemented via a flag in shared storage; and wherein said first transaction and said current second transaction lack any hierarchical relationship.
地址 Armonk NY US