Memory Controller Pre-loader for Latency Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer systems face performance and flexibility challenges as data grows exponentially, leading to increased latency and reduced efficiency due to the inability to keep all data in a single memory tier, with conventional protocols only working at a single line granularity, resulting in negative implications for latencies and fabric utilization.

Innovation Solution

A memory controller with monitoring logic and a pre-loader that determines access patterns and pre-loads a subset of memory into a closer tier based on access rates and configuration elements, allowing for aggressive pre-loading and reducing latency by bringing multiple cache lines into a near-memory tier.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If data is stored in remote memory tiers to accommodate exponential data growth, then storage capacity increases, but latency increases and CPU efficiency drops due to frequent data stalls

Engineering Contradiction:
Improvestorage capacityVSAvoidlatency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The pre-loader proactively loads data from remote memory tiers into local caches before the CPU actually needs it, based on predicted access patterns. This preliminary action ensures data is already in fast memory when needed, eliminating latency stalls while maintaining large remote storage capacity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system introduces an intermediate caching layer between remote memory and CPU. This intermediary cache tier acts as a buffer that holds frequently accessed data, reducing direct access to slow remote memory and improving CPU efficiency without reducing overall storage capacity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If conventional protocols read data at single line granularity from remote memory, then data access follows standard protocols, but fabric utilization decreases and latency increases due to multiple sequential reads

Engineering Contradiction:
Improveprotocol compatibilityVSAvoidfabric utilization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The pre-loader merges multiple individual cache line read operations into a single bulk load operation. By combining adjacent cache lines into larger transfer units, the system maintains protocol compatibility while significantly improving fabric utilization and reducing the number of transactions needed

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system transitions from single-line granularity to multi-line block granularity in the vertical dimension of data transfer. This dimensional change allows larger data chunks to be moved in parallel, improving fabric utilization while still supporting standard access protocols at the line level

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Loss of time

If aggressive pre-loading is implemented to reduce latency, then data availability improves, but memory bandwidth consumption increases and may interfere with other workloads

Engineering Contradiction:
ImprovelatencyVSAvoidmemory bandwidth consumption
Core Design Contradiction:
Loss of timeVSUse of energy by moving object

Solution Approach 1:

The pre-loader implements partial pre-loading by selectively loading only the portion of data that is predicted to be needed soon, rather than aggressively pre-loading entire datasets. This balanced approach reduces latency for critical data while limiting bandwidth consumption to acceptable levels that don't interfere with other workloads

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically adjusts pre-loading aggressiveness based on current system conditions, workload characteristics, and available bandwidth. This dynamic adaptation allows the system to optimize latency reduction while preventing excessive bandwidth consumption that would harm other operations

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10713173B2Memory controller with pre-loader
Publication Date: 2020.07.14 INTEL CORP
  • US10713173B2 patent drawing
  • US10713173B2 patent drawing
  • US10713173B2 patent drawing

AI summary

Embodiments of the present disclosure relate to a controller that includes a monitor to determine an access pattern for a range of memory of a first computer memory device, and a pre-loader to pre-load a second computer memory device with a copy of a subset of the range of memory based at least in part on the access pattern, wherein the subset includes a plurality of cache lines. In some embodiments, the controller includes a specifier and the monitor determines the access pattern based at least in part on one or more configuration elements in the specifier. Other embodiments may be described and/or claimed.