Sampling with sample pacing
First Claim
Patent Images
1. A computer program product for sampling, the computer program product comprising:
- a computer readable storage medium having computer readable program code embodied therewith, the computer readable storage medium is not a computer readable signal medium, the computer readable program code comprising;
computer readable program code to set an affinity of a target thread such that the target thread runs on a current processor without being able to migrate to a different processor;
in response to setting the affinity, computer readable program code to generate a plurality of samples in the computer system to profile and record a plurality of events associated with the target thread; and
computer readable program code to accumulate, for each of the plurality of samples, a plurality of partial samples prior to occurrence of each of the plurality of events; and
computer readable program code to process a current sample of the plurality of samples in response to (i) completing processing of a previous sample of the plurality of samples and (ii) an accumulated quantity of the pluralities of partial samples exceeding a predetermined threshold quantity.
1 Assignment
0 Petitions
Accused Products
Abstract
A plurality of samples is generated in a computer to profile and record a plurality of events associated with the computer. For each of the plurality of samples, a plurality of partial samples is accumulated prior to occurrence of each of the plurality of events. In addition, a processor may process a current sample of the plurality of samples in response to (i) a completion of a previous sample of the plurality of samples and (ii) a predetermined threshold quantity of partial samples being accumulated. Embodiments of the invention include methods, systems and computer program products.
220 Citations
28 Claims
-
1. A computer program product for sampling, the computer program product comprising:
-
a computer readable storage medium having computer readable program code embodied therewith, the computer readable storage medium is not a computer readable signal medium, the computer readable program code comprising; computer readable program code to set an affinity of a target thread such that the target thread runs on a current processor without being able to migrate to a different processor; in response to setting the affinity, computer readable program code to generate a plurality of samples in the computer system to profile and record a plurality of events associated with the target thread; and computer readable program code to accumulate, for each of the plurality of samples, a plurality of partial samples prior to occurrence of each of the plurality of events; and computer readable program code to process a current sample of the plurality of samples in response to (i) completing processing of a previous sample of the plurality of samples and (ii) an accumulated quantity of the pluralities of partial samples exceeding a predetermined threshold quantity. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
setting an affinity of a target thread such that the target thread runs on a current processor without being able to migrate to a different processor; in response to setting the affinity, generating a plurality of samples in a computer system to profile and record a plurality of events associated with the target thread; and accumulating, for each of the plurality of samples, a plurality of partial samples prior to occurrence of each of the plurality of events; processing a current sample of the plurality of samples in response to (i) completing processing of a previous sample of the plurality of samples and (ii) an accumulated quantity of the pluralities of partial samples exceeding a predetermined threshold quantity. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A system comprising:
-
a processor; and a data storage device coupled to the processor, wherein the data storage device stores program code, and wherein the processor is configured to execute the program code to perform operations, wherein the operations comprise; setting an affinity of a target thread such that the target thread runs on a current processor without being able to migrate to a different processor; in response to setting the affinity, generating a plurality of samples in a computer system to profile and record the a plurality of events associated with the target thread; accumulating, for each of the plurality of samples, a plurality of partial samples prior to occurrence of each of the plurality of events; and processing a current sample of the plurality of samples in response to (i) completing processing of a previous sample of the plurality of samples and (ii) an accumulated quantity of the pluralities of partial samples exceeding a predetermined threshold quantity. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer program product for sampling, the computer program product comprising:
-
a computer readable storage medium having computer readable program code embodied therewith, the computer readable storage medium is not a computer readable signal medium, the computer readable program code comprising; computer readable program code to set an affinity of a target thread such that the target thread runs on a current processor without being able to migrate to a different processor; computer readable program code to, in response to setting the affinity, generate a plurality of samples to profile and record a plurality of events for the target thread; computer readable program code to accumulate, for each of the plurality of samples, a plurality of partial samples prior to occurrence of each of the plurality of events; and computer readable program code to process, a current sample of the plurality of samples in response to (i) a completion of a previous sample of the plurality of samples and (ii) a predetermined threshold quantity of partial samples being accumulated, the previous sample having a predetermined previous sample rate, the current sample having a predetermined current sample rate that is determined by multiplying the previous sample rate by a factor such that the predetermined current sample rate is greater than the predetermined previous sample rate. - View Dependent Claims (26, 27, 28)
-
Specification