Out-of-Order Processor Load Replay Reduction via Reservation Station Stalling

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In out-of-order processors, the power wastage due to frequent load replays from off-core resources, such as level 2 caches and fuse arrays, is significant, leading to increased power utilization and thermal issues, despite minimal performance impact, as current acceleration techniques assume operands will be available within a specified number of clock cycles, resulting in unnecessary replay of younger instructions.

Innovation Solution

The implementation of a mechanism that includes reservation stations to detect specified load micro instructions directed to off-core resources, stalling younger dependent micro instructions until the load micro instruction retrieves the operand, thereby reducing replays and conserving power by utilizing power management modes during stalls.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If acceleration techniques are used to dispatch younger instructions assuming operands will be available within a specified number of clock cycles, then throughput is improved, but power consumption increases due to frequent replays from off-core resources

Engineering Contradiction:
ImprovethroughputVSAvoidpower consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent applies preliminary action by detecting load micro instructions destined for off-core resources before they are executed, and proactively stalling younger dependent instructions in advance. This prevents the need for replay by ensuring operands are available before dependent instructions are dispatched, thereby avoiding wasted power consumption from executing and then replaying instructions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by using detection logic that monitors load micro instructions and provides information about off-core resource access requirements. This feedback mechanism enables the system to adjust instruction dispatch dynamically, stalling younger instructions when off-core access is detected, thus preventing power-wasting replays while maintaining throughput.

Inventive Principle:
Principle #23Feedback

2Loss of energy

If younger instructions are stalled until operands are available from off-core resources, then replay frequency is reduced, but execution latency increases

Engineering Contradiction:
Improvereplay frequencyVSAvoidexecution latency
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

By detecting off-core load instructions in advance and stalling younger dependent instructions before they are dispatched, the system eliminates the need for replay entirely. This preliminary action approach ensures that when younger instructions are eventually executed, their operands are already available, avoiding both replay and unnecessary stalling after dispatch.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary detection logic mechanism that sits between the instruction dispatch and execution stages. This intermediary detects off-core resource access requirements and mediates the dispatch of younger instructions by stalling them appropriately, thereby balancing replay reduction with execution latency without requiring extreme delays.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of energy

If detection logic is added to identify load micro instructions accessing off-core resources, then replay is reduced, but device complexity increases

Engineering Contradiction:
Improvepower savingsVSAvoiddetection logic complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies local quality by implementing detection logic that focuses specifically on identifying load micro instructions accessing off-core resources, rather than analyzing all instructions comprehensively. This targeted approach uses localized detection criteria (such as specific memory address ranges or instruction types) to identify off-core accesses with minimal overhead, reducing the complexity burden while achieving effective replay prevention.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent utilizes parameter changes by detecting specific characteristics of off-core load instructions, such as memory address ranges, cache hit/miss status, or instruction type markers. By monitoring these parameters rather than performing complex analysis, the detection logic achieves accurate identification of off-core accesses with minimal complexity increase, enabling power savings without substantial structural overhead.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10133580B2Apparatus and method to preclude load replays dependent on write combining memory space access in an out-of-order processor
Publication Date: 2018.11.20 VIA ALLIANCE SEMICON CO LTD
  • US10133580B2 patent drawing
  • US10133580B2 patent drawing
  • US10133580B2 patent drawing

AI summary

An apparatus including first and second reservation stations. The first reservation station dispatches a load micro instruction, and indicates on a hold bus if the load micro instruction is a specified load micro instruction directed to retrieve an operand from a prescribed resource other than on-core cache memory. The second reservation station is coupled to the hold bus, and dispatches one or more younger micro instructions therein that depend on the load micro instruction for execution after a number of clock cycles following dispatch of the first load micro instruction, and if it is indicated on the hold bus that the load micro instruction is the specified load micro instruction, the second reservation station is configured to stall dispatch of the one or more younger micro instructions until the load micro instruction has retrieved the operand. The plurality of prescribed resources includes system memory, coupled to the out-of-order processor via a memory bus, where the specified load micro instruction is known to resolve to write combining memory space in the system memory.