主权项 |
1. A computer-implemented method in a server computing system for providing runtime assessments of a plurality of virtual machines for use in allocation of physical graphics processing unit (GPU) resources, including processing bandwidth, to one or more of the plurality of virtual machines comprising:
dynamically determining a runtime assessment of workload for each virtual machine of the plurality of virtual machines, the workload runtime assessment indicative of a potential benefit that the virtual machine can receive from using a GPU resource of the physical GPU resources; and causing processing bandwidth of the physical GPU resources to be allocated to some of the plurality of virtual machines based upon the dynamically determined runtime assessments of workload, wherein the dynamically determined runtime assessment of workload for each virtual machine determines a combined value of processing parameters that are each indicative of benefit to using a GPU resource, and wherein: each virtual machine has a video RAM (VRAM) and wherein the processing parameters include a measure of VRAM usage, and wherein the measure of VRAM usage comprises an average ratio of the amount of the VRAM being used by the virtual machine to the total size of the VRAM allocated for the virtual machine; each virtual machine has a command queue and wherein the processing parameters include a measure of load of the command queue, and wherein the measure of load of the command queue comprises an amount indicative of time the command queue is active; at least some of the plurality of virtual machines have a processing unit for handling graphics and wherein the processing parameters include a measure of activity on the processing unit for handling graphics, and wherein the measure of activity comprises an amount of time the processing unit for handling graphics is idle over a particular time interval; or each virtual machine having VRAM, a command queue, and at least one data transfer mechanism, wherein the combined value of processing parameters comprises a combination of a value indicative of an amount of VRAM in use, a value indicative of an amount the command queue is utilized, and a value indicative of an amount of command bandwidth not using the data transfer mechanism. |