Hierarchical Read-Combining Cache Memory for Multicore Bandwidth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In multicore processing, multiple processing cores often request the same data from memory, leading to insufficient bandwidth and inefficient cache memory use due to the inability to rapidly fulfill all data requests simultaneously.

Innovation Solution

Implementing hierarchical read-combining cache memory, where a memory controller holds data requests for a period to aggregate multiple requests for the same data, reducing bandwidth demands and increasing cache memory efficiency by combining requests into a single read request.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If multiple processing cores simultaneously request the same data from memory, then data retrieval speed increases, but bandwidth requirements exceed available capacity and cache memory efficiency decreases

Engineering Contradiction:
Improvedata retrieval speedVSAvoidbandwidth capacity
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements read-combining logic that merges multiple simultaneous read requests for the same data into a single memory transaction. When multiple processing cores request identical data concurrently, the system combines these requests and fetches the data once from memory, then distributes it to all requesting cores. This directly resolves the contradiction by maintaining fast data retrieval speed while reducing bandwidth consumption through request consolidation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary actions by holding read requests in a buffer before sending them to memory. The read-combining logic examines pending requests and aggregates them into consolidated transactions, preparing multiple requests in advance so that when memory is accessed, the data can be served efficiently to multiple cores simultaneously. This preliminary aggregation reduces the number of separate bandwidth transactions required.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If the memory controller processes each data request immediately, then response time is minimized, but cache memory is not utilized efficiently and bandwidth is wasted

Engineering Contradiction:
Improveresponse timeVSAvoidcache memory efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The memory controller performs preliminary examination of read requests before executing them. The read-combining logic analyzes incoming requests and identifies opportunities to aggregate multiple requests for the same data into single memory transactions. This preliminary processing maintains fast response times while significantly improving cache memory efficiency by preventing redundant reads and maximizing utilization of the memory subsystem.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where the memory controller monitors and tracks read requests patterns. When multiple cores request the same data concurrently, the feedback loop detects this pattern and triggers read-combining logic to aggregate the requests. This feedback-driven approach ensures that cache memory is efficiently utilized while maintaining responsive data retrieval, resolving the contradiction between response time and productivity.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS8180963B2Hierarchical read-combining local memories
Publication Date: 2012.05.15 EMPIRE TECH DEV LLC
  • US8180963B2 patent drawing
  • US8180963B2 patent drawing
  • US8180963B2 patent drawing

AI summary

The present disclosure relates to a system for hierarchical read-combining memory having a multicore processor operably coupled to a memory controller. The memory controller is configured for receiving a plurality of requests for data from one or more processing cores of the multicore processor, selectively holding a request for data from the plurality of requests for an undetermined or indefinite amount of time, and selectively combining a plurality of requests for the same data into a single read-combined data request. The present disclosure further relates to a method for hierarchical read-combining data requests of a multicore processor and a computer accessible medium having stored thereon computer executable instructions for performing a procedure for hierarchical read-combining data requests of a multicore processor.