Source-Side Memory Request Injection Rate Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems with multiple nodes and a shared resource underutilize network and memory bandwidth due to conservative mechanisms for injecting memory requests, which assume bank conflicts and do not differentiate between efficient and inefficient requests, leading to underutilization or congestion.
Innovation Solution
A method and apparatus that adjust the injection rate of memory requests based on efficiency indicators, such as target addresses, request types, and timestamps, to dynamically optimize the injection rate by distinguishing between efficient and inefficient requests, thereby improving network and memory bandwidth utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If conservative injection policies are used to maintain quality-of-service constraints, then reliability is improved, but network bandwidth utilization deteriorates
Solution Approach 1:
The patent applies local quality by differentiating injection policies based on the specific characteristics of memory requests. Instead of using a uniform conservative policy for all requests, the system analyzes individual request properties (such as address patterns, request types, and timing) to determine whether each request is likely to be efficient or inefficient. This allows the system to apply aggressive injection policies to efficient requests while maintaining conservative policies for inefficient requests, thereby improving overall network bandwidth utilization without compromising quality-of-service constraints.
Solution Approach 2:
The patent implements parameter changes by dynamically adjusting the injection rate based on observed memory request efficiency metrics. The system monitors parameters such as row buffer hit rates, bank conflict frequencies, and request timing patterns, then uses these metrics to adaptively modify injection rates. This dynamic parameter adjustment allows the system to transition between conservative and aggressive injection policies based on real-time system conditions, resolving the contradiction between reliability and productivity.
2Productivity
If aggressive injection policies are used to maximize network bandwidth utilization, then productivity is improved, but network congestion increases
Solution Approach 1:
The patent applies preliminary action by analyzing and classifying memory requests before they are injected into the network. The system evaluates request characteristics (address patterns, types, timing) in advance to predict which requests are likely to be efficient and which may cause bank conflicts or congestion. By pre-screening requests and adjusting injection rates based on this preliminary analysis, the system can aggressively inject efficient requests while filtering out or throttling requests that are likely to cause congestion, thus maximizing productivity without introducing harmful congestion effects.
3Ease of operation
If uniform injection rates are applied to all memory requests, then ease of operation is improved, but memory service efficiency deteriorates
Solution Approach 1:
The patent implements dynamics by transforming the static, uniform injection rate policy into a dynamic, adaptive policy. The system continuously monitors memory request patterns, row buffer hit rates, and bank conflict frequencies, then adjusts injection rates in real-time based on these observations. This dynamic approach allows the injection policy to automatically adapt to changing workloads and memory system states, improving memory service efficiency without requiring complex manual configuration or intervention, thus maintaining ease of operation while achieving superior productivity.
Data Source
AI summary
A technique for source-side memory request network admission control includes adjusting, by a first node, a rate of injection of memory requests by the first node into a network coupled to a memory system. The adjusting is based on an injection policy for the first node and memory request efficiency indicators. The method may include injecting memory requests by the first node into the network coupled to the memory system. The injecting has the rate of injection. The technique includes adjusting the rate of injection by the first node. The first node adjusts the rate of injection according to an injection policy for the first node and memory request efficiency indicators. The injection policy may be based on an injection rate limit for the first node. The injection policy for the first node may be based on an injection rate limit per memory channel for the first node. The technique may include determining the memory request efficiency indicators based on comparisons of target addresses of the memory requests to addresses of recent memory requests of the first node.


