SYSTEM AMD METHOD FOR IMPROVING THE GRAPHICS PERFORMANCE OF HOSTED APPLICATIONS
First Claim
1. A server-based system for hosting applications/video games for a plurality of clients comprising:
- an application/game server comprising a central processing unit to process application/video game program code and a graphics processing unit (GPU) to process graphics commands and generate a series of video frames for the application/video game;
one or more back buffers to store video frames as the video frames are being created in response to the execution of the graphics commands;
a front buffer to receive a video frame for rendering on a display after the video frame has been completed in one of the one or more back buffers, the front buffer outputting the video frame for display one scan line at a time at a designated scan out frequency, a subset of scan lines stored in the front buffer being associated with a vertical blanking interval (VBI);
a frame processing module to perform real-time profiling of the GPU by performing the operations of;
determining a current mode in which the GPU is operating;
tracking how long it takes the GPU to execute certain types of operations while in the current mode of operation; and
updating a benchmark database indexed by the different hash values associated with the different GPU modes of operation and storing values representing the amount of time needed for each specified type of operation.
5 Assignments
0 Petitions
Accused Products
Abstract
A system for hosting video games comprising: a game server comprising a central processing unit to process video game program code and a graphics processing unit (GPU) to process graphics commands; one or more back buffers to store video frames in response to the execution of the graphics commands; a front buffer to receive a video frame for rendering on a display and outputting the video frame for display one scan line at a time at a designated scan out frequency, a subset of scan lines stored in the front buffer being associated with a vertical blanking interval (VBI); a frame processing module to increase the number of scan lines associated with the VBI to increase the likelihood that a new frame will be completed in a back buffer and ready for transfer to the front buffer at a time during the VBI.
-
Citations
16 Claims
-
1. A server-based system for hosting applications/video games for a plurality of clients comprising:
-
an application/game server comprising a central processing unit to process application/video game program code and a graphics processing unit (GPU) to process graphics commands and generate a series of video frames for the application/video game; one or more back buffers to store video frames as the video frames are being created in response to the execution of the graphics commands; a front buffer to receive a video frame for rendering on a display after the video frame has been completed in one of the one or more back buffers, the front buffer outputting the video frame for display one scan line at a time at a designated scan out frequency, a subset of scan lines stored in the front buffer being associated with a vertical blanking interval (VBI); a frame processing module to perform real-time profiling of the GPU by performing the operations of; determining a current mode in which the GPU is operating; tracking how long it takes the GPU to execute certain types of operations while in the current mode of operation; and updating a benchmark database indexed by the different hash values associated with the different GPU modes of operation and storing values representing the amount of time needed for each specified type of operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for hosting applications/video games for a plurality of clients comprising:
-
an application/game server comprising a central processing unit to process application/video game program code and a graphics processing unit (GPU) to process graphics commands and generate a series of video frames for the application/video game; one or more back buffers to store video frames as the video frames are being created in response to the execution of the graphics commands; a front buffer to receive a video frame for rendering on a display after the video frame has been completed in one of the one or more back buffers, the front buffer outputting the video frame for display one scan line at a time at a designated scan out frequency, a subset of scan lines stored in the front buffer being associated with a vertical blanking interval (VBI); a frame processing module to perform real-time profiling of the GPU by performing the operations of; determining a current mode in which the GPU is operating; tracking how long it takes the GPU to execute certain types of operations while in the current mode of operation; and updating a benchmark database indexed by the different hash values associated with the different GPU modes of operation and storing values representing the amount of time needed for each specified type of operation - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
Specification