Execution Mode Selection for High-Power Instruction Emulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current processors face performance and power management challenges when executing workloads with sparse high-power instructions, as frequent switching between native and emulated execution modes results in performance losses and latency issues, especially when the number of high-power instructions is low.

Innovation Solution

Implementing an execution mode selection mechanism that dynamically chooses between native and emulated execution modes based on the frequency of high-power instructions within a specified threshold, allowing high-power instructions to be executed natively when abundant and emulated when sparse, thereby maintaining normal power levels with minimal performance impact.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Use of energy by stationary object

If frequent switching between native and emulated execution modes is performed to handle high-power instructions, then power levels are maintained, but performance losses and latency issues occur

Engineering Contradiction:
Improvepower levelsVSAvoidperformance
Core Design Contradiction:
Use of energy by stationary objectVSProductivity

Solution Approach 1:

The system dynamically adjusts execution mode based on the detected frequency of high-power instructions. When the frequency exceeds a threshold, the system switches from emulated to native execution mode, and vice versa. This dynamic adaptation resolves the contradiction by optimizing both power consumption and performance according to actual workload characteristics rather than using a fixed mode.

Inventive Principle:
Principle #15Dynamics

2Productivity

If native execution mode is used for high-power instructions, then performance is improved, but power consumption increases

Engineering Contradiction:
ImproveperformanceVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by stationary object

Solution Approach 1:

The system changes the execution mode parameter based on the frequency of high-power instructions. When frequency is low, emulated mode is used to maintain normal power levels. When frequency exceeds the threshold, native mode is activated to improve performance. This parameter change strategy allows the system to adapt power consumption and performance characteristics to match the actual instruction mix.

Inventive Principle:
Principle #35Parameter changes

3Use of energy by stationary object

If emulated execution mode is used for high-power instructions, then power levels remain normal, but execution speed decreases

Engineering Contradiction:
Improvepower levelsVSAvoidexecution speed
Core Design Contradiction:
Use of energy by stationary objectVSSpeed

Solution Approach 1:

The system dynamically switches between emulated and native execution modes based on real-time detection of high-power instruction frequency. This dynamic approach allows the system to use the faster native mode when performance is critical (high frequency) and the power-saving emulated mode when power consumption is the priority (low frequency), thereby resolving the speed-power tradeoff.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP3314428B1Method and apparatus for execution mode selection
Publication Date: 2024.08.21 INTEL CORP
  • EP3314428B1 patent drawingFigure 1A
  • EP3314428B1 patent drawingFigure 1B
  • EP3314428B1 patent drawingFigure 2A~2C

AI summary

An apparatus and method for performing high performance instruction emulation. For example, one embodiment of the invention includes a processor to process an instruction set including high-power and standard instructions comprising: an analysis module to determine whether a number of high-power instructions within a specified window are above or below a specified threshold; an execution mode selection module to select a native execution of the high-power instructions if the number of high-power instructions are above the specified threshold or to select an emulated execution of the high-powered instructions if the number of high-power instructions are below the specified threshold.