Memory Indirection for Latency Reduction in Data Centers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Memory operations in computing data centers are latency-bound and suffer from heavy serialization due to dependencies in memory request flows, hindering performance in scaled-out architectures like databases that rely on pointer resolutions and prefetching.

Innovation Solution

Implementing memory indirection operations that allow processing cores to issue requests with addresses and offsets, enabling multiple iterations to determine actual memory locations for read/write operations, thereby reducing latency and serialization by allowing subsequent processing steps to proceed independently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional memory operations are used with sequential processing, then correctness is maintained, but latency increases and productivity decreases

Engineering Contradiction:
Improvememory operation latencyVSAvoidmemory operation throughput
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system performs preliminary actions by issuing multiple memory requests with different offsets before the base address is fully resolved. The memory controller pre-processes these requests by calculating actual addresses using the formula: actual_address = base_address + offset, allowing subsequent processing steps to proceed independently without waiting for sequential address resolution.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The memory request flow is segmented into independent parallel streams, where multiple requests with different offsets are processed simultaneously. Each request is treated as an independent unit that can be processed in parallel by the memory controller, breaking the serialization bottleneck in traditional sequential processing.

Inventive Principle:
Principle #1Segmentation

2Speed

If memory requests are processed sequentially to maintain correctness, then reliability is maintained, but speed decreases

Engineering Contradiction:
Improvememory operation speedVSAvoidmemory address resolution correctness
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The memory controller implements feedback mechanisms to track the resolution status of base addresses and ensure correctness. The system monitors address resolution states and dynamically adjusts processing, ensuring that memory operations are performed with correct addresses while maintaining high throughput through parallel processing of independent requests.

Inventive Principle:
Principle #23Feedback

Data Source

PatentEP3462321B1Techniques to perform memory indirection for memory architectures
Publication Date: 2020.08.19 INTEL CORP
  • EP3462321B1 patent drawingFigure 1A
  • EP3462321B1 patent drawingFigure 1B
  • EP3462321B1 patent drawingFigure 2

AI summary

Various embodiments are generally directed to an apparatus, method and other techniques to receive a request from a core, the request associated with a memory operation to read or write data, and the request comprising a first address and an offset, the first address to identify a memory location of a memory. Embodiments include performing a first iteration of a memory indirection operation comprising reading the memory at the memory location to determine a second address based on the first address, and determining a memory resource based on the second address and the offset, the memory resource to perform the memory operation for the computing resource or perform a second iteration of the memory indirection operation.