发明名称 |
Conditional transaction end instruction |
摘要 |
A Conditional Transaction End (CTEND) instruction is provided that allows a program executing in a nonconstrained transactional execution mode to inspect a storage location that is modified by either another central processing unit or the Input/Output subsystem. Based on the inspected data, transactional execution may be ended or aborted, or the decision to end/abort may be delayed, e.g., until a predefined event occurs. For instance, when the instruction executes, the processor is in a nonconstrained transaction execution mode, and the transaction nesting depth is one at the beginning of the instruction, a second operand of the instruction is inspected, and based on the inspected data, transaction execution may be ended or aborted, or the decision to end/abort may be delayed, e.g., until a predefined event occurs, such as the value of the second operand becomes a prespecified value or a time interval is exceeded. |
申请公布号 |
US9411588(B2) |
申请公布日期 |
2016.08.09 |
申请号 |
US201414212004 |
申请日期 |
2014.03.14 |
申请人 |
INTERNATIONAL BUSINESS MACHINES CORPORATION |
发明人 |
Greiner Dan F.;Jacobi Christian;Mitran Marcel;Schmidt Donald W.;Slegel Timothy J. |
分类号 |
G06F9/30;G06F9/46;G06F9/38 |
主分类号 |
G06F9/30 |
代理机构 |
Heslin Rothenberg Farley & Mesiti P.C. |
代理人 |
Kinnaman, Jr., Esq. William A.;Schiller, Esq. Blanche E.;Heslin Rothenberg Farley & Mesiti P.C. |
主权项 |
1. A computer program product for executing a machine instruction in a computing environment, said computer program product comprising:
a computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:
obtaining, by a processor, the machine instruction for execution, the machine instruction being defined for computer execution according to a computer architecture, the machine instruction comprising:
an operation code to specify a conditional transaction end operation; andone or more fields to provide a location of an operand; andexecuting, by the processor, the machine instruction, the executing comprising:
fetching the operand from the location;based on the operand comprising a first value, aborting transactional execution of a transaction associated with the machine instruction;based on the operand comprising a second value, ending the transaction; andbased on the operand comprising a third value, delaying completion of the machine instruction until a predefined action occurs. |
地址 |
Armonk NY US |