Patent ID: 7925473

Claim:
A computer program product stored in a non-transitory computer-usable medium, the computer program product comprising: computer usable program code for collecting idle counts occurring during execution of code to form collected idle counts; and computer usable program code for providing the idle counts to an application for analyzing why a processor becomes idle, wherein the computer usable program code for collecting idle counts comprises: computer usable program code for collecting information for a system having a transition between an idle state and a non-idle state to form collected system information; and computer usable program means for providing the collected system information for analysis by an application; and wherein the computer usable program code for collecting information comprises: computer usable program code for generating trace records in response to events in which the processor transitions to the idle state and from the idle state; and computer usable program means for storing counts of times a processor associated with a thread has been in an idle state in nodes in a tree constructed using the thread's entries into and exits out of routines.