Instruction Burstization and Chaining Balance

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for optimizing energy usage in GPUs and other parallel processing cores fail to efficiently reduce power consumption while maintaining performance, particularly in battery-powered devices, due to limitations in instruction caching and register file access.

Innovation Solution

A method and apparatus that group computer instructions based on register dependencies, using burstization and chaining criteria to create smaller, more efficient compiled instructions, which reduce memory usage and power consumption by optimizing instruction execution and register access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If instructions are optimized for burstization to reduce instruction cache usage, then memory requirements are reduced, but register file access increases leading to higher power consumption

Engineering Contradiction:
Improveinstruction cache usageVSAvoidpower consumption
Core Design Contradiction:
Quantity of substanceVSUse of energy by moving object

Solution Approach 1:

The patent segments instructions into different types (burstable instructions vs. chainable instructions) and applies different optimization strategies to each segment. Burstable instructions are grouped into bundles for cache efficiency, while chainable instructions are optimized for register file access patterns, resolving the contradiction between cache usage and power consumption through selective segmentation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent changes the burst parameter values dynamically based on the instruction type and execution context. By adjusting burst parameters for different instruction bundles and using chainable instruction sequences for operations requiring frequent register access, the system optimizes the balance between instruction cache utilization and register file access frequency, thereby reducing overall power consumption while maintaining cache efficiency.

Inventive Principle:
Principle #35Parameter changes

2Use of energy by moving object

If instructions are optimized for chaining to reduce register file access, then power consumption is reduced, but compiled instruction size increases requiring more memory

Engineering Contradiction:
Improvepower consumptionVSAvoidinstruction cache usage
Core Design Contradiction:
Use of energy by moving objectVSQuantity of substance

Solution Approach 1:

The patent segments the instruction stream into chainable instruction sequences for operations benefiting from register forwarding and burstable instruction bundles for operations suitable for caching. This segmentation allows the system to minimize register file access for chainable instructions while keeping burstable instruction bundles compact, thereby reducing power consumption without excessive increases in overall instruction size.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies chaining partially to only those instruction sequences where it provides significant power savings, rather than universally applying it to all instructions. By selectively chaining only the beneficial sequences and leaving other instructions in compact burstable form, the system achieves power reduction without excessive instruction size expansion.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If burst parameter is increased to maximize burstization efficiency, then instruction cache usage decreases, but hardware resource limitations are exceeded

Engineering Contradiction:
Improveinstruction cache usageVSAvoidhardware resource limitation
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent dynamically adjusts burst parameters based on hardware resource availability and instruction characteristics rather than using fixed maximum values. The burst parameter is optimized for each instruction bundle considering the specific hardware constraints, allowing the system to maximize cache efficiency while staying within hardware resource limitations through adaptive parameter tuning.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes burst parameters based on the specific instruction type, bundle characteristics, and hardware resource state. By adapting burst parameters to match the actual hardware capabilities and instruction requirements, the system achieves efficient cache utilization without exceeding hardware resource limits, resolving the contradiction between cache optimization and hardware constraints.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11327760B2Method and apparatus for balancing binary instruction burstization and chaining
Publication Date: 2022.05.10 HUAWEI TECH CO LTD
  • US11327760B2 patent drawing
  • US11327760B2 patent drawing
  • US11327760B2 patent drawing

AI summary

A method for grouping computer instructions includes receiving a set of computer instructions, grouping the set of computer instructions by register dependencies, identifying a plurality of single-definition-use flow (SDF) bundles based on a burstization criteria and a chaining criteria; and based on the SDF bundles, transforming the set of computer instructions. The transformation may include splitting one of the set of computer instructions and setting a burst parameter for the one of the set of computer instruction. The transformation may include grouping a plurality of the set of computer instructions and replacing a pair of register file accesses with a pair of temporary register accesses.