# US 8,751,654 B2 · Determining the graphic load of a virtual desktop

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,751,654 B2
- Document ID: US8751654B2
- Status: Granted
- Kind: B2
- Application number: 12/325,229
- Filed: 2008-11-30
- Published: 2010-06-03
- Granted: 2014-06-10
- Earliest claimed: 2008-11-30
- Assignees: Red Hat Israel, Ltd.
- Applicants: Shahar Frank
- Inventors: Shahar Frank
- Web page: https://patentgrep.com/patent/US8751654B2

## CPC

- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 9/5083: {Techniques for rebalancing the load in a distributed system}
- G06F 11/3442: {for planning or managing the needed capacity}
- G06F 2201/815: Virtual
- H04L 41/0823: characterised by the purposes of a change of settings, e.g. optimising configuration for enhancing reliability (for optimising operational conditions of wireless networks H04W24/02)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The graphics load of a virtual desktop is estimated to determine the capacity of a virtual desktop system. In one embodiment, the graphics load of a physical desktop is measured by a remoting agent installed on the physical desktop. The graphics load can be used as an estimate of the load that would be created by a deployed virtual desktop. The remoting agent on the physical desktop mimics host operations that are necessary to direct graphics data to a remote site. The remoting agent also measures the graphics load incurred by the host operations to determine a capacity of a virtual desktop system prior to deployment of the virtual desktop system.

## Claims

### Claim 1

A computer-implemented method comprising:
mimicking, by a remoting agent installed on a computing device, host operations of a host remoting agent that are necessary to direct graphics data to a client at a remote site, wherein the computing device includes a graphics unit to simulate the host operations locally at the computing device without directing the graphics data to the client at the remote site;
measuring, by the remoting agent, a graphics load incurred by the host operations at the computing device to determine a capacity of a virtual desktop system prior to deployment of the virtual desktop system on a host system, wherein the host system includes a set of one or more servers to run one or more virtual machines, and wherein at least one of the one or more virtual machines provides a virtual desktop for the client at the remote site;
estimating a capacity of the virtual desktop system prior to deployment of the virtual desktop system on the host system based on the measured graphics load of the computing system; and
estimating a capacity of the host system based on the estimated capacity of the virtual desktop system, wherein said estimating the capacity of the host system comprises calculating a number of virtual desktops that can be run on the host system based on the estimated capacity of the virtual desktop system.

### Claim 2 (depends on 1)

The method of claim 1, wherein the host operations include graphics operations and network operations.

### Claim 3 (depends on 1)

The method of claim 1, wherein measuring the graphics load further comprises:
computing a core graphics load from statistics of graphics operations;
computing a networking load from statistics of network operations; and
combining the core graphics load with the networking load to obtain the graphics load.

### Claim 4 (depends on 1)

The method of claim 1, wherein measuring the graphics load further comprises:
assigning a weight to each of graphics operations of the host operations; and
computing the graphics load using a weighted sum of the graphics operations.

### Claim 5 (depends on 1)

The method of claim 1, wherein measuring the graphics load further comprises multiplying a network bandwidth with a weighted sum of graphics operations, the network bandwidth being a bandwidth used for directing the graphics data to the client at the remote site.

### Claim 6 (depends on 1)

The method of claim 1, further comprising determining system resources to be used for the virtual desktop system based on the measured graphics load.

### Claim 7 (depends on 1)

The method of claim 1, further comprising:
monitoring the graphics load of the host system after the deployment of the virtual desktop system; and
comparing the graphics load of the host system with the measured graphics load.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein said calculating the number of virtual desktops comprises:
determining an aggregate processing speed of the set of servers; and
dividing the aggregate processing speed by the estimated capacity of the virtual desktop system of the computing system.

### Claim 9

A system comprising:
a graphics unit in a computing device to execute graphic operations; and
a remoting agent coupled to the graphics unit, the remoting agent installed in the computing device to mimic host operations of a host remoting agent that are necessary to direct graphics data to a client at a remote site,
the remoting agent further to measure a graphics load incurred by the host operations at the computing device to determine a capacity of a virtual desktop system prior to deployment of the virtual desktop system on a host system,
wherein the host system includes a set of one or more servers to run one or more virtual machines, and wherein at least one of the one or more virtual machines provides a virtual desktop for the client at the remote site,
wherein the graphics unit is to simulate the host operations locally at the computing device without directing the graphics data to the client at the remote site, and
wherein the remoting agent is to estimate a capacity of the virtual desktop system prior to deployment of the virtual desktop system on the host system based on the measured graphics load of the computing system, and estimate a capacity of the host system based on the estimate capacity of the virtual desktop system, including to calculate a number of virtual desktops that can be run on the host system based on the estimated capacity of the virtual desktop system.

### Claim 10 (depends on 9)

The system of claim 9, wherein the host operations include graphics operations and network operations.

### Claim 11 (depends on 9)

The system of claim 9, wherein the graphics load includes a core graphics load computed from statistics of graphics operations and a networking load computed from statistics of network operations.

### Claim 12 (depends on 9)

The system of claim 9, wherein the graphics load includes a weighted sum of graphics operations multiplied by a network bandwidth that is used for directing the graphics data to the client at the remote site.

### Claim 13 (depends on 9)

The system of claim 9, wherein the remoting agent is to calculate the number of virtual desktops by determining an aggregate processing speed of the set of servers, and dividing the aggregate processing speed by the estimated capacity of the virtual desktop system of the computing system.

### Claim 14

A non-transitory computer readable storage medium including instructions that, when executed by a processing system, cause the processing system to perform a method comprising:
mimicking, by a remoting agent installed on a computing device, host operations of a host remoting agent that are necessary to direct graphics data to a client at a remote site, wherein the computing device includes a graphics unit to simulate the host operations locally at the computing device without directing the graphics data to the client at the remote site;
measuring, by the remoting agent, a graphics load incurred by the host operations at the computing device to determine a capacity of a virtual desktop system prior to deployment of the virtual desktop system on a host system, wherein the host system includes a set of one or more servers to run one or more virtual machines, and wherein at least one of the one or more virtual machines provides a virtual desktop for the client at the remote site;
estimating a capacity of the virtual desktop system prior to deployment of the virtual desktop system on the host system based on the measured graphics load of the computing system; and
estimating a capacity of the host system based on the estimated capacity of the virtual desktop system, wherein said estimating the capacity of the host system comprises calculating a number of virtual desktops that can be run on the host system based on the estimated capacity of the virtual desktop system.

### Claim 15 (depends on 14)

The computer readable storage medium of claim 14, wherein the host operations include graphics operations and network operations.

### Claim 16 (depends on 14)

The computer readable storage medium of claim 14, wherein measuring the graphics load further comprises:
computing a core graphics load from statistics of graphics operations;
computing a networking load from statistics of network operations; and
combining the core graphics load with the networking load to obtain the graphics load.

### Claim 17 (depends on 14)

The computer readable storage medium of claim 14, wherein measuring the graphics load further comprises:
assigning a weight to each of graphics operations of the host operations; and
computing the graphics load using a weighted sum of the graphics operations.

### Claim 18 (depends on 14)

The computer readable storage medium of claim 14, wherein measuring the graphics load further comprises multiplying a network bandwidth with a weighted sum of graphics operations, the network bandwidth being a bandwidth used for directing the graphics data to the client at the remote site.

### Claim 19 (depends on 14)

The computer readable storage medium of claim 14, wherein the method further comprises determining system resources to be used for the virtual desktop system based on the measured graphics load.

### Claim 20 (depends on 14)

The computer readable storage medium of claim 14, wherein said calculating the number of virtual desktops comprises:
determining an aggregate processing speed of the set of servers; and
dividing the aggregate processing speed by the estimated capacity of the virtual desktop system of the computing system.
