SYSTEM AND METHOD FOR SUPPORTING AN ADAPTIVE SELF-TUNING LOCKING MECHANISM IN A TRANSACTIONAL MIDDLEWARE MACHINE ENVIRONMENT
First Claim
1. A method for supporting an adaptive locking mechanism in a transactional middleware machine environment, comprising:
- performing, via each process in a plurality of processes, one or more test-and-set (TAS) operations in order to obtain a lock for data in a shared memory;
obtaining a spin failed rate for a current tuning period, wherein a spin failure happens when a process fails to obtain the lock after performing a maximum number of rounds of TAS operations that are allowed; and
adaptively configuring a spin count for a next tuning period based on the obtained spin failure rate, wherein the spin count specifies the maximum number of rounds of TAS operations that are allowed for the next tuning period.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method can support an adaptive self-tuning locking mechanism in a transactional middleware machine environment. The system allows each process in a plurality of processes to perform one or more test-and-set (TAS) operations in order to obtain a lock for data in a shared memory. Then, the system can obtain a spin failed rate for a current tuning period, wherein a spin failure happens when a process fails to obtain the lock after performing a maximum number of rounds of TAS operations that are allowed. Furthermore, the system can adaptively configuring a spin count for a next tuning period based on the obtained spin failure rate, wherein the spin count specifies the maximum number of rounds of TAS operations that are allowed for the next tuning period.
-
Citations
20 Claims
-
1. A method for supporting an adaptive locking mechanism in a transactional middleware machine environment, comprising:
-
performing, via each process in a plurality of processes, one or more test-and-set (TAS) operations in order to obtain a lock for data in a shared memory; obtaining a spin failed rate for a current tuning period, wherein a spin failure happens when a process fails to obtain the lock after performing a maximum number of rounds of TAS operations that are allowed; and adaptively configuring a spin count for a next tuning period based on the obtained spin failure rate, wherein the spin count specifies the maximum number of rounds of TAS operations that are allowed for the next tuning period. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for providing an adaptive locking mechanism in a transactional middleware machine environment, comprising:
-
one or more processors; a plurality of processes, wherein each process in the plurality of processes operates to perform one or more test-and-set (TAS) operations in order to obtain a lock for data in a shared memory; a transactional server, running on the one or more processors, operate to obtain a spin failed rate for a current tuning period, wherein a spin failure happens when a process fails to obtain the lock after performing a maximum number of rounds of TAS operations that are allowed; and adaptively configure a spin count for a next tuning period based on the obtained spin failure rate, wherein the spin count specifies the maximum number of rounds of TAS operations that are allowed for the next tuning period. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A non-transitory machine readable storage medium having instructions stored thereon that when executed cause a system to perform the steps comprising:
-
performing, via each process in a plurality of processes, one or more test-and-set (TAS) operations in order to obtain a lock for data in a shared memory; obtaining a spin failed rate for a current tuning period, wherein a spin failure happens when a process fails to obtain the lock after performing a maximum number of rounds of TAS operations that are allowed; and adaptively configuring a spin count for a next tuning period based on the obtained spin failure rate, wherein the spin count specifies the maximum number of rounds of TAS operations that are allowed for the next tuning period.
-
Specification