Parte del contenido de esta aplicación no está disponible en este momento.
Si esta situación persiste, contáctenos aComentarios y contacto
1. (WO2018144292) GRAPHICS PROCESSING UNIT PARTITIONING FOR VIRTUALIZATION
Nota: Texto obtenido mediante procedimiento automático de reconocimiento óptico de caracteres.
Solo tiene valor jurídico la versión en formato PDF

CLAIMS

1. A method implemented by a host device, the method comprising:

obtaining, from a GPU-partition requestor, a request for a virtual machine with graphics processing unit (GPU) functionality, the GPU functionality being represented by a model having a plurality of segments that represent different GPU capabilities, and the request requesting the GPU functionality by specifying the different GPU capabilities; determining whether GPUs of the host device are available to provide the GPU functionality based on the specified GPU capabilities;

responsive to a determination that at least a portion of the GPUs are available to provide the GPU functionality, allocating the determined available portion of the GPUs to the virtual machine to configure the virtual machine with a GPU partition having the GPU functionality; and

exposing the virtual machine with the GPU partition having the GPU functionality to the GPU-partition requestor.

2. The method of claim 1, wherein the plurality of segments includes at least one of:

a video encoding segment that represents capability of a GPU to generate encoded video from raw video;

a video decoding segment that represents capability of a GPU to play the encoded video and video files;

a GPU random access memory (RAM) segment that represents an amount of memory available to a GPU; or

a GPU computing segment that represents an amount of GPU processing a GPU can perform.

3. The method of claim 1, wherein the request specifies at least one of:

a minimum amount for each of the different GPU capabilities;

a preferred amount for each of the different GPU capabilities; or

a maximum amount for each of the different GPU capabilities.

4. The method of claim 1, further comprising communicating a fulfillment notification to the GPU-partition requestor that indicates an extent to which the GPU partition meets the specified GPU capabilities.

5. The method of claim 4, wherein the fulfillment notification specifies at least one of:

a minimum amount of each of the different GPU capabilities to be provided with the GPU partition;

a preferred amount of each of the different GPU capabilities to be provided with the GPU partition; or

a maximum amount of each of the different GPU capabilities to be provided with the GPU partition.

6. The method of claim 1, wherein configuring the virtual machine with the GPU partition enables the virtual machine to provide GPU-input data to the allocated portion of GPUs and the allocated portion of GPUs to process the GPU-input data to provide GPU-processed data to the virtual machine.

7. The method of claim 6, wherein configuring the virtual machine with the GPU partition includes generating a virtual device to furnish the GPU functionality of the allocated portion of the GPUs to the virtual machine.

8. The method of claim 6, further comprising mapping input and output of a virtual device to respective data input/output (I/O) hardware work queues of the allocated portion of GPUs.

9. The method of claim 1, wherein the GPU-partition requestor comprises a different virtual machine or a client device.

10. The method of claim 1, wherein the determining includes querying GPU drivers maintained by the host device regarding whether respective GPUs meet the specified GPU capabilities.

11. The method of claim 1, wherein the allocating is based on a service agreement that defines an amount of the different GPU capabilities the GPU-partition requestor is allowed, and the allocated portion of GPUs provides the GPU functionality in the defined amount.

12. A host device comprising:

graphics processing units (GPUs) to furnish GPU functionality;

a GPU model that represents the GPU functionality with a plurality of segments indicative of different GPU capabilities;

GPU drivers to indicate the GPU functionality provided by a respective GPU according to the different GPU capabilities;

a processor; and

computer-readable media having instructions stored thereon that are executable by the processor to implement a GPU partitioning manager to perform operations comprising: determining that at least a portion of the GPUs can handle a request for the GPU functionality by querying the GPU drivers regarding whether the respective GPUs have the different GPU capabilities that are specified in the request;

allocating the determined portion of the GPUs to a virtual machine to configure the virtual machine with a GPU partition having the GPU functionality; and

exposing the virtual machine to a GPU-partition requestor that sent the request.

13. The host device of claim 12, wherein the operations further comprise communicating a fulfillment notification to the GPU-partition requestor that indicates an extent to which the GPU partition has the different GPU capabilities specified in the request.

14. The host device of claim 12, wherein the operations further comprise:

determining that the GPUs cannot handle an additional request for the GPU functionality; and

communicating a fulfillment notification to the GPU-partition requestor that sent the additional request, the fulfillment notification indicating that the additional request is not fulfilled.

15. The host device of claim 12, wherein the plurality of segments includes: a video encoding segment that represents capability of a GPU to generate encoded video from raw video;

a video decoding segment that represents capability of a GPU to play the encoded video and video files;

a GPU random access memory (RAM) segment that represents an amount of memory available to a GPU; and

a GPU computing segment that represents an amount of GPU processing a GPU can perform.