DYNAMIC CONTROL OF SIMDs
First Claim
1. A method improve performance in a computing system, comprising:
- determining a required power level for a processing application; and
dynamically enabling and disabling one or more single instruction multiple data units (SIMDs) in a shader complex based on said power level.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods to improve performance in a graphics processing unit are described herein. Embodiments achieve power saving in a graphics processing unit by dynamically activating/deactivating individual SIMDs in a shader complex that comprises multiple SIMD units. On-the-fly dynamic disabling and enabling of individual SIMDs provides flexibility in achieving a required performance and power level for a given processing application. Embodiments of the invention also achieve dynamic medium grain clock gating of SIMDs in a shader complex. Embodiments reduce switching power by shutting down clock trees to unused logic by providing a clock on demand mechanism. In this way, embodiments enhance clock gating to save more switching power for the duration of time when SIMDs are idle (or assigned no work). Embodiments can also save leakage power by power gating SIMDs for a duration when SIMDs are idle for an extended period of time.
-
Citations
20 Claims
-
1. A method improve performance in a computing system, comprising:
-
determining a required power level for a processing application; and dynamically enabling and disabling one or more single instruction multiple data units (SIMDs) in a shader complex based on said power level. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system to improve performance in a computing system, comprising:
-
a first module configured to determine a power level for a processing application; and a second module configured to dynamically enable and disable one or more single instruction multiple data units (SIMDs) in a shader complex based on said power level. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A computer-readable medium that stores instructions adapted to be executed by a
processor to: -
determinine a required power level for a processing application; and dynamically enable and disable one or more single instruction multiple data units (SIMDs) in a shader complex based on said power level. - View Dependent Claims (18, 19, 20)
-
Specification