Dynamic GPU Frequency Adjustment via Memory-Compute Ratio
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data processing systems face inefficiencies in energy consumption due to static GPU frequency settings, which do not account for varying workloads, leading to increased power usage without performance improvements for memory-bound workloads.
Innovation Solution
Implementing a method to dynamically adjust GPU frequency and voltage based on a predetermined memory/compute ratio, where a runtime manager sets the GPU to a low frequency and low voltage for memory-bound workloads and high frequency and high voltage for compute-bound workloads, using a frequency mapping table to optimize energy efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If GPU frequency is increased to improve performance, then compute-bound workload performance is improved, but energy consumption increases significantly
Solution Approach 1:
The patent implements dynamic frequency adjustment by monitoring workload characteristics in real-time and adjusting GPU frequency accordingly. The system transitions from static frequency settings to dynamic frequency scaling based on whether the current workload is compute-bound or memory-bound, allowing the GPU to operate at optimal frequency for each workload type.
Solution Approach 2:
The patent changes the operating parameters (frequency and voltage) of the GPU based on workload classification. By identifying whether a workload is compute-bound or memory-bound, the system adjusts frequency and voltage parameters to match the actual computational needs, reducing energy consumption for memory-bound workloads while maintaining performance for compute-bound workloads.
2Productivity
If GPU frequency is increased for memory-bound workloads, then memory access bandwidth is met, but further frequency increases yield little performance improvement while significantly increasing energy consumption
Solution Approach 1:
The patent applies partial action by adjusting frequency to the appropriate level needed for memory-bound workloads rather than continuously maximizing it. The system identifies when memory access bandwidth is the limiting factor and stops increasing frequency beyond that point, avoiding excessive frequency increases that would consume energy without providing performance benefits.
Solution Approach 2:
The system dynamically adjusts frequency based on the specific characteristics of memory-bound workloads, transitioning from static high-frequency operation to dynamic frequency scaling that matches the actual performance requirements of memory-bound tasks.
3Productivity
If static high frequency is used to ensure performance for all workloads, then compute-bound workload performance is maintained, but energy consumption increases for memory-bound workloads
Solution Approach 1:
The patent changes operating parameters dynamically based on workload type. Instead of using a static high frequency setting for all workloads, the system adjusts frequency and voltage parameters according to whether the workload is compute-bound or memory-bound, optimizing the balance between performance and energy consumption.
Solution Approach 2:
The system performs self-service by automatically monitoring workload characteristics and adjusting its own operating parameters without external intervention. The GPU frequency management system identifies workload types and autonomously adjusts frequency and voltage to optimize energy efficiency while maintaining necessary performance.
Data Source
AI summary
Disclosed methods support dynamic adjustment of graphics processing unit (GPU) frequency. According to one embodiment, a program comprises workload to execute, at least in part, on a GPU of a data processing system. A predetermined memory/compute ratio for the program is automatically retrieved, in response to the program being called for execution. The memory/compute ratio represents a ratio of memory accesses within the program, relative to compute operations within the program. In addition, a frequency of the GPU is automatically adjusted, based on the predetermined memory/compute ratio for the program. For instance, the GPU may be set to a relatively low frequency if the predetermined memory/compute ratio is relatively high, or to a relatively high frequency if the predetermined ratio is relatively low. After the frequency of the GPU is automatically adjusted, the program may execute, at least in part, on the GPU. Other embodiments are described and claimed.


