IP Library › Granted Patent US 12,007,828
Granted Patent B2
US 12,007,828 · App. 17/628,886 · Granted Jun 11, 2024

Apparatus and method to improve switchable graphics system performance and energy consumption based applications and real-time system power/thermal budgets

Inventors: Srikrishnan Venkataraman (Bangalore, IN); Mallari Hanchate (Bangalore, IN); Sayan Lahiri (Hillsboro, OR); Vijayakumar Dibbad (Bangalore, IN)
Assignee: Intel Corporation
G06F1/3293G06F9/5094G06T1/20
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,007,828
App. No.
17/628,886
Granted
Jun 11, 2024
Kind
B2
Abstract

A switchable graphics management scheme, which uses performance/watt information of both the iGPU/dGPU along with system real-time resources like SoC (system-on-chip) thermal, system power budgets to decide on the right GPU for rendering tasks. The scheme uses this threshold power point information along with system resources to determine the optimized GPU for tasks rendering for all applications and use cases. As such, the scheme of adapts to each system design based on capabilities of that specific system.

Claims (39)

1. A graphics processor, comprising:

an integrated graphics processing unit (iGPU);

a discrete graphics processing unit (dGPU); and

logic to determine a power consumption of the iGPU when the iGPU starts processing data of an application, and when the power consumption crosses above a threshold, determine whether to request that an operating system or driver selects the dGPU in place of the iGPU to execute the application; wherein:

the power consumption is an exponentially weighted moving average power consumption of the iGPU; and

the threshold is set such that a performance of the iGPU is equal to a performance of the dGPU until the power consumption of the iGPU crosses above the threshold, and a performance of the iGPU falls below a performance of the dGPU when the power consumption of the iGPU crosses above the threshold.

2. The graphics processor of claim 1 , wherein to determine the power consumption, the logic is to:

receive telemetry information from a voltage regulator; and

determine an average power consumption of the graphics processor via current power data and previous power data received by the telemetry information.

3. The graphics processor of claim 1 , wherein the iGPU has a duty cycle based on a number of times the power consumption crosses the threshold, and the logic is to determine whether to request that the operating system or driver selects the dGPU in place of the iGPU based on the duty cycle.

4. The graphics processor of claim 1 , wherein the logic is to continue to allow the iGPU to execute the application if the logic determines that a power source is not capable of supporting a power consumption of the dGPU when the power consumption of the iGPU crosses above the threshold.

5. The graphics processor of claim 1 , wherein the logic is to continue to allow the iGPU to execute the application if the logic determines that a processor core of the graphics processor is thermally constrained when the power consumption of the iGPU crosses above the threshold.

6. The graphics processor of claim 1 , wherein prior to the logic determining the power consumption of the iGPU, the operating system or driver is to select the iGPU over the dGPU to execute the application.

7. The graphics processor of claim 1 , wherein the logic comprises a graphics power management algorithm performed by software, hardware, or a combination thereof.

8. The graphics processor of claim 1 , wherein the logic is to continue to allow the iGPU to execute the application if the logic determines that a processor core of the graphics processor is being throttled when the power consumption of the iGPU crosses above the threshold.

9. The graphics processor of claim 1 , wherein the threshold is set such that a performance of the iGPU is less than a performance of the dGPU when the power consumption of the iGPU exceeds the threshold.

10. A non-transitory machine-readable media having instructions stored thereon that when executed cause a graphics processing unit (GPU) to perform a method comprising:

stressing an integrated graphics processing unit (iGPU) and a discrete graphics processing unit (dGPU) with various applications;

determining a performance of the iGPU, a performance of the dGPU, and a power consumption of the iGPU during the stressing for each application of the various applications;

determining one or more applications of the various applications in which the performance of the iGPU decreases relative to the performance of the iGPU in other applications of the various applications while a performance of the dGPU does not decrease relative to the performance of the dGPU in the other applications of the various applications;

determining a threshold power point (TPP) based on the power consumption of the iGPU when the performance of the iGPU decreases while the performance of the dGPU does not decrease; and

passing the TPP to a graphics power management algorithm.

11. The non-transitory machine-readable media of claim 10 , wherein the method performed further comprises determining the power consumption of the iGPU as an average power consumption based on current power data and previous power data.

12. The non-transitory machine-readable media of claim 10 , wherein the method performed further comprises determining the power consumption of the iGPU as an exponentially weighted moving average power consumption.

13. The non-transitory machine-readable media of claim 10 , wherein the graphics power management algorithm is configured to select the iGPU to execute a rendering task if the power consumption of the iGPU is less than the TPP.

14. The non-transitory machine-readable media of claim 10 , wherein the TPP is based on a duty cycle of the iGPU, and the duty cycle is based on a number of times the power consumption of the iGPU crosses the TPP.

15. The non-transitory machine-readable media of claim 10 , wherein the graphics power management algorithm is configured to select the iGPU or dGPU to execute a rendering task based on the TPP and a comparison of the power consumption of the iGPU to the TPP.

16. The non-transitory machine-readable media of claim 10 , wherein the TPP is passed to the graphics power management algorithm via a Basic Input/output System (BIOS) or an embedded controller.

17. A system, comprising:

a memory;

a general purpose processor coupled to the memory; and

a graphics processor coupled to the general purpose processor, wherein the graphics processor comprises:

an integrated graphics processing unit (iGPU);

a discrete graphics processing unit (dGPU); and

logic to determine which one of the iGPU or dGPU is to execute a rendering task based on a comparison of a power consumption of the iGPU to a threshold, wherein the threshold is set such that a performance of the iGPU is equal to a performance of the dGPU until the power consumption of the iGPU crosses above the threshold, and the performance of the iGPU falls below a performance of the dGPU when the power consumption of the iGPU crosses above the threshold, and the logic is to determine an exponentially weighted moving average of the power consumption of the iGPU.

18. The system of claim 17 , wherein the logic is to receive telemetry information regarding the power consumption of the iGPU before the logic is to determine which one of the iGPU or dGPU is to execute the rendering task.

19. The system of claim 18 , wherein the logic is to determine the exponentially weighted moving average of the power consumption of the iGPU via current power data and previous power data received by the telemetry information.

20. The system of claim 19 , wherein the logic is to determine whether the average power consumption is greater than the threshold, and if the average power consumption is greater than the threshold, the logic is to select the dGPU to execute the rendering task, and if the average power consumption is less than the threshold, the logic is to select the iGPU to execute the rendering task.

21. The system of claim 17 , wherein the threshold is set such that the performance of the iGPU falls below the performance of the dGPU when the power consumption of the iGPU crosses above the threshold and the performance of the dGPU does not decrease.

Continuity (2)
Provisional Application 62889511 · Aug 20, 2019
Related Publication 20220253124A1 · Aug 11, 2022
Cited By (1)
US 12,547,227