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).
-
Patent number: 9292401Abstract: 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: GrantFiled: October 31, 2012Date of Patent: March 22, 2016Assignee: VMware, Inc.Inventors: Banit Agrawal, Lawrence Andrew Spracklen, Rishi Bidarkar
-
Publication number: 20160055017Abstract: 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: ApplicationFiled: February 5, 2015Publication date: February 25, 2016Inventors: Daniel James BEVERIDGE, Blake WATTS, Per Olov LARSSON, Banit AGRAWAL, Hui LI
-
Patent number: 9257092Abstract: 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: GrantFiled: February 12, 2013Date of Patent: February 9, 2016Assignee: VMware, Inc.Inventors: Lawrence A. Spracklen, Banit Agrawal, Rishi Bidarkar
-
Publication number: 20150370589Abstract: 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.Type: ApplicationFiled: June 19, 2014Publication date: December 24, 2015Inventors: Rishi BIDARKAR, Hari SIVARAMAN, Banit AGRAWAL
-
Publication number: 20150365498Abstract: 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.Type: ApplicationFiled: June 17, 2014Publication date: December 17, 2015Inventors: Banit Agrawal, Rishi Bidarkar
-
Patent number: 9214004Abstract: 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: GrantFiled: October 13, 2011Date of Patent: December 15, 2015Assignee: VMware, Inc.Inventors: Banit Agrawal, Rishi N. Bidarkar, Sunil Satnur, Vikram Makhija
-
Patent number: 9201755Abstract: In one embodiment, a server system receives, from a client device configured to remotely access a desktop hosted by the server system, user input directed to the desktop. The server system further identifies a desktop operation to be performed in response to the user input, where the identifying is performed without relying on preconfigured information that indicates what the desktop operation should be, determines when the desktop operation has completed, and adds, upon completion of the desktop operation, one or more markers to the desktop. The server system then transmits an image of the desktop that includes the one or more markers to the client device, thereby signaling the completion of the desktop operation to the client device.Type: GrantFiled: February 14, 2013Date of Patent: December 1, 2015Assignee: VMware, Inc.Inventors: Rishi Bidarkar, Lawrence Spracklen, Banit Agrawal, Vikram Makhija
-
Patent number: 9081536Abstract: 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.Type: GrantFiled: October 13, 2014Date of Patent: July 14, 2015Assignee: VMware, Inc.Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
-
Publication number: 20150181207Abstract: 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: ApplicationFiled: December 20, 2013Publication date: June 25, 2015Applicant: VMware, Inc.Inventors: Banit Agrawal, Lawrence Spracklen, Rishi Bidarkar
-
Publication number: 20150180933Abstract: 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: ApplicationFiled: December 20, 2013Publication date: June 25, 2015Applicant: VMWARE, INC.Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
-
Publication number: 20150127716Abstract: 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: ApplicationFiled: November 4, 2013Publication date: May 7, 2015Applicant: VMware, Inc.Inventors: Banit Agrawal, Lawrence Spracklen, Rishi Bidarkar, Warren Ponder
-
Publication number: 20150084979Abstract: 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: ApplicationFiled: December 2, 2014Publication date: March 26, 2015Applicant: VMWARE, INC.Inventors: Rishi BIDARKAR, Banit AGRAWAL, Lawrence Andrew SPRACKLEN, Hari SIVARAMAN
-
Publication number: 20150035724Abstract: 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.Type: ApplicationFiled: October 13, 2014Publication date: February 5, 2015Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
-
Patent number: 8910228Abstract: Methods, systems, and computer programs are provided for measuring the performance of a remote display. One method includes an operation for embedding in display frames a respective frame identifier and a respective frame picture. The respective frame picture is placed in a respective region that depends of the value of the respective frame identifier. Additionally, the method includes operations for sending the plurality of display frames to a remote client, and for extracting each received frame picture from the respective region of each received display frame at the remote client based on the received frame identifier. The received frame quality is calculated for each received display frame based on the comparison of the extracted received frame picture with the respective frame picture. Further, the method includes an operation for calculating a remote display quality for the remote client based on the calculated received frame quality for the received display frames.Type: GrantFiled: April 26, 2013Date of Patent: December 9, 2014Assignee: VMware, Inc.Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Spracklen
-
Patent number: 8902248Abstract: 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: GrantFiled: March 28, 2012Date of Patent: December 2, 2014Assignee: VMware, Inc.Inventors: Rishi Bidarkar, Banit Agrawal, Lawrence Andrew Spracklen, Hari Sivaraman
-
Publication number: 20140325372Abstract: 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: ApplicationFiled: April 29, 2013Publication date: October 30, 2014Applicant: VMware, Inc.Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
-
Publication number: 20140320673Abstract: Methods, systems, and computer programs are provided for measuring the performance of a remote display. One method includes an operation for embedding in display frames a respective frame identifier and a respective frame picture. The respective frame picture is placed in a respective region that depends of the value of the respective frame identifier. Additionally, the method includes operations for sending the plurality of display frames to a remote client, and for extracting each received frame picture from the respective region of each received display frame at the remote client based on the received frame identifier. The received frame quality is calculated for each received display frame based on the comparison of the extracted received frame picture with the respective frame picture. Further, the method includes an operation for calculating a remote display quality for the remote client based on the calculated received frame quality for the received display frames.Type: ApplicationFiled: April 26, 2013Publication date: October 30, 2014Applicant: VMware, Inc.Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Spracklen
-
Publication number: 20140325054Abstract: 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: ApplicationFiled: April 26, 2013Publication date: October 30, 2014Applicant: VMware, Inc.Inventors: Banit Agrawal, Rishi Bidarkar, Uday Kurkure, Tariq Magdon-Ismail, Hari Sivaraman, Lawrence Spracklen
-
Patent number: 8862695Abstract: 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.Type: GrantFiled: October 29, 2012Date of Patent: October 14, 2014Assignee: VMware, Inc.Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar
-
Publication number: 20140258872Abstract: In one embodiment, a client device configured to remotely access a desktop hosted by a server system determines an event related to a user input for a desktop operation directed to the desktop. The client device receives a plurality of updates to a desktop graphical user interface (GUI) from the desktop hosted by the server system. Then, the client device correlates the event to an update in the plurality of updates to the desktop GUI based on a rule in a set of rules correlating events to updates. A metric is monitored for the update and information measured for the metric is stored.Type: ApplicationFiled: March 6, 2013Publication date: September 11, 2014Applicant: VMWARE, INC.Inventors: Lawrence Spracklen, Banit Agrawal, Rishi Bidarkar, Vikram Makhija