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 for user experiencing monitoring for application remoting. One of the methods includes receiving a request to provide an application to a remote client. The application is executed to generate one or more application windows. A watermark window that includes a watermark is generated. Display data for the application is, generated, including the watermark window and the one or more application windows. The display data for the application is provided to the remote client for presentation on the remote client. Data identifying an operation to be performed by the application is obtained. The watermark is updated to encode information identifying the operation and information identifying an initialization of the operation by the application. Data identifying a completion of the operation is received by the application. The watermark is updated to encode information identifying the completion of the operation.
Abstract:
Methods, systems, and computer programs are provided for managing remote display performance. One method includes an operation for determining pixel data for a group of macroblocks, each macroblock having a group of pixels. The macroblocks are for embedding in respective video frames of a video stream. The pixel data for each pixel in each macroblock is calculated with a formula based on the frame number of the respective video frame and on the location of the pixel within the macroblock. Farther, the method includes operations for embedding the macroblocks in the respective video frames, and for transmitting the video frames with the embedded macroblocks to a remote client. A performance metric for the transmitted video stream is calculated based on the macroblocks received at the remote client by comparing the received macroblocks to the expected macroblocks based on the formula.
Abstract:
One method for managing remote display performance includes operations for embedding pixel data in a file of an application executing on a server, and detecting an open window of a graphical user interface (GUI) associated with the application. The pixel data is used to create a pixel strip in the window, while the GUI is being displayed on a remote display of a remote client. Update information for the GUI being displayed on the remote display is transmitted from the server to the remote client, the update information corresponding to the change in the presentation of the open window on the server. Further, a change in a presentation of the open window is detected, and a pixel strip received at the remote display is identified. A performance metric for the remote display is calculated based on the received pixel strip when compared to the expected values for the pixel strip.
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:
Image data representing a desktop image for a client device that is accessing the desktop remotely is compressed according to a method that preserves image fidelity in selected non-text regions. The method, which is carried out in a remote server, includes the steps of generating image data for the remote desktop image and analyzing different regions of the remote desktop image, identifying those regions of the remote desktop image that are text regions, selecting non-text regions of the remote desktop image for lossless compression based on a spatial relationship between the non-text regions and the text regions, compressing the image data using a lossless compression protocol for a portion of the image data corresponding to the selected non-text regions, and transmitting the compressed image data to the client device.
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 managing remote display performance. One method includes operations for receiving notifications of events identified by an operating system, and for receiving notifications of display updates destined to a remote display coupled to a remote client. The method includes an operation for correlating events and display updates to determine the transmittal priority for the updates, where the priority is associated with a criticality for presenting the display updates on the remote display. Further, a subset of the display updates are identified as unnecessary for transmission to the remote client based, at least in part, on the priority of the display updates. Additionally, the method includes an operation for performing at least one of: discarding the subset; consolidating the subset into a single display update for transmittal to the remote client; or limiting the frequency of transmission of the subset to the remote client.
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:
Image data representing a desktop image for a client device that is accessing the desktop remotely is compressed according to a method that preserves image fidelity in selected non-text regions. The method, which is carried out in a remote server, includes the steps of generating image data for the remote desktop image and analyzing different regions of the remote desktop image, identifying those regions of the remote desktop image that are text regions, selecting non-text regions of the remote desktop image for lossless compression based on a spatial relationship between the non-text regions and the text regions, compressing the image data using a lossless compression protocol for a portion of the image data corresponding to the selected non-text regions, and transmitting the compressed image data to the client device.