A computer system dynamically scales back latch requests for system resources. Tasks seeking access to system resources each dynamically determine the probability that the task will gain access to the latch relating to a given system resource. Where the task estimates that its probability is below a defined threshold, the task will suspend itself for a defined sleep time. The task dynamically adjusts the length of the sleep time based on the number of times the task enters the suspended state and on the relative changes in the estimated probability that the task will gain access to the resource.
Legal claims defining the scope of protection, as filed with the USPTO.
1. A computer system comprising: tasks potentially contending for a latch, each task comprising: a probability determining component to dynamically estimate the probability that the task will successfully acquire the latch; and a suspending component to place the task in a suspended state for a defined sleep time where the estimated probability is below a predetermined threshold value, and wherein the suspending component bases the defined sleep time on a predicted number of instructions executed under the latch as calculated by a sample workload measurement.
2. The computer system of claim 1 in which the suspending component increments the defined sleep time by a heuristically determined constant factor for successive entries of the task into the suspended state.
3. The computer system of claim 2 in which the sleep time is capped at a predetermined maximum value.
4. The computer system of claim 1 in which the suspending component adjusts the defined sleep time in accordance with changes in the estimated probability that the task will successfully acquire the latch.
5. The computer system of claim 4 in which the sleep time is capped at a predetermined maximum value.
6. The computer system of claim 1 , in which the sleep time is capped at a predetermined maximum value.
7. The computer system of claim 1 in which the probability determining component estimates the probability that the task will successfully acquire the latch by taking the inverse of the number of tasks contending for the latch.
8. A method for the management of contention for a latch by a task in a multitask computer system, the method comprising: a. the task dynamically estimating the probability that the task will successfully acquire the latch; b. the task placing itself in a suspended state for a defined sleep time where the estimated probability is below a predetermined threshold value; and c. the task repeating the above a and b until the dynamically estimated probability of the task acquiring the latch is at or above the predetermined threshold value, following which the task will contend for the latch; and wherein the method further comprises determining the defined sleep time by a predicted number of instructions executed under the latch as calculated by a sample workload measurement.
9. The method of claim 8 , further comprising incrementing the defined sleep time by a heuristically determined constant factor for successive entries of the task into the suspended state.
10. The method of claim 9 , further comprising capping the defined sleep time at a predetermined maximum value.
11. The method of claim 8 , further comprising adjusting the defined sleep time in accordance with changes in the estimated probability that the task will successfully acquire the latch.
12. The method of claim 11 , further comprising capping the defined sleep time at a predetermined maximum value.
13. The method of claim 8 , further comprising capping the defined sleep time at a predetermined maximum value.
14. The method of claim 8 , wherein the estimating the probability that the task will successfully acquire the latch comprises taking the inverse of the number of tasks contending for the latch to define the probability.
15. A program storage device readable by a multitasking machine, tangibly embodying a program of instructions executable by the machine to perform a method for the management of contention for a latch by a task in a multitask computer system, the method comprising: a. the task dynamically estimating the probability that the task will successfully acquire the latch; b. the task placing itself in a suspended state for a defined sleep time where the estimated probability is below a predetermined threshold value; and c. the task repeating the above a and b until the dynamically estimated probability of the task acquiring the latch is at or above the predetermined threshold value, following which the task will contend for the latch; and wherein the method further comprises determining the defined sleep time by a predicted number of instructions executed under the latch as calculated by a sample workload measurement.
16. The at least one program storage device of claim 15 , wherein the method further comprises incrementing the defined sleep time by a heuristically determined constant factor for successive entries of the task into the suspended state.
17. The at least one program storage device of claim 16 , wherein the method further comprises capping the defined sleep time at a predetermined maximum value.
18. The at least one program storage device of claim 15 , wherein the method further comprises adjusting the defined sleep time in accordance with changes in the estimated probability that the task will successfully acquire the latch.
19. The at least one program storage device of claim 18 , wherein the method further comprises capping the defined sleep time at a predetermined maximum value.
20. The at least one program storage device of claim 15 , wherein the method further comprises capping the defined sleep time at a predetermined maximum value.
21. The at least one program storage device of claim 15 , wherein the estimating the probability that the task will successfully acquire the latch comprises taking the inverse of the number of tasks contending for the latch to define the probability.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
April 27, 2001
September 19, 2006
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.