IP Library › Granted Patent US 12,705,083
Granted Patent B2
US 12,705,083 · App. 18/242,102 · Granted Aug 11, 2026

Thermal throttling to regulate virtual processing device usage

Inventor: Michael Tsirkin (Ra'anana, IL)
Assignee: Red Hat, Inc.
G06F9/45558G06F9/4893G06F2009/45591
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,705,083
App. No.
18/242,102
Filed
Sep 5, 2023
Granted
Aug 11, 2026
Kind
B2
Examiner
KIM, DONG U
Art Unit
2197
USPC
718/1
Abstract

Systems, methods, and apparatuses for regulating virtual processing device usage by emulating thermal throttling are provided herein. An example method comprises limiting a processing capacity allocated for a virtual processing device to a value equal to or below a threshold by transmitting, via a hypervisor, an indication to a guest that the virtual processing device has exceeded an operating temperature, wherein the value is below a current processing capacity of a host processing device.

Claims (29)

1 . A method, comprising:

determining, by a hypervisor, a capacity threshold for a virtual processing device that prevents an unused capacity threshold of a host processing device from being exceeded;

determining, by the hypervisor accessing a lookup table, a temperature value for limiting a processing capacity allocated for the virtual processing device to a value equal to or below the capacity threshold; and

limiting the processing capacity allocated for the virtual processing device to the value equal to or below the capacity threshold by transmitting, via the hypervisor, the temperature value to a guest, wherein the value is below a current processing capacity of the host processing device.

2 . The method of claim 1 , wherein the temperature value is based at least partially upon the capacity threshold.

3 . The method of claim 1 , wherein the determining, by the hypervisor, the capacity threshold for the virtual processing device is responsive to the host processing device having an unused processing capacity that is above the unused capacity threshold.

4 . The method of claim 1 , wherein a plurality of virtual processing devices configured to execute a plurality of guests share the host processing device, and wherein the limiting is performed for at least one virtual processing device of the plurality of virtual processing devices.

5 . The method of claim 4 , wherein each virtual processing device of the plurality of virtual processing devices is assigned a capacity threshold independently of other virtual processing devices.

6 . The method of claim 1 , wherein the capacity threshold is based at least partially upon a priority value of the virtual processing device.

7 . The method of claim 1 , wherein the capacity threshold is based at least partially upon a past activity of the virtual processing device.

8 . The method of claim 1 , further comprising:

monitoring usage of the host processing device;

adjusting the capacity threshold based upon the monitoring; and

repeating the limiting responsive to a change in the capacity threshold.

9 . A system, comprising:

a memory; and

a processing device, operatively coupled to the memory, to:

determine, by a hypervisor, a capacity threshold for a virtual processing device that prevents an unused capacity threshold of a host processing device from being exceeded;

determine, by the hypervisor accessing a lookup table, a temperature value for limiting a processing capacity allocated for the virtual processing device to a value equal to or below the capacity threshold; and

limit the processing capacity allocated for the virtual processing device to the value equal to or below the capacity threshold by transmitting, via the hypervisor, the temperature value to a guest, wherein the value is below a current processing capacity of the host processing device.

10 . The system of claim 9 , wherein the temperature value is based at least partially upon the capacity threshold.

11 . The system of claim 9 , wherein the determining, by the hypervisor, the capacity threshold for the virtual processing device is responsive to the host processing device having an unused processing capacity that is above the unused capacity threshold.

12 . The system of claim 9 , wherein a plurality of virtual processing devices belonging to a plurality of guests share the host processing device, and wherein the limiting is performed for at least one virtual processing device of the plurality of virtual processing devices.

13 . The system of claim 12 , wherein each virtual processing device of the plurality of virtual processing devices is assigned a capacity threshold independently of other virtual processing devices.

14 . A non-transitory computer-readable medium containing instructions which, when executed by a processing device, cause the processing device to:

determining, by a hypervisor, a capacity threshold for a virtual processing device that prevents an unused capacity threshold of a host processing device from being exceeded;

determining, by the hypervisor accessing a lookup table, a temperature value for limiting a processing capacity allocated for the virtual processing device to a value equal to or below the capacity threshold; and

limit the processing capacity allocated for the virtual processing device to the value equal to or below the capacity threshold by transmitting, via a hypervisor, the temperature value to a guest, wherein the value is below a current processing capacity of the host processing device.

15 . The non-transitory computer-readable medium of claim 14 , wherein the determining, by the hypervisor, the capacity threshold for the virtual processing device is responsive to the host processing device having an unused processing capacity that is above the unused capacity threshold.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2023
From: TSIRKIN, MICHAEL
To: RED HAT, INC.
Reel/Frame 064817/0507 →
Continuity (1)
Related Publication 20250077253A1 · Mar 6, 2025
References Cited (18)
US 9244732B2 · West et al. · 2016 [cited by applicant]
US 9268394B2 · Kansal et al. · 2016 [cited by applicant]
US 10496446B2 · Venkataraja et al. · 2019 [cited by applicant]
US 11281487B2 · Tsirkin · 2022 [cited by applicant]
US 11593134B2 · Wang · 2023 [cited by applicant]
US 20080163239A1 · Sugumar · 2008 [cited by examiner]
US 20100217454A1 · Spiers · 2010 [cited by examiner]
US 20170109205A1 · Ahuja · 2017 [cited by examiner]
US 20170286252A1 · Illikkal · 2017 [cited by examiner]
US 20170364387A1 · Ahmed · 2017 [cited by examiner]
US 20180027060A1 · Metsch · 2018 [cited by examiner]
US 20200034171A1 · Kommula · 2020 [cited by examiner]
US 20220075638A1 · Shukla et al. · 2022 [cited by applicant]
US 20220129053A1 · Ronnau · 2022 [cited by examiner]
US 20240289149A1 · Mahadev · 2024 [cited by examiner]
Guarav Dhiman, et al., “vGreen: A System for Energy Efficient Computing in Virtualized Environments”, Department of Computer Science and Engineering University of California, San Diego, Aug. 2009, 6 pages. [cited by applicant]
Philip M. Wells, et al., “Hardware Support for Spin Management in Overcommitted Virtual Machines”, Computer Sciences Department University of Wisconsin, Madison, Sep. 2006, 10 pages. [cited by applicant]
Christoph Klee, “Transparent, Thermal Balancing of Virtual Machines in Multicore Systems”, Karlsruhe Institute of Technology, Oct. 2007, 42 pages. [cited by applicant]