Hint instruction for managing transactional aborts in transactional memory computing environments
First Claim
1. A computer system for processing transactions in a computing environment with transactional memory, the computer system comprising:
- a memory; and
a processor in communication with the memory, wherein the computer system is configured to perform a method, the method comprising;
executing, by the processor, a transaction-hint instruction associated with a first transaction, the transaction-hint instruction specifying a transaction-count-to-completion (CTC) value, the CTC value indicating how far the first transaction is from completion;
adjusting, by the processor, the CTC value based on progress of the first transaction;
identifying, by the processor, a disruptive event while processing the first transaction, the disruptive event associated with inducing transactional aborts;
determining, by the processor, whether the adjusted CTC value satisfies deferral criteria; and
aborting, based on determining that the adjusted CTC value does not satisfy the deferral criteria, processing of the first transaction.
1 Assignment
0 Petitions
Accused Products
Abstract
When executed, a transaction-hint instruction specifies a transaction-count-to-completion (CTC) value for a transaction. The CTC value indicates how far a transaction is from completion. The CTC may be a number of instructions to completion or an amount of time to completion. The CTC value is adjusted as the transaction progresses. When a disruptive event associated with inducing transactional aborts, such as an interrupt or a conflicting memory access, is identified while processing the transaction, processing of the disruptive event is deferred if the adjusted CTC value satisfies deferral criteria. If the adjusted CTC value does not satisfy deferral criteria, the transaction is aborted and the disruptive event is processed.
-
Citations
20 Claims
-
1. A computer system for processing transactions in a computing environment with transactional memory, the computer system comprising:
-
a memory; and a processor in communication with the memory, wherein the computer system is configured to perform a method, the method comprising; executing, by the processor, a transaction-hint instruction associated with a first transaction, the transaction-hint instruction specifying a transaction-count-to-completion (CTC) value, the CTC value indicating how far the first transaction is from completion; adjusting, by the processor, the CTC value based on progress of the first transaction; identifying, by the processor, a disruptive event while processing the first transaction, the disruptive event associated with inducing transactional aborts; determining, by the processor, whether the adjusted CTC value satisfies deferral criteria; and aborting, based on determining that the adjusted CTC value does not satisfy the deferral criteria, processing of the first transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer program product for processing transactions in a computing environment with transactional memory, the 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, the method comprising; executing, by the processing circuit, a transaction-hint instruction associated with a first transaction, the transaction-hint instruction specifying a transaction-count-to-completion (CTC) value, the CTC value indicating how far the first transaction is from completion; adjusting, by the processing circuit, the CTC value based on progress of the first transaction; identifying, by the processing circuit, a disruptive event while processing the first transaction, the disruptive event associated with inducing transactional aborts; determining, by the processing circuit, whether the adjusted CTC value satisfies deferral criteria; and aborting, based on determining that the adjusted CTC value does not satisfy the deferral criteria, processing of the first transaction. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
20. A computer program product for processing transactions in a computing environment with transactional memory, the computer program product comprising:
-
a computer readable storage medium readable by a processor and storing instructions for execution by the processor for performing a method, the method comprising; executing a transaction-hint instruction associated with a first transaction, the transaction-hint instruction specifying an initial transaction-count-to-completion (CTC) value, wherein executing the transaction-hint instruction causes the processor to store the initial CTC value; adjusting, after executing the transaction-hint instruction, the stored CTC value based on progress of the first transaction, wherein the CTC value is adjusted periodically during processing of the first transaction; identifying a disruptive event while processing the first transaction, the disruptive event being associated with inducing transactional aborts; determining whether the adjusted CTC value satisfies deferral criteria; and aborting, based on determining that the adjusted CTC value does not satisfy the deferral criteria, processing of the first transaction.
-
Specification