Dynamic Memory Interface Bus Load Balancing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern graphics processing systems face performance limitations due to bus bandwidth constraints, particularly when fluctuating demands for data access lead to saturation of local and system memory buses, causing delays in rendering processes.
Innovation Solution
The system dynamically mirrors data blocks across multiple storage locations and selects the optimal source location for read operations based on real-time bus activity levels, ensuring efficient use of available bandwidth by directing requests to the least loaded bus.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If data is stored in local memory only, then data access speed is improved, but memory capacity is limited
Solution Approach 1:
The memory system is segmented into local memory and system memory, with data blocks selectively distributed between them. The memory interface unit segments data access requests and directs them to appropriate memory locations based on real-time bus activity, allowing the system to combine the high-speed access of local memory with the large capacity of system memory.
Solution Approach 2:
The patent adds a temporal dimension to memory access by dynamically selecting between local and system memory based on real-time bus activity levels. Instead of a static memory hierarchy, the system evaluates current bus conditions and switches memory sources accordingly, creating a time-varying access path that optimizes both speed and capacity utilization.
2Quantity of substance
If data is stored in system memory only, then memory capacity is improved, but data access speed deteriorates due to bus bandwidth limitations
Solution Approach 1:
The memory interface unit implements dynamic selection between local and system memory based on real-time bus activity monitoring. The system continuously evaluates current bus utilization and adapts its memory access pattern accordingly, switching between static memory locations as conditions change, thereby optimizing data access speed while maintaining access to large-capacity system memory.
3Reliability
If data is mirrored in multiple locations, then data access reliability is improved, but device complexity increases
Solution Approach 1:
The memory interface unit autonomously monitors bus activity levels and makes real-time decisions about which mirrored data location to access, without requiring external control or complex coordination protocols. Each memory controller independently evaluates current conditions and selects the optimal data source, simplifying the overall system architecture while maintaining high reliability through automatic failover and load balancing.
Data Source
AI summary
Devices and methods provide data from multiple storage locations to a processor. A data block containing data required by a processor is stored in two or more locations, e.g., in a local memory and a system memory, both of which are accessible to the processor's memory interface. The memory interface directs each read request for mirrored data to one or another of the mirror locations. Selection of a mirror location to be read is based on substantially real-time information about which mirror location is best able to handle the request. For instance, the selection of a mirror location to access can be based at least in part on information about the level of activity on various buses that connect the processor to the mirror locations.


