Client-server visualization system with hybrid data processing
First Claim
1. A system for rendering images, comprising:
- A. a client digital data processor comprising one or more local processing resources,B. a server digital data processor in communications coupling with said client digital data processor over a network,C. said client digital data processor executing an application that generates one or more requests for rendering aspects of one or more images, at least one image including at least a first aspect and a second aspect, andD. the client digital data processor being responsive to the one or more such requests for (i) effecting rendering of one of said first aspect and said second aspect of the at least one image using the local processing resources, and (ii) effecting rendering of the other of said first aspect and said second aspect of the at least one image by the server digital data processor, wherein the other of said first aspect and said second aspect of the at least one image generated by the server digital data processor is relatively unchanging static and is pasted into a buffer, wherein the one of said first aspect and said second aspect of the at least one image rendered by the local processing resources changes and is combined with the entry in the buffer to change the entry in the buffer, wherein the application displays the changing entry in the buffer as the rendered image.
4 Assignments
0 Petitions
Accused Products
Abstract
The invention comprises a system of client-server visualization with hybrid data processing, having a server digital data processor, that allows for server side rendering and processing image data, and client digital data processors simultaneously connected to the server, which receives messages from the clients, creates rendered images of data sets or other data processing results and sends those rendered images and results to the clients for display or further processing. Performing certain image rendering operations on either the server or the client according to which is better suited for the tasks requested by the user at any point in time, and possibly adjusting this division of work dynamically, improves rendering speed and application responsiveness on the clients.
328 Citations
27 Claims
-
1. A system for rendering images, comprising:
-
A. a client digital data processor comprising one or more local processing resources, B. a server digital data processor in communications coupling with said client digital data processor over a network, C. said client digital data processor executing an application that generates one or more requests for rendering aspects of one or more images, at least one image including at least a first aspect and a second aspect, and D. the client digital data processor being responsive to the one or more such requests for (i) effecting rendering of one of said first aspect and said second aspect of the at least one image using the local processing resources, and (ii) effecting rendering of the other of said first aspect and said second aspect of the at least one image by the server digital data processor, wherein the other of said first aspect and said second aspect of the at least one image generated by the server digital data processor is relatively unchanging static and is pasted into a buffer, wherein the one of said first aspect and said second aspect of the at least one image rendered by the local processing resources changes and is combined with the entry in the buffer to change the entry in the buffer, wherein the application displays the changing entry in the buffer as the rendered image. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for rendering images, comprising:
-
A. a client digital data processor comprising one or more local processing resources including a central processing unit (CPU), a graphics processing unit (GPU), and/or a graphics library, B. a server digital data processor in communications coupling with said client digital data processor, C. said client digital data processor executing an application that generates one or more requests for rendering aspects of one or more composite images, at least one composite image including at least a first aspect, a second aspect, and a third aspect, D. said client digital data processor comprising a render module that responds to the one or more requests by the application by allocating rendering and compute tasks between the local processing resources and the server digital data processor, thereby (i) effecting rendering of at least one of said first aspect, said second aspect, and said third aspect of the at least one composite image using the local processing resources, and (ii) effecting rendering of at least one of the remaining aspects of said first aspect, said second aspect, and said third aspect of the at least one composite image by the server digital data processor, wherein the at least one of the remaining aspects of said first aspect, said second aspect, and said third aspect of the at least one composite image by the server digital data processor is relatively unchanging static, wherein the at least one of said first aspect, said second aspect, and said third aspect of the at least one composite image using the local processing resources is dynamic, wherein said render module combines aspects of the at least one composite image rendered by the local resources with aspects of the at least one composite image rendered by the server digital data processor by entering into a buffer the at least one composite image rendered by the server digital data processor and adding to the buffer the at least one composite image rendered by the local resources, wherein the application displays the changing entry in the buffer as the rendered image. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method of rendering images, comprising:
-
A. executing on a client digital data processor an application that generates one or more requests for rendering aspects of at least one composite image, B. responding, with the client digital data processor, to one or more such requests by (i) effecting rendering of at least one of said aspects of the at least one composite image on local processing resources of the client digital data processor, and (ii) effecting rendering of others of said aspects of the at least one composite image by a server digital data processor that is in communication coupling with the client digital data processor via a network, said effecting rendering of others of said aspects of the composite image by the server digital data processor includes messaging the server digital data processor over the network, wherein the at least one of said aspects of the at least one composite image rendered on local processing resources changes, wherein the others of said aspects of the at least one composite image rendered by the server digital data processor is relatively unchanging static, C. pasting into a buffer the entry corresponding to the others of said aspects of the at least one composite image rendered by the server digital data processor, D. adding to the entry in the buffer the entry corresponding to at least one of said aspects of the at least one composite image rendered on local processing resources, and E. displaying the entry in the buffer as the rendered image. - View Dependent Claims (22, 23, 24, 25, 26, 27)
-
Specification