IP Library Granted Patent US 11,435,808
Granted Patent B2
US 11,435,808 · App. 17/023,103 · Granted Sep 6, 2022

Adaptive CPU power limit tuning

Inventors: Farzad Khosrowpour (Pflugerville, TX); Mitch Anthony Markow (Hutto, TX)
Assignee: Dell Products L.P.
G06F1/3234G06F1/3206G06N20/00
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 11,435,808
App. No.
17/023,103
Granted
Sep 6, 2022
Kind
B2
Abstract

Adaptive CPU power limit tuning can be performed. A mode detector can employ a machine learning model to detect a mode of operation on a computing device. As the computing device operates in the various modes, a mode boundary tuner of the mode detector can evaluate performance measurements to determine whether the currently defined boundaries between the various modes are optimal for the particular computing device. When the mode boundary tuner determines that a more optimal boundary definition exists, it can dynamically change the boundary to thereby tune the mode selection process on the particular computing device. A power limit setter may also be employed to set the CPU's power limits based on the mode detected by the mode detector. As the computing device operates in a mode, a power limit tuner can evaluate performance measurements and adjust the power limits to thereby tune the mode-specific power limits to the workload that is currently being executed.

Claims (43)

1. A method for performing adaptive CPU power limit tuning on a computing device, the method comprising:

maintaining a machine learning model that detects, from feature sets, a mode of operation of a CPU from among a plurality of modes, each of the plurality of modes being associated with CPU power limits;

monitoring performance measurements while the CPU is operating in the plurality of modes;

based on the monitoring, determining that one or more boundaries between the plurality of modes is not optimal for the computing device; and

adjusting the one or more boundaries to cause the one or more boundaries to be optimal for the computing device.

2. The method of claim 1 , wherein determining that the one or more boundaries between the plurality of modes is not optimal for the computing device comprises determining that the performance measurements are not optimal when the machine learning model detects a first mode of the plurality of modes when the feature sets are near a boundary between the first mode and a second mode.

3. The method of claim 2 , wherein adjusting the one or more boundaries to be optimal for the computing device comprises adjusting the boundary between the first mode and the second mode to cause the machine learning model to detect the second mode for the feature sets.

4. The method of claim 3 , wherein adjusting the boundary between the first mode and the second mode comprises adjusting a weight of one or more features in the feature sets.

5. The method of claim 1 , wherein the performance measurements comprise thermal measurements.

6. The method of claim 5 , wherein determining that the one or more boundaries between the plurality of modes is not optimal for the computing device comprises determining that the thermal measurements increase in excess of a defined rate when the machine learning model detects a first mode of the plurality of modes when the feature sets are near a boundary between the first mode and a second mode.

7. The method of claim 5 , wherein determining that the one or more boundaries between the plurality of modes is not optimal for the computing device comprises determining that the thermal measurements exceed a defined threshold when the machine learning model detects a first mode of the plurality of modes when the feature sets are near a boundary between the first mode and a second mode.

8. The method of claim 1 , further comprising:

setting the CPU power limits based on the detected mode;

while operating in the detected mode, adjusting the CPU power limits.

9. The method of claim 8 , wherein setting the CPU power limits based on the detected mode comprises setting the CPU power limits to predefined values, and wherein adjusting the CPU power limits while operating in the detected mode comprises incrementing the predefined values.

10. The method of claim 8 , further comprising:

while operating in the detected mode, determining that a GPU is bound;

wherein adjusting the CPU power limits comprises setting the CPU power limits to optimize the GPU's performance.

11. The method of claim 8 , further comprising:

while operating in the detected mode, monitoring thermal measurements;

wherein the CPU power limits are adjusted in response to determining that the thermal measurements do not exceed one or more defined thresholds.

12. The method of claim 11 , wherein the one or more defined thresholds include a CPU thermal threshold and a GPU thermal threshold.

13. A method for performing adaptive CPU power limit tuning on a computing device, the method comprising:

setting CPU power limits based on a detected mode;

while operating in the detected mode, monitoring performance measurements;

in conjunction with monitoring performance measurements, determining whether the CPU or a GPU is bound; and

based on the performance measurements, adjusting the CPU power limits, wherein adjusting the CPU power limits comprises:

when the CPU is bound, incrementing the CPU power limits; and

when the GPU is bound, setting the CPU power limits to optimize the GPU.

14. The method of claim 13 , wherein monitoring performance measurements comprises monitoring one or both of CPU thermal measurements or GPU thermal measurements.

15. The method of claim 13 , wherein setting CPU power limits based on a detected mode comprises setting the CPU power limits to pre-defined values that are mapped to the detected mode, and wherein adjusting the CPU power limits comprises incrementing adjusting the pre-defined values while thermal measurements are below one or more defined thresholds.

16. One or more computer storage media storing computer executable instructions which when executed on a computing device implement a method for performing adaptive CPU power limit tuning, the method comprising:

maintaining a machine learning model that detects, from feature sets, a mode of operation of a CPU from among a plurality of modes, each of the plurality of modes being associated with CPU power limits;

monitoring performance measurements while the CPU is operating in the plurality of modes;

based on the monitoring, determining that one or more boundaries between the plurality of modes is not optimal for the computing device; and

adjusting the one or more boundaries to cause the one or more boundaries to be optimal for the computing device.

17. The computer storage media of claim 16 , wherein adjusting the one or more boundaries to cause the one or more boundaries to be optimal for the computing device comprises changing a weighting of one or more features in the feature set.

18. The computer storage media of claim 16 , wherein monitoring performance measurements comprises tracking thermal measurements.

19. The computer storage media of claim 16 , wherein the method further comprises:

setting the CPU power limits based on the detected mode;

while operating in the detected mode, adjusting the CPU power limits.

20. The computer storage media of claim 16 , wherein the performance measurements comprise thermal measurements; and

wherein determining that the one or more boundaries between the plurality of modes is not optimal for the computing device comprises determining that the thermal measurements increase in excess of a defined rate when the machine learning model detects a first mode of the plurality of modes when the feature sets are near a boundary between the first mode and a second mode.

Assignments (9)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0523) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0664 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0434) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 060332/0740 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (054475/0609) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
Reel/Frame 062021/0570 →
RELEASE OF SECURITY INTEREST AT REEL 054591 FRAME 0471 Recorded Nov 2, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 058001/0463 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 054475/0609 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0434 →
SECURITY INTEREST Recorded Nov 18, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 054475/0523 →
SECURITY AGREEMENT Recorded Nov 13, 2020
From: EMC IP HOLDING COMPANY LLC; DELL PRODUCTS L.P.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 054591/0471 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2020
From: KHOSROWPOUR, FARZAD; MARKOW, MITCH ANTHONY
To: DELL PRODUCTS L.P.
Reel/Frame 053794/0068 →