Method and apparatus for power management of a graphics processing core in a virtual environment
AssigneesAdvanced Micro Devices, Inc., ATI Technologies ULC
InventorsOleksandr Khodorkovsky, Stephen D. Presant
Life of this patent
Estimating the term…
Abstract
A method and apparatus controls power management of a graphics processing core when multiple virtual machines are allocated to the graphics processing core on a much finer-grain level than conventional systems. In one example, the method and apparatus processes a plurality of virtual machine power control setting requests to determine a power control request for a power management unit of a graphics processing core. The method and apparatus then controls power levels of the graphics processing core with the power management unit based on the determined power control request.
Claims24
A method comprising:
- processing a plurality of virtual machine power control setting requests including a first virtual machine power control setting request and a second virtual machine power control setting request by blending the plurality of virtual machine power control setting requests together to determine a power control request for a power management unit of a graphics processing core, wherein each of the first and second virtual machine power control setting requests is associated with a respective virtual machine requirement defined by a minimum frequency and a maximum frequency and wherein blending includes determining an overlap of the minimum and maximum frequencies of the first virtual machine power control setting request and the second virtual machine power control setting request;
- and
- controlling power levels of the graphics processing core with the power management unit based on the determined overlap of the minimum and maximum frequencies between the first and second virtual machine power control setting requests.
A method comprising:
- receiving a unique identifier for each of a plurality of virtual machines having access to a graphics processing core;
- receiving a virtual machine power control setting request for a power management unit of the graphics processing core for each of the plurality of virtual machines;
- storing the plurality of virtual machine power control setting requests in a memory electrically coupled to the power management unit, the stored virtual machine power control setting requests being linked to the unique identifier of an associated virtual machine;
- determining which of the plurality of virtual machines are actively using the graphics processing core during a predetermined time period;
- processing the plurality of stored virtual machine power control setting requests including a first virtual machine power control setting request and a second virtual machine power control setting request linked to the unique identifiers of the active virtual machines by blending the plurality of virtual machine power control setting requests together to determine the power control request for the power management unit of the graphics processing core, wherein each of the first and second virtual machine power control setting requests is associated with a respective virtual machine requirement defined by a minimum frequency and a maximum frequency and wherein blending includes determining an overlap of the minimum and maximum frequencies of the first virtual machine power control setting request and the second virtual machine power control setting request;
- and
- controlling power levels of the graphics processing core with the power management unit based on the determined overlap of the minimum and maximum frequencies between the first and second virtual machine power control setting requests.
An apparatus comprising:
- a graphics processing core operative to host a plurality of virtual machines;
- a power management unit configured to control power levels of the graphics processing core based on a power control request;
- and
- a blending and arbitration module in operative communication with the power management unit, the blending and arbitration module being operable to process a plurality of virtual machine power control setting requests including a first virtual machine power control setting request and a second virtual machine power control setting request to determine the power control request for use by the power management unit by blending the plurality of virtual machine power control setting requests together to determine the power control request for the power management unit, wherein each of the first and second virtual machine power control setting requests is associated with a respective virtual machine requirement defined by a minimum frequency and a maximum frequency and wherein blending includes determining an overlap of the minimum and maximum frequencies of the first virtual machine power control setting request and the second virtual machine power control setting request.
A non-transitory computer readable storage medium comprising executable instructions that when executed by at least one processor causes the at least one processor to:
- process a plurality of virtual machine power control setting requests including a first virtual machine power control setting request and a second virtual machine power control setting request by blending the plurality of virtual machine power control setting requests together to determine a power control request for a graphics processing core, wherein each of the first and second virtual machine power control setting requests is associated with a respective virtual machine requirement defined by a minimum frequency and a maximum frequency and wherein blending includes determining an overlap of the minimum and maximum frequencies of the first virtual machine power control setting request and the second virtual machine power control setting request;
- and
- adjust power levels of the graphics processing core based on the determined overlap of the minimum and maximum frequencies between the first and second virtual machine power control setting requests.
Dependencies are inferred from the claim text.