ADAPTIVE PROCESS FOR DATA SHARING WITH SELECTION OF LOCK ELISION AND LOCKING
First Claim
1. A method, in a Hardware Lock Elision (HLE) Environment, for predictively determining whether a HLE transaction should actually acquire a lock and execute non-transactionally, the method comprising:
- based on encountering a HLE lock-acquire instruction, determining, based on a HLE predictor, whether to elide the lock and proceed as an HLE transaction or to acquire the lock and proceed as a non-transaction;
based on the HLE predictor predicting to elide, setting an address of the lock as a read-set of the HLE transaction, and suppressing any write by the lock-acquire instruction to the lock and proceeding in HLE transactional execution mode until a xrelease instruction is encountered wherein the xrelease instruction releases the lock or the HLE transaction encounters a transactional conflict; and
based on the HLE predictor predicting not-to-elide, treating the HLE lock-acquire instruction as a non-HLE lock-acquire instruction, and proceeding in non-transactional mode.
1 Assignment
0 Petitions
Accused Products
Abstract
In a Hardware Lock Elision (HLE) Environment, predictively determining whether a HLE transaction should actually acquire a lock and execute non-transactionally, is provided. Included is, based on encountering an HLE lock-acquire instruction, determining, based on an HLE predictor, whether to elide the lock and proceed as an HLE transaction or to acquire the lock and proceed as a non-transaction; based on the HLE predictor predicting to elide, setting the address of the lock as a read-set of the transaction, and suppressing any write by the lock-acquire instruction to the lock and proceeding in HLE transactional execution mode until an xrelease instruction is encountered wherein the xrelease instruction releases the lock or the HLE transaction encounters a transactional conflict; and based on the HLE predictor predicting not-to-elide, treating the HLE lock-acquire instruction as a non-HLE lock-acquire instruction, and proceeding in non-transactional mode.
-
Citations
20 Claims
-
1. A method, in a Hardware Lock Elision (HLE) Environment, for predictively determining whether a HLE transaction should actually acquire a lock and execute non-transactionally, the method comprising:
-
based on encountering a HLE lock-acquire instruction, determining, based on a HLE predictor, whether to elide the lock and proceed as an HLE transaction or to acquire the lock and proceed as a non-transaction; based on the HLE predictor predicting to elide, setting an address of the lock as a read-set of the HLE transaction, and suppressing any write by the lock-acquire instruction to the lock and proceeding in HLE transactional execution mode until a xrelease instruction is encountered wherein the xrelease instruction releases the lock or the HLE transaction encounters a transactional conflict; and based on the HLE predictor predicting not-to-elide, treating the HLE lock-acquire instruction as a non-HLE lock-acquire instruction, and proceeding in non-transactional mode. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product, in a Hardware Lock Elision (HLE) Environment, for predictively determining whether a HLE transaction should actually acquire a lock and execute non-transactionally, 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 comprising; based on encountering an HLE lock-acquire instruction, determining, based on an HLE predictor, whether to elide the lock and proceed as an HLE transaction or to acquire the lock and proceed as a non-transaction; based on the HLE predictor predicting to elide, setting the address of the lock as a read-set of the transaction, and suppressing any write by the lock-acquire instruction to the lock and proceeding in HLE transactional execution mode until an xrelease instruction is encountered wherein the xrelease instruction releases the lock or the HLE transaction encounters a transactional conflict; and based on the HLE predictor predicting not-to-elide, treating the HLE lock-acquire instruction as a non-HLE lock-acquire instruction, and proceeding in non-transactional mode. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computer system, in a Hardware Lock Elision (HLE) Environment, for predictively determining whether a HLE transaction should actually acquire a lock and execute non-transactionally, the computer system comprising:
-
a memory; and a processor in communications with the memory, wherein the computer system is configured to perform a method, the method comprising; based on encountering an HLE lock-acquire instruction, determining, based on an HLE predictor, whether to elide the lock and proceed as an HLE transaction or to acquire the lock and proceed as a non-transaction; based on the HLE predictor predicting to elide, setting the address of the lock as a read-set of the transaction, and suppressing any write by the lock-acquire instruction to the lock and proceeding in HLE transactional execution mode until an xrelease instruction is encountered wherein the xrelease instruction releases the lock or the HLE transaction encounters a transactional conflict; and based on the HLE predictor predicting not-to-elide, treating the HLE lock-acquire instruction as a non-HLE lock-acquire instruction, and proceeding in non-transactional mode. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification