← Back to Patent Explorer
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
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

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.

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag