18097307. REDUCING REGISTER PRESSURE simplified abstract (International Business Machines Corporation)

From WikiPatents
Jump to navigation Jump to search

REDUCING REGISTER PRESSURE

Organization Name

International Business Machines Corporation

Inventor(s)

Zheng Chen of Shanghai (CN)

Ke Wen Lin of Shanghai (CN)

Si Yuan Zhang of Shanghai (CN)

REDUCING REGISTER PRESSURE - A simplified explanation of the abstract

This abstract first appeared for US patent application 18097307 titled 'REDUCING REGISTER PRESSURE

The patent application describes a method, system, and computer program product for reducing register pressure in computer programs.

  • Loops in a computer program with a high number of live variables are identified.
  • Chains within each identified loop are identified, containing load and store instructions with loop invariants.
  • Address expressions in the identified chains are modified to reuse common variable offsets, reducing the need for storing variable offsets in registers.
  • This process helps mitigate register pressure in the program.
      1. Potential Applications:

This technology can be applied in optimizing compiler design, improving program performance, and enhancing the efficiency of computing systems.

      1. Problems Solved:

1. Reducing register pressure in computer programs with high numbers of live variables. 2. Improving the utilization of available registers in storing data efficiently.

      1. Benefits:

1. Enhanced performance of computer programs. 2. Optimization of compiler design. 3. Efficient utilization of computing resources.

      1. Commercial Applications:

Optimizing compiler tools for software development companies, improving the performance of high-intensity computing tasks in data centers, and enhancing the efficiency of embedded systems in IoT devices.

      1. Prior Art:

Researchers in the field of compiler optimization and computer architecture may have explored similar techniques for reducing register pressure in computer programs.

      1. Frequently Updated Research:

Stay updated on the latest advancements in compiler optimization techniques and computer program analysis to further enhance the efficiency of register allocation strategies.

        1. Questions about Register Pressure Reduction:

1. How does the identified chain analysis help in reducing register pressure in computer programs?

  - By identifying and modifying address expressions to reuse common variable offsets, the number of variable offsets stored in registers is minimized, thereby reducing register pressure.

2. What are the potential implications of reducing register pressure in compiler design and program performance?

  - The potential implications include improved program efficiency, enhanced utilization of computing resources, and optimized performance of computing systems.


Original Abstract Submitted

A computer-implemented method, system and computer program product for reducing register pressure. Loops of a computer program with a number of live variables that exceeds a threshold number, such as the number of available registers with capacity to store data, are identified. Such identified loops may be the to be subject to high register pressure. Upon identifying such loops in the computer program, chains within each identified loop are identified, where each chain includes load and store instructions from the same induction address and where the variable offsets of the load and store instructions are loop invariants. The address expressions for the load and store instructions in the identified chains may then be modified or changed to reuse common variable offsets using an analysis and transformation process. By reusing common variable offsets, there are less variable offsets that need to be stored in the registers thereby mitigating register pressure.