Hybrid Memory Bandwidth Partitioning for Dynamic Application Adaptation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current memory bandwidth partitioning techniques lack comprehensive characterization and efficiency, particularly in dynamically adapting to application characteristics without offline profiling, leading to suboptimal performance and resource imbalances.
Innovation Solution
A hybrid technique that dynamically partitions memory bandwidth using thread packing, clock modulation, and memory bandwidth allocation, determining optimal state combinations based on application characteristics through profiling and state space exploration, optimizing memory usage and performance without requiring offline data or operating system modifications.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If memory bandwidth partitioning techniques are used to prevent contention among collocated workloads, then memory bandwidth utilization is improved, but system complexity increases due to the need to manage multiple partitioning techniques
Solution Approach 1:
The patent combines multiple memory bandwidth partitioning techniques (thread packing, clock modulation, and memory bandwidth allocation) into a unified hybrid framework that manages them collectively through a single system, reducing overall system complexity while maintaining the benefits of each individual technique
Solution Approach 2:
The hybrid memory bandwidth partitioning system is designed to perform multiple functions simultaneously: it manages thread packing, clock modulation, and memory bandwidth allocation through a single universal framework, eliminating the need for separate management systems for each technique
2Adaptability or versatility
If dynamic memory bandwidth partitioning is implemented without offline profiling, then adaptability to application characteristics is improved, but measurement precision deteriorates due to lack of pre-characterized data
Solution Approach 1:
The system performs self-profiling by automatically characterizing application memory access patterns during runtime without requiring external offline profiling tools, enabling dynamic adaptation while maintaining measurement precision through built-in monitoring and analysis capabilities
Solution Approach 2:
The hybrid partitioning system continuously monitors memory access patterns and uses feedback from actual application behavior to dynamically adjust partitioning parameters, achieving both adaptability and measurement precision through real-time characterization rather than relying on offline profiling data
3Productivity
If hybrid technique with multiple partitioning methods is used, then memory bandwidth partitioning efficiency is improved, but device complexity increases due to exploring state space
Solution Approach 1:
The patent segments the complex state space exploration into manageable components by breaking down the hybrid partitioning problem into distinct technique selections (thread packing, clock modulation, memory bandwidth allocation) that can be optimized independently and then combined, reducing the complexity of managing the overall system
Data Source
AI summary
A method and apparatus for partitioning memory bandwidth of a system determines state combinations of techniques for partitioning the memory bandwidth of the system based on at least one application program executed on cores of the system, determines candidate state combinations corresponding to characteristics of the application program, among the state combinations, by profiling the application program based on the state combinations, selects a final state combination for the application program by exploring a state space of the system corresponding to the candidate state combinations, and partitions the memory bandwidth of the system based on the final state combination.


