Infrastructure driven auto-scaling of workloads
US-2024419470-A1 · Dec 19, 2024 · US
US9323578B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9323578-B2 |
| Application number | US-75457507-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 29, 2007 |
| Priority date | Jan 19, 2006 |
| Publication date | Apr 26, 2016 |
| Grant date | Apr 26, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A computer implemented method, apparatus, and computer usable program code for collecting information about threads. A thread entering a wait state is detected. Information is selectively obtained about a set of threads in the wait state using a policy to produce an action in response to the thread entering the wait state. A history containing the collected data may be saved and used to determine changes to patterns.
Opening claim text (preview).
What is claimed is: 1. A computer implemented method for collecting information about threads, the computer implemented method comprising: detecting a thread entering a wait state; selectively obtaining information about a set of threads in the wait state using a policy in response to the thread entering the wait state, wherein the policy comprises a set of one or more rules that identify when information about the thread is to be collected; counting a number of times that the thread has gone into an idle state, wherein a count is formed, and wherein the count is stored in a node of a tree data structure; placing a unique identifier in the node; generating a trace record, wherein the trace record contains the unique identifier and the count; generating a report based on a combination of the trace record and the tree data structure; and analyzing the report to determine why a processor became idle during execution of code that included the thread. 2. The computer implemented method of claim 1 , wherein the policy specifies obtaining information about a thread of interest in the set of threads if a number of threads in the set of threads exceeds a threshold when the thread enters the wait state. 3. The computer implemented method of claim 1 , wherein the policy specifies obtaining information about the set of threads if a number of threads in the set of threads exceeds a threshold when the thread enters the wait state. 4. The computer implemented method of claim 1 , wherein the policy specifies obtaining information about the set of threads if the processor is in an idle state when the thread enters the wait state. 5. The computer implemented method of claim 1 , wherein the selectively obtaining step comprises: obtaining call stack information about a thread of interest in the set of threads in the wait state using the policy. 6. The computer implemented method of claim 5 , wherein the selectively obtaining step further comprises: obtaining a reason why the thread of interest in the set of threads entered the wait state using the policy. 7. The computer implemented method of claim 1 , wherein the selectively obtaining step comprises: obtaining a reason why a thread of interest in the set of threads entered the wait state using the policy. 8. The computer implemented method of claim 1 further comprising: analyzing the information about the set of threads to identify a pattern for a reason why threads are in the wait state. 9. A computer implemented method for collecting information about threads, the computer implemented method comprising: detecting a thread entering a wait state; responsive to detecting the thread entering the wait state, determining whether a number of threads in the wait state exceeds a threshold; responsive to a determination that the number of threads exceeds the threshold, sending a request to an interface of a virtual machine to obtain stack information of the number of threads; collecting the stack information for the number of threads in the wait state when the number of threads exceeds the threshold; and identifying a reason why the thread entered the wait state, wherein the identifying comprises: obtaining a first reason from an operating system in which the thread is executing and a second reason from a virtual machine in which the thread is executing; and selecting one of the first reason and the second reason to form the reason why the thread entered the wait state. 10. The computer implemented method of claim 9 , wherein the collecting step comprises: collecting the stack information for a thread of interest in the number of threads in the wait state if the number of threads exceeds the threshold. 11. The computer implemented method of claim 9 , wherein the collecting step is performed by a profiling program. 12. A computer program product comprising: a computer usable medium having computer usable program code for collecting information about threads stored thereon for execution by one or more processors, the computer program product comprising: computer usable program code for detecting a thread entering a wait state; computer usable program code for selectively obtaining information about a set of threads in the wait state using a policy in response to the thread entering the wait state, wherein the policy comprises a set of one or more rules that identify when information about the thread is to be collected: computer usable program code for counting a number of times that the thread has gone into an idle state, wherein a count is formed, and wherein the count is stored in a node of a tree data structure; computer usable program code for placing a unique identifier in the node; computer usable program code for generating a trace record, wherein the trace record contains the unique identifier and the count; computer usable program code for generating a report based on a combination of the trace record and the tree data structure; and computer usable program code for analyzing the report to determine why a processor became idle during execution of code that included the thread. 13. The computer program product of claim 12 , wherein the policy specifies obtaining information about a thread of interest in the set of threads if a number of threads in the set of threads exceeds a threshold when the thread enters the wait state. 14. The computer program product of claim 12 , wherein the policy specifies obtaining information about the set of threads if a number of threads in the set of threads exceeds a threshold when the thread enters the wait state. 15. The computer program product of claim 12 , wherein the policy specifies obtaining information about the set of threads if the processor is in an idle state when the thread enters the wait state. 16. The computer program product of claim 12 , wherein the computer usable program code for selectively obtaining information about a set of threads in the wait state using a policy in response to the thread entering the wait state comprises: computer usable program code for obtaining call stack information about a thread of interest in the set of threads in the wait state using the policy. 17. The computer program product of claim 16 , wherein the computer usable program code for selectively obtaining information about a set of threads in the wait state using a policy in response to the thread entering the wait state further comprises: computer usable program code for obtaining a reason why the thread of interest in the set of threads entered the wait state using the policy. 18. The computer program product of claim 12 , wherein the computer usable program code for selectively obtaining information about a set of threads in the wait state using a policy in response to the thread entering the wait state comprises: computer usable program code for obtaining a reason why a thread of interest in the set of threads entered the wait state using the policy. 19. The computer program product of claim 12 further comprising: computer usable program code for analyzing the information about the set of threads to identify a pattern for a reason why threads are in the wait state. 20. A data processing system comprising: a bus; a communications unit connected to the bus; a storage device connected to the bus, wherein the storage device includes computer usable program code; and a processor unit connected to the bus, wherein the processor unit executes the computer usable program to: detect a thread entering a
by runtime analysis (performance monitoring G06F11/3466) · CPC title
considering the load · CPC title
Monitor · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.