Store Coalescing Buffer Scheduling for Memory Ordering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current information processing systems face challenges in efficiently storing and executing data and instructions, leading to suboptimal performance and higher power consumption due to limitations in memory access and ordering checks.

Innovation Solution

The implementation of a processor core with a multi-level cache hierarchy and a memory execution unit that includes sliced L1 memory, load/store units, and a store coalescing pipeline to manage memory operations efficiently, ensuring correct ordering and reduced power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a processor executes store operations with strict memory ordering rules, then data consistency and correctness are improved, but execution performance and power consumption deteriorate due to increased memory ordering checks

Engineering Contradiction:
Improvedata consistencyVSAvoidexecution performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments store operations into different categories (e.g., store buffers, store queues) and applies different ordering rules to each segment. This allows the system to maintain data consistency for critical operations while allowing reordering for less critical operations, thereby improving overall execution performance without sacrificing reliability where needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic memory ordering rules that can change based on runtime conditions such as cache state, memory access patterns, and hardware status. The system can switch between strict ordering modes and relaxed ordering modes dynamically, optimizing the balance between data consistency and execution performance for each specific execution context.

Inventive Principle:
Principle #15Dynamics

2Reliability

If memory ordering rules are strictly enforced, then data correctness is improved, but power consumption increases due to frequent memory ordering checks

Engineering Contradiction:
Improvedata correctnessVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent applies different memory ordering enforcement strategies to different locations and types of memory operations. Critical memory operations that require strict ordering are checked thoroughly, while less critical operations use lighter-weight verification mechanisms. This local differentiation reduces the overall power consumption of memory ordering checks while maintaining data correctness where it matters most.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent employs hardware mechanisms that automatically enforce memory ordering rules without requiring continuous software intervention or explicit checking. Techniques such as hardware-ordered store buffers and automatic cache coherence protocols allow the system to maintain data correctness self-service style, reducing the power consumption associated with active memory ordering verification.

Inventive Principle:
Principle #25Self-service

3Speed

If store operations are merged and scheduled efficiently, then execution speed is improved, but device complexity increases due to additional scheduling logic

Engineering Contradiction:
Improveexecution speedVSAvoidscheduling logic complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent merges multiple store operation queues and buffers into unified structures that can be managed by a single scheduling logic. By combining store buffers, store queues, and cache coherence messaging into integrated components, the system achieves efficient store operation scheduling without proportionally increasing the complexity of the scheduling logic, as the merged structures share common control mechanisms.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS20240037036A1Scheduling merged store operations in compliance with store ordering rules
Publication Date: 2024.02.01 INTEL CORP
  • US20240037036A1 patent drawing
  • US20240037036A1 patent drawing
  • US20240037036A1 patent drawing

AI summary

Techniques for scheduling merged store operations are described. In an embodiment, an apparatus includes a data cache; a fill buffer; a store buffer to store first information associated with a first retired store operation and second information associated with a second retired store operation; a store coalescing buffer (SCB) to receive the first information from the store buffer, to store the first information in an SCB entry, to merge the second information from the store buffer into the entry, and to provide data associated with the entry for a write to the data cache or the fill buffer; and a global store scheduler (GSS) to schedule the write relative to an other write from an other SCB in compliance with one or more store ordering rules.