Page Stream Sorter Dynamic Binning Memory Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The disparity between increasing processor speed and stagnant memory access times creates a bottleneck in computer system performance, limiting effective memory bandwidth due to high activate and precharge latencies in DRAM banks.

Innovation Solution

Implementing a page stream sorter that dynamically bins memory access requests to reorder and buffer them, allowing efficient access by keeping multiple banks open and minimizing page faults and bank-management penalties.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If processor speed is increased, then computing performance is improved, but memory access bottleneck worsens due to stagnant memory access times

Engineering Contradiction:
Improveprocessor speedVSAvoidmemory bandwidth
Core Design Contradiction:
SpeedVSProductivity

Solution Approach 1:

The patent applies preliminary action by opening memory banks in advance before data transfer is needed. The system predicts which banks will be needed soon and activates them proactively, so that when data transfer occurs, the banks are already open and ready, eliminating latency penalties.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by dynamically adjusting bank opening and closing decisions based on real-time access patterns and workload characteristics. The system continuously adapts its memory management strategy to match changing computational demands, optimizing bandwidth utilization under varying conditions.

Inventive Principle:
Principle #15Dynamics

2Ease of operation

If bank opening and closing operations are performed, then data access is enabled, but activate and precharge latencies increase reducing effective bandwidth

Engineering Contradiction:
Improvedata access capabilityVSAvoidactivate and precharge latencies
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system performs bank activation in advance of actual data access needs by analyzing access patterns and proactively opening banks that are likely to be needed. This preliminary action ensures banks are ready before data transfer begins, eliminating the latency penalty that would otherwise occur at the moment of access.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuity of useful action by keeping multiple banks open simultaneously and overlapping data transfers with bank management operations. Instead of closing banks immediately after use, the system extends their open state when beneficial, allowing continuous data flow without interruption from activate/precharge cycles.

Inventive Principle:
Principle #20Continuity of useful action

3Productivity

If multiple banks are kept open to hide latencies, then memory bandwidth is improved, but memory controller complexity increases

Engineering Contradiction:
Improvememory bandwidthVSAvoidmemory controller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the memory system into multiple independent banks that can be managed separately. Each bank operates independently with its own state, allowing the controller to manage them in manageable units rather than as a monolithic system, reducing the complexity of tracking and managing overall memory state.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements self-service by using simple, deterministic rules for bank management that require minimal complex control logic. The bank opening/closing decisions are made based on straightforward access pattern analysis and fixed policies, allowing the memory subsystem to largely manage itself without requiring complex adaptive control algorithms.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7664907B1Page stream sorter with dynamic binning
Publication Date: 2010.02.16 NVIDIA CORP
  • US7664907B1 patent drawing
  • US7664907B1 patent drawing
  • US7664907B1 patent drawing

AI summary

Techniques and systems for dynamic binning, in which a stream of requests to access a memory is sorted into a reordered stream that enables efficient access of the memory. A page stream sorter can group requests to access a memory in a manner that results in some “locality” in the stream of requests issued from the page stream sorter to memory, such that as few pages as possible in the same bank are accessed and/or a number of page switches needed is minimized.