Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software

a compiler and information technology, applied in the field of program optimization, can solve the problems that the execution of software programs optimized for an old computer architecture will not generally run as quickly on a computer system with a new architecture, face the challenge of analyzing low-level programs, etc., and achieve the effect of efficiently passing compiler information, and eliminating time overhead for analysis

Inactive Publication Date: 2007-09-27
CHEN DING KAI +1
View PDF0 Cites 12 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Benefits of technology

"The present invention is a system and method for efficiently passing compiler information to hardware or software at run time. It uses unused operand fields of instructions, such as NOPs, to remove time overhead for analyzing binaries or low-level programs and does not increase program code size. The system produces bit vectors for each basic block and places them in the unused portion of the NOP instruction encoding. These bit vectors indicate which registers may be live or dead at the location of the NOP instruction. By using the unused NOP operands as a communication channel, the dynamic optimizer can quickly inspect them and reduce analysis overhead, improving runtime performance. The compiler can also pass hints to profiler software of what kind of feedback information is desired through the use of the unused NOP operands."

Problems solved by technology

While it is possible that the software program developed for an original computer architecture will run on a computer system with a new or different architecture, the execution of the software program optimized for an old computer architecture will not generally run as quickly on a computer system with a new architecture, if at all.
When software tools such as dynamic optimizer or profiling tools work on the binaries produced by the compiler, they face the challenge of analyzing low-level programs.

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software
  • System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software
  • System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0029] Reference will now be made in detail to the description of the invention as illustrated in the drawings. Although the invention will be described in connection with these drawings, there is no intent to limit it to the embodiment or embodiments disclosed therein. On the contrary, the intent is to include all alternatives, modifications, and equivalents included within the scope of the invention as defined by the appended claims.

[0030] As illustrated in FIG. 1A, computer system 12 today generally comprises a processor 21 and memory 31 (e.g., RAM, ROM, hard disk, CD-ROM, etc.) including an operating system 32. The processor 21 accepts binary program code 62 and data from the memory 31 over the local interface 23, for example, a bus(es). Direction from the user can be signaled by using input devices, for example but not limited to, a mouse 24 and a keyboard 25. The actions input and result output are displayed on the display terminal 26.

[0031] Also shown is the compiler 60, bi...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

System and method are described for register optimization during code translation utilizes a technique that removes the time overhead for analyzing register usage and eliminates fixed restraints on the compiler register usage. The present invention for register optimization utilizes a compiler to produce a register usage bit vector in a NOP instruction within each basic block (i.e., subroutine, function, and / or procedure). Each bit in the bit vector represents a particular caller-saved register. A bit is set if, at the location of NOP instruction, the compiler uses the corresponding register within that basic block containing the NOP instruction to hold information to be used at a later time. During the translation, the translator examines the register usage bit vector to very quickly determine which registers are free and therefore can be used during the register optimization without the need to save and restore the register values.

Description

CROSS-REFERENCE TO RELATED APPLICATION [0001] This application is a continuation of copending U.S. utility application entitled, “SYSTEM AND METHOD FOR EFFICIENTLY PASSING INFORMATION BETWEEN [0002] COMPILER AND POST-COMPILE-TIME SOFTWARE,” having Ser. No. 09 / 422,539, filed Oct. 21, 1999, which is entirely incorporated herein by reference.BACKGROUND OF THE INVENTION [0003] 1. Field of the Invention [0004] The present invention is generally related to program optimization, and more particularly related to an apparatus and method for efficiently passing compiler information to post-compile-time software. [0005] 2. Description of Related Art [0006] As is known in the computer and software arts, when a software program is developed it will be optimized to run on a particular computer architecture. While it is possible that the software program developed for an original computer architecture will run on a computer system with a new or different architecture, the execution of the software...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
Patent Type & Authority Applications(United States)
IPC IPC(8): G06F9/45
CPCG06F8/443G06F8/441G06F9/30076G06F9/30145
Inventor CHEN, DING-KAIJU, DZ-CHING
Owner CHEN DING KAI
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products