Patents by Inventor Banit Agrawal

Banit Agrawal has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20170161084
    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.
    Type: Application
    Filed: February 17, 2017
    Publication date: June 8, 2017
    Inventors: Lawrence SPRACKLEN, Banit AGRAWAL, Rishi BIDARKAR
  • Patent number: 9674265
    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.
    Type: Grant
    Filed: November 4, 2013
    Date of Patent: June 6, 2017
    Assignee: VMware, Inc.
    Inventors: Banit Agrawal, Lawrence Spracklen, Rishi Bidarkar, Warren Ponder
  • Patent number: 9674518
    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.
    Type: Grant
    Filed: December 20, 2013
    Date of Patent: June 6, 2017
    Assignee: VMware, Inc.
    Inventors: Banit Agrawal, Lawrence Spracklen, Rishi Bidarkar
  • Patent number: 9674562
    Abstract: Methods, systems, and computer programs for measuring quality of multimedia delivery to a client are presented. A method includes operations for embedding video markers in a video stream of a multimedia stream, and embedding audio markers in an audio stream of the multimedia stream. The video stream and the audio stream are then transmitted separately to the client. Further, video markers received at the client are extracted from the transmitted video stream, and audio markers received at the client are extracted from the transmitted audio stream. A measure of the audio-video synchronization quality is obtained by determining a quantifiable time difference between the video stream and the audio stream received at the client, where the quantifiable time difference is calculated based on the extracted video markers and the extracted audio markers.
    Type: Grant
    Filed: April 5, 2011
    Date of Patent: June 6, 2017
    Assignee: VMware, Inc.
    Inventors: Lawrence Andrew Spracklen, Banit Agrawal, Rishi Bidarkar
  • Patent number: 9674263
    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.
    Type: Grant
    Filed: December 20, 2013
    Date of Patent: June 6, 2017
    Assignee: VMware, Inc.
    Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
  • Patent number: 9614892
    Abstract: This disclosure describes a performance-monitoring system that computes a display performance metric of a remote application. During operation, the system performs a sequence of input events, and receives information which updates a graphical user interface (GUI). The GUI displays a sequence of frames rendered by a remote application in response to the input events. The system then samples colors at a number of pivot points on the GUI, and matches the a respective frame to a previously performed input event based on the sampled colors. The system subsequently computes a display performance metric for the remote application based on the frames and the corresponding input events.
    Type: Grant
    Filed: December 2, 2014
    Date of Patent: April 4, 2017
    Assignee: VMware, Inc.
    Inventors: Rishi Bidarkar, Banit Agrawal, Lawrence Andrew Spracklen, Hari Sivaraman
  • Publication number: 20170083371
    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.
    Type: Application
    Filed: November 14, 2016
    Publication date: March 23, 2017
    Inventors: Daniel James Beveridge, Banit Agrawal
  • Patent number: 9582240
    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.
    Type: Grant
    Filed: December 26, 2012
    Date of Patent: February 28, 2017
    Assignee: VMware, Inc.
    Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
  • Patent number: 9578373
    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.
    Type: Grant
    Filed: May 9, 2016
    Date of Patent: February 21, 2017
    Assignee: VMware, Inc.
    Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Andrew Spracklen
  • Patent number: 9578032
    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.
    Type: Grant
    Filed: February 5, 2015
    Date of Patent: February 21, 2017
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Blake Watts, Per Olov Larsson, Banit Agrawal, Hui Li
  • Publication number: 20170011486
    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.
    Type: Application
    Filed: September 26, 2016
    Publication date: January 12, 2017
    Applicant: VMware, Inc.
    Inventors: Banit Agrawal, Rishi N. Bidarkar, Sunil Satnur, Vikram Makhija
  • Patent number: 9513950
    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.
    Type: Grant
    Filed: August 6, 2015
    Date of Patent: December 6, 2016
    Assignee: VMware, Inc.
    Inventors: Daniel James Beveridge, Banit Agrawal
  • Patent number: 9471951
    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.
    Type: Grant
    Filed: December 9, 2015
    Date of Patent: October 18, 2016
    Assignee: VMware, Inc.
    Inventors: Banit Agrawal, Rishi N. Bidarkar, Sunil Satnur, Vikram Makhija
  • Patent number: 9448816
    Abstract: In one embodiment a method for storing a remote desktop GUI image block in a cache including a plurality of persistence levels is described. The method is comprised of maintaining each persistence level in the plurality of persistence levels; identifying an event associated with an update to the remote desktop GUI; determining a context for the event; selecting one of the persistence levels for the event based on the context; and storing an image block corresponding to the update in the selected one of the persistence levels.
    Type: Grant
    Filed: April 29, 2013
    Date of Patent: September 20, 2016
    Assignee: VMware, Inc.
    Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
  • Publication number: 20160255400
    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.
    Type: Application
    Filed: May 9, 2016
    Publication date: September 1, 2016
    Applicant: VMware, Inc.
    Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Andrew Spracklen
  • Publication number: 20160188361
    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.
    Type: Application
    Filed: March 8, 2016
    Publication date: June 30, 2016
    Inventors: Banit Agrawal, Lawrence Andrew Spracklen, Rishi Bidarkar
  • Publication number: 20160139948
    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.
    Type: Application
    Filed: August 6, 2015
    Publication date: May 19, 2016
    Inventors: Daniel James Beveridge, Banit Agrawal
  • Publication number: 20160142769
    Abstract: The disclosure herein describes a client-side system that enhances user experience on a remoting client without consuming additional network bandwidth. During operation, the system receives a sequence of frame updates for a display screen, and determines a sequence of frames corresponding to the frame updates. The system further adaptively applies one or more image enhancing techniques to the sequence of frames based on available network bandwidth, frame refresh rate, or image quality. The image enhancement techniques include predicting a frame based on previously received frames, interpolating a frame based on at least two buffered frames, and reducing appearance of artifacts in a received frame, thereby reducing visual artifacts.
    Type: Application
    Filed: January 21, 2016
    Publication date: May 19, 2016
    Inventors: Lawrence A. Spracklen, Banit Agrawal, Rishi Bidarkar
  • Patent number: 9336117
    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.
    Type: Grant
    Filed: April 26, 2013
    Date of Patent: May 10, 2016
    Assignee: VMware, Inc.
    Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Spracklen
  • Publication number: 20160098810
    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.
    Type: Application
    Filed: December 9, 2015
    Publication date: April 7, 2016
    Applicant: VMware, Inc.
    Inventors: Banit Agrawal, Rishi N. Bidarkar, Sunil Satnur, Vikram Makhija