U.S. patents available from 1976 to present.
U.S. patent applications available from 2005 to present.

Method and apparatus for accurate profiling of computer programs

Patent 6934935 Issued on August 23, 2005. Estimated Expiration Date: Icon_subject April 25, 2020. Estimated Expiration Date is calculated based on simple USPTO term provisions. It does not account for terminal disclaimers, term adjustments, failure to pay maintenance fees, or other factors which might affect the term of a patent.

Patent References

Software performance analyzer
Patent #: 4845615
Issued on: 07/04/1989
Inventor: Blasciak

Real time software analyzing system for storing selective m-bit addresses based upon correspondingly generated n-bit tags
Patent #: 4937740
Issued on: 06/26/1990
Inventor: Agarwal, et al.

Method and apparatus for monitoring software execution in a parallel multiprocessor computer system
Patent #: 5047919
Issued on: 09/10/1991
Inventor: Sterling, et al.

Method and apparatus for collecting execution status data of structured program
Patent #: 5142679
Issued on: 08/25/1992
Inventor: Owaki, et al.

Programmable max/min counter for performance analysis of computer systems
Patent #: 5164969
Issued on: 11/17/1992
Inventor: Alley, et al.

System for modifying relocatable object code files to monitor accesses to dynamically allocated memory
Patent #: 5193180
Issued on: 03/09/1993
Inventor: Hastings

Method for optimizing computer code to provide more efficient execution on computers having cache memories
Patent #: 5212794
Issued on: 05/18/1993
Inventor: Pettis, et al.

Interactive computer program specification and simulation system
Patent #: 5247651
Issued on: 09/21/1993
Inventor: Clarisse

System of debugging software through use of code markers inserted into spaces in the source code during and after compilation
Patent #: 5265254
Issued on: 11/23/1993
Inventor: Blasciak, et al.

Method for analyzing calls of application program by inserting monitoring routines into the executable version and redirecting calls to the monitoring routines
Patent #: 5313616
Issued on: 05/17/1994
Inventor: Cline, et al.

More ...

Inventors

Application

No. 09557737 filed on 04/25/2000

US Classes:

717/127, Monitoring program execution717/150, Loop compiling717/151, Optimization717/156, Using flow graph717/158, Including instrumentation and profiling717/130, Including instrumentation and profiling718/100, TASK MANAGEMENT OR CONTROL718/102Process scheduling

Examiners

Primary: Banankhah, Majid A.

International Classes

G06F009/44
G06F009/46

Abstract

An object code expansion profiler equips a program for execution profiling by preprocessing the object code files of the program so as to add profiling monitoring code to the beginning of all or substantially all functions. The preprocessing includes, for each function, the steps of grouping the function's instructions into basic blocks, counting the number of cycles required to execute the instructions of the basic block, and inserting special monitoring code with the basic block. The special monitoring code is executed each time the basic block is executed, and updates the profiling information to reflect the number of cycles required to execute the basic block. Special handling is provided for profiling calls to the Operating System (OS). The resultant profiling information is converted into a call graph image most useful for human users. For each arc in the graph connecting a calling-function/parent-node to a called-function/child node, the displayed arc image has a width logarithmically proportional to the self+descendants time for the called function.

Other References

  • “Effective Simulation of Multiprogramming”, W.P. Dawkins et al., ACM SIGMETRICS Performance Evaluation Review, Proceedings of the conference on Measurement and modeling of computer systems, Apr. 1990, vol. 18 Issue 1.
  • “Profile Guided Code Positioning”, Karl Pettis and Robert C. Hansen, Hewlett-Packard Company, California Language Laboratory, Proceedings of the ACM SIGPLAN'90 Conference on Programming Language Design and implementation, Jun. 1990.
  • Graham et al., GPROF; “A Call Graph Execution Profiler,” p. 120-126 (1-16) 1982.
  • Hilfingen. “A Memory Allocation Profiler for C and Lisp Programs,” p. 223-47, 1988.
  • Ponder et al., “Inaccuracies in Program Profilers,” p. 459-467, 1987.
  • Graham et al., “An Execution Profiler for Modular Programs,” p. 671-685, Mar. 10, 1983.
  • Smith, Michael D., “Tracing With Pixie,” Apr. 4, 1991, Stanford University Technical Report No. CSL-TR-91-497, p. 1-29.
  • “Pixie”, UNIX man p. 1-2.
  • Larus, James R. et al., “Re-Writing Executable Files to Measure Program Behavior,” Mar. 25, 1992, Univ. of Wisconsin, Computer Science Dept.
  • Ball, Thomas, “Optimally Profiling and Tracing Programs,” Sep. 6, 1991, Univ. of Wisconsin, Computer Science Department.
PatentsPlus Images
Enhanced PDF formats
loading...
PatentsPlus: add to cart
PatentsPlus: add to cartSearch-enhanced full patent PDF image
$9.95more info
PatentsPlus: add to cart
PatentsPlus: add to cartIntelligent turbocharged patent PDFs with marked up images
$16.95more info
 
Sign InRegister
Username  
Password   
forgot password?