Abstract:
Examples described herein enable memory state sharing among a plurality of virtual machines (VM) including a parent VM and a child VM. A request for memory state sharing between the parent VM and the child VM is received, and the parent VM is suspended. The child VM resumes execution of one or more suspended applications. In one example, the child FM is forked with pre-loaded, suspended applications from the parent VM. Aspects of the disclosure offer a high performance, resource efficient solution that outperforms traditional approaches in areas of software compatibility, stability, quality of service control, re-source utilization, and more.
Abstract:
Aspects of the disclosure allocate shares of processing resources or other physical resources among virtual machines (VMs) operating as, for example, virtual desktops on a plurality of host computing devices. Allocations of resources are adjusted based on the user activity, VM activity, and/or application activity detected by an agent executing on each VM. Allocated shares may be boosted, unboosted, or normalized, depending on the type and duration of detected activity, by a resource allocation manager executing on a management server.
Abstract:
A method for measuring performance of virtual desktop services offered by a server including a processor is described. A first encoded watermark is embedded into user interface display generated by a virtual desktop when initiating an operation. The first encoded watermark includes pixels identifying the operation and indicating its initiation. A second encoded watermark is embedded into the user interface upon completion of the operation indicating completion of the operation. An action performance time is then computed and stored in a memory. Multiple performance times may be compiled from multiple operations of multiple virtual desktops to assess the performance of the system as a whole.
Abstract:
Systems and methods described herein facilitate determining desktop readiness using interactive measures. A host is in communication with a server and the host includes a virtual desktop and a virtual desktop agent. The virtual desktop agent is configured to perform one or more injecting events via one or more monitoring agents, wherein each of the injecting events is a simulated input device event. The desktop agent is further configured to receive, via a display module, a response to the injecting event(s), wherein the response is a display update causing pixel color values for the display module to alter. The desktop agent is also configured to identify, via the monitoring agent(s), whether the response to the injecting event(s) is an expected response. The desktop agent is also configured to determine, via the monitoring agent(s), a readiness of the virtual desktop based on the expected response.
Abstract:
Methods, systems, and computer programs are provided for measuring the performance of display images received on a remote computer display. One method includes an operation for detecting calls from an application to an application programming interface (API), which is provided for rendering images on a display image, each call causing an update of the display image. Further, the method includes an operation for embedding data for measuring performance in display frames of the display image based on the detecting. The embedding results in modified displayed frames with respective data for measuring performance. The modified displayed frames are transmitted to a remote client, which results in received modified display frames having respective received data for measuring the performance. In addition, the method includes an operation for calculating the remote display quality for the given application based on the received modified display frames and the respective received data for measuring performance.
Abstract:
A method for measuring performance of virtual desktop services offered by a server including a processor is described. A first encoded watermark is embedded into user interface display generated by a virtual desktop when initiating an operation. The first encoded watermark includes pixels identifying the operation and indicating its initiation. A second encoded watermark is embedded into the user interface upon completion of the operation indicating completion of the operation. An action performance time is then computed and stored in a memory. Multiple performance times may be compiled from multiple operations of multiple virtual desktops to assess the performance of the system as a whole.
Abstract:
In one embodiment, a method displays images from a remote desktop of a desktop GUI on a client device. The method receives a plurality of image blocks for a frame update of an image of the desktop GUI being displayed on the client device. The remote desktop is being run on a host. The client device determines that one or more missing image blocks have not been received for the frame update and determines if the frame update should be performed without the one or more missing image blocks. If the frame update of the desktop GUI should be performed without the one or more missing image blocks, the client device performs the frame update of the desktop GUI using the plurality of image blocks without using the one or more missing image blocks.
Abstract:
In one embodiment, a method displays images from a remote desktop of a desktop GUI on a client device. The method receives a plurality of image blocks for a frame update of an image of the desktop GUI being displayed on the client device. The remote desktop is being run on a host. The client device determines that one or more missing image blocks have not been received for the frame update and determines if the frame update should be performed without the one or more missing image blocks. If the frame update of the desktop GUI should be performed without the one or more missing image blocks, the client device performs the frame update of the desktop GUI using the plurality of image blocks without using the one or more missing image blocks.
Abstract:
Techniques are described for improving the measurement of visual perception of graphical user interface (GUI) information remoted to client devices in virtual desktop environments, such as VDI and DAAS. An objective image quality measurement of remoted virtual desktop interfaces is computed, that is more accurate and more closely aligned with subjective user perception. The visual quality metric is computed using a linear fusion model that combines a peak signal to noise ratio (PSNR) score of the distorted image, a structural similarity (SSIM) score of the distorted image and a feature similarity (FSIM) score of the distorted image. Prior to using the model to compute the quantitative visual perception metric, the linear fusion model is trained by using a benchmark test database of reference images (e.g., virtual desktop interface images), distorted versions of those images and subjective human visual perception quality ratings associated with each distorted version.
Abstract:
Exemplary methods, apparatuses, and systems receive a first instruction set from a first virtual machine (VM), the first instruction set including a request to perform an operation on an input. A first identifier is generated based upon the operation and the input. The first identifier is mapped to a stored copy of the input, the operation, and an output resulting from a processor performing the operation. In response to receiving a second instruction set from a second VM, a second identifier is generated based upon the input and operation received within the second instruction set. In response to determining that the second identifier matches the stored first identifier, it is further determined that the input and operation of the first instruction set matches the input and operation of the second instruction set. A copy of the stored output is returned to the second VM.