Computer system performance analysis
First Claim
Patent Images
1. A method for computer system performance analysis, comprising:
- receiving a computer system performance log file;
clustering instructions involved in the computer system performance log file at flexible granularity to identify code clusters, wherein the clustering the instructions comprisessorting all gaps in a descending order, the largest gap having a smallest number as its number, the numbers of the other gaps increasing in order, wherein the gap is the difference between the address of a current instruction and the address of a next instruction adjacent to the current instruction,among all of the gaps, determining significant gaps which are significantly larger in relative to other gaps, andidentifying the corresponding instructions of the significant gaps to divide the codes into clusters,wherein determining the significant gaps further comprisesdetermining a slope of each gap bycomputing S=gapi/(N−
i),wherein S is the slope, gapi is the current gap, i is the ID of the current gap, and N is the total number of the gaps, anddetermining a gap with such a slope the rate of which to the slope of the next gap is larger than a significant gap threshold, identifying the gap as a first significant gap and other gaps larger than or equal to the gap as significant gaps; and
outputting a result of computer system performance analysis based on the code clusters.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods and devices for splitting instructions into clusters based on significant offset gaps in top-down processing steps are provided. The methods and devices allow that comments on instruction clusters can be generated automatically or can be edited manually. The comments can be shared among users for the achievement of portability. Significant clusters can be recognized as hotspots based on predetermined metrics.
-
Citations
18 Claims
-
1. A method for computer system performance analysis, comprising:
-
receiving a computer system performance log file; clustering instructions involved in the computer system performance log file at flexible granularity to identify code clusters, wherein the clustering the instructions comprises sorting all gaps in a descending order, the largest gap having a smallest number as its number, the numbers of the other gaps increasing in order, wherein the gap is the difference between the address of a current instruction and the address of a next instruction adjacent to the current instruction, among all of the gaps, determining significant gaps which are significantly larger in relative to other gaps, and identifying the corresponding instructions of the significant gaps to divide the codes into clusters, wherein determining the significant gaps further comprises determining a slope of each gap by computing S=gapi/(N−
i),wherein S is the slope, gapi is the current gap, i is the ID of the current gap, and N is the total number of the gaps, and determining a gap with such a slope the rate of which to the slope of the next gap is larger than a significant gap threshold, identifying the gap as a first significant gap and other gaps larger than or equal to the gap as significant gaps; and outputting a result of computer system performance analysis based on the code clusters. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A device for computer system performance analysis, comprising:
-
a performance log file receiver, executing using a processor, for receiving a computer system performance log file; a clustering handler for clustering instructions involved in the computer system performance log file at flexible granularity to acquire code clusters, wherein the clustering handler implements the following instruction clustering at flexible granularity; sorting all gaps in a descending order, the largest gap having a smallest number as its number, the numbers of other gaps increasing in order, wherein the gap is the difference between the address of a current instruction and the address of a next instruction adjacent to the current instruction, among all of the gaps, determining significant gaps which are significantly larger in relative to other gaps, and identifying instructions corresponding to the significant gaps to divide the codes into clusters, wherein determining the significant gaps comprises; determining a slope of each gap by; computing S=gapi/(N−
i),wherein S is the sloe, gapi is the current gap, i is the ID of the current gap, and N is the total number of the gaps, and determining a gap with such a slope the rate of which to the slope of the next gap is larger than a significant gap threshold, identifying the gap as a first significant gap and other gaps larger than or equal to the gap as significant gaps; and a performance viewer for outputting the result of computer system performance analysis based on the code clusters. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18)
-
Specification