The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.

The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.

Date of Patent:
Nov. 12, 2002

Filed:

Jun. 30, 1999
Applicant:
Inventors:

Ronnie I. Chaiken, Woodinville, WA (US);

Andrew J. Edwards, Redmond, WA (US);

John A. Lefor, Bellevue, WA (US);

Jiyang Liu, Issaquah, WA (US);

Ken B. Pierce, Bellevue, WA (US);

Amitabh Srivastava, Woodinville, WA (US);

Hoi H. Vo, Bellevue, WA (US);

Assignee:

Microsoft Corporation, Redmond, WA (US);

Attorney:
Primary Examiner:
Int. Cl.
CPC ...
G06F 9/45 ;
U.S. Cl.
CPC ...
G06F 9/45 ;
Abstract

Pre-defined performance tools enable instrumentation and optimization of a heterogeneous program by modifying a platform-neutral intermediate representation (IR) of the program. The intermediate representation is hierarchy of base elements that correspond to instructions, code blocks, procedures and components within the program. Each base element exports an application program interface that provides for navigation, querying and modification of the corresponding element in the hierarchy. An application program interface for the entire intermediate representation includes the application program interfaces for the individual elements along with additional functionality. A user can request instrumentation and optimization of any level of the intermediate representation hierarchy and the performance tools perform the required modifications to the intermediate representation. When a modification requires inserting instructions, the performance tools add prologue and epilog code to connect the inserted instructions with the original intermediate representation instructions. When the intermediate representation instructions are translated into platform-specific instructions and executed, the modifications made to the intermediate representation provide the instrumentation and/or optimization of the heterogeneous program.


Find Patent Forward Citations

Loading…