US5937191A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Determining and reporting data accessing activity of a program
Assignee: NCR Voyix Corp
•
Filing: 1997-06-03
•
Granted: 1999-08-10
•
Expires: 2017-06-03
Abstract
Abstract A program analysis method that profiles blocks of a program when the program is running with representative data and provides reports on the activity of data structures of the program without significantly affect the execution time of the profiled program. Programmers can then use these reports to tune the performance of the program by, for example, reorganizing the program data structures to reduce its data cache usage during execution.
Inventors
- 👤 Marvin L. Graham
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-06 05:51
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/20; G06F11/00; G06F11/30; G06F11/34; G06F11/3466; G06F11/3409; G06F11/3447; G06F2201/00; G06F2201/88; G06F2201/885
Claims Analysis
Total Claims: 11
Claim 1
Independent Claim
92 words
A method for determining and reporting profile information of a program to facilitate tuning the performance of the program, comprising: imbedding instrumentation in the program that monitors execution of the program; running the program with representative data and extracting profile information; maintaining statically said profile information within said instrumented program at least when the program is running and transferring the profile information to a post processor after the program stops running; and processing said profile information to generate program activity reports which can be used to tune the performance of the program.
Claim 2
Independent Claim
92 words
A method for determining and reporting profile information of a program to facilitate tuning the performance of the program, comprising: imbedding instrumentation in the program that monitors execution of the program; running the program with representative data and extracting profile information; maintaining statically said profile information within said instrumented program at least when the program is running and transferring the profile information to a post processor after the program stops running; and processing said profile information to generate program activity reports which can be used to tune the performance of the program.
Claim 3
Dependent Claim
50 words
The method according to claim 1 further comprising: reorganizing data structures of the program to reduce the data cache usage of the program in response to said program activity report; and running the program with said reorganized structures and said representative data and determining the efficiency of the running program.
Claim 4
Dependent Claim
18 words
The method according to claim 2, wherein the data structures of the program are reorganized by a user.
Claim 5
Dependent Claim
17 words
The method according to claim 2, wherein the data structure elements of the program are automatically reorganized.
Claim 6
Dependent Claim
43 words
The method according to claim 1 further comprising: rearranging an instruction stream of the program in response to said program activity report; and running the program with said rearranged instruction stream and said representative data and determining the efficiency of the running program.
Claim 7
Dependent Claim
19 words
The method according to claim 1, wherein said profile information comprises block execution information and data structure activity information.
Claim 8
Dependent Claim
49 words
The method according to claim 6, wherein said block execution information comprises block arc transition data which defines basic blocks of the program executed, and a count value for each basic block executed, said count value defining the number of times a basic block of the program is executed.
Claim 9
Dependent Claim
59 words
The method according to claim 6, wherein said data structure activity information comprises information identifying data structures referenced during execution of the program, elements associated with each data structure referenced, patterns of access to said elements of each data structure, the displacement of said element in a cache line and the number of times a data structure is referenced.
Claim 10
Independent Claim
113 words
A method for determining and reporting profile information of a program to facilitate tuning the performance of the program, comprising: imbedding instrumentation in the program that monitors execution of the program; running the program with representative data and extracting block execution profile information and data structure profile information, said block execution profile information being obtained at least in part monitoring block arcs; statically maintaining said profile information within said instrumented program at least when the program is running and transferring the profile information to a post processor after the program stops running; and processing said profile information to generate program activity reports which can be used to tune the performance of the program.
Claim 11
Independent Claim
113 words
A method for determining and reporting profile information of a program to facilitate tuning the performance of the program, comprising: imbedding instrumentation in the program that monitors execution of the program; running the program with representative data and extracting block execution profile information and data structure profile information, said block execution profile information being obtained at least in part monitoring block arcs; statically maintaining said profile information within said instrumented program at least when the program is running and transferring the profile information to a post processor after the program stops running; and processing said profile information to generate program activity reports which can be used to tune the performance of the program.
References Cited (Backward Citations)
US5274811A
Cited
US5212794A
Cited
US5265254A
Cited
US5450586A
Cited
US5469572A
Cited
US5432942A
Cited
US5539907A
Cited
US5752038A
Cited
US5613118A
Cited
US5689712A
Cited
US5768592A
Cited
US5655122A
Cited
US5790865A
Cited
US5758061A
Cited
US5764989A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2002-08-09 | 2003-02-08 | 2003-08-10 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2006-08-09 | 2007-02-08 | 2007-08-10 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2010-08-09 | 2011-02-08 | 2011-08-10 | $7700.00 | Window Closed / Lapsed |