9270783

System and Method for Photorealistic Imaging Workload Distribution

PublishedFebruary 23, 2016
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method, comprising: receiving, by a graphics client, a frame, the frame comprising scene model data; receiving camera motion information from a user; setting a server load balancing factor based on the scene model data; setting a prospective rendering factor based on the scene model data and received camera motion information; partitioning the frame into a plurality of server bands based on the server load balancing factor and the prospective rendering factor; distributing, by the graphics client, the plurality of server bands to a plurality of compute servers; receiving, by the graphics client, processed server bands from the plurality of compute servers; assembling a processed frame based on the received processed server bands; and transmitting the processed frame for display to a user as an image.

2

2. The method of claim 1 , wherein partitioning the frame further comprises selecting between horizontal server bands and vertical server bands.

3

3. The method of claim 1 , further comprising: receiving reported rendering times from at least one of the plurality of servers; and wherein setting the server load balancing factor further comprises setting the server load balancing factor based on the scene model data and the reported rendering times.

4

4. The method of claim 1 , wherein assembling a processed frame band further comprises decompressing the received processed server bands.

5

5. A computer program product for processing a digitized graphic frame, the computer program product stored on a non-transitory computer usable medium having computer usable program code embodied therewith, the computer useable program code comprising: computer usable program code configured to receive a frame, the frame comprising scene model data; computer usable program code configured to receive camera motion information from a user; computer usable program code configured to set a server load balancing factor based on the scene model data; computer usable program code configured to set a prospective rendering factor based on the scene model data and received camera motion information; computer usable program code configured to partition the frame into a plurality of server bands based on the server load balancing factor and the prospective rendering factor; computer usable program code configured to distribute the plurality of server bands to a plurality of compute servers; computer usable program code configured to receive processed server bands from the plurality of compute servers; computer usable program code configured to assemble a processed frame based on the received processed server bands; and computer usable program code configured to transmit the processed frame for display to a user as an image.

6

6. The computer program product of claim 5 , wherein partitioning the frame further comprises selecting between horizontal server bands and vertical server bands.

7

7. The computer program product of claim 5 , further comprising: computer usable program code configured to receiving reported rendering times from at least one of the plurality of servers; and wherein setting the server load balancing factor further comprises setting the server load balancing factor based on the scene model data and the reported rendering times.

8

8. The computer program product of claim 5 , wherein assembling a processed frame band further comprises decompressing the received processed server bands.

9

9. A method, comprising: receiving, by a compute server, a raw display band, the raw display band comprising scene model data and prospective rendering input based on received camera motion information; the compute server comprising a plurality of processing elements (PEs); partitioning the raw display band into a plurality of PE blocks based on a PE load balancing factor and the prospective rendering input; distributing the plurality of PE blocks to the plurality of PEs; rendering, by each PE, the PE blocks, to generate rendered PE blocks; combining, by the compute server, the rendered PE blocks, to generate a processed display band; determining, by the compute server, a rendering time for each PE; modifying the PE load balancing factor based on the determined rendering times; and transmitting the processed display band to a graphics client.

10

10. The method of claim 9 , wherein transmitting comprises compressing the processed display band.

11

11. The method of claim 9 , further comprising reporting a rendering time to the graphics client based on the determined rendering times.

12

12. The method of claim 9 , wherein modifying the PE load balancing factor further comprises modifying the PE load balancing factor based on the determined rendering times and received prospective rendering input.

13

13. A computer program product for processing a digitized graphic frame, the computer program product stored on a non-transitory computer usable medium having computer usable program code embodied therewith, the computer useable program code comprising: computer usable program code configured to receive a raw display band, the raw display band comprising scene model data and prospective rendering input based on received camera motion information; computer usable program code configured to partition the raw display band into a plurality of PE blocks based on a PE load balancing factor and the prospective rendering input; computer usable program code configured to distribute the plurality of PE blocks to a plurality of PEs; computer usable program code configured to render, by each PE, the PE blocks, to generate rendered PE blocks; computer usable program code configured to combine the rendered PE blocks, to generate a processed display band; computer usable program code configured to determine a rendering time for each PE; computer usable program code configured to modify the PE load balancing factor based on the determined rendering times; and computer usable program code configured to transmit the processed display band to a graphics client.

14

14. The computer program product of claim 13 , wherein transmitting comprises compressing the processed display band.

15

15. The computer program product of claim 13 , further comprising computer usable program code configured to report a rendering time to the graphics client based on the determined rendering times.

16

16. The computer program product of claim 13 , wherein modifying the PE load balancing factor further comprises modifying the PE load balancing factor based on the determined rendering times and received prospective rendering input.

17

17. A system comprising a graphics client, the graphics client configured to: receive a frame, the frame comprising scene model data; receive camera motion information from a user; set a server load balancing factor based on the scene model data; set a prospective rendering factor based on the scene model data and received camera motion information; partition the frame into a plurality of server bands based on the server load balancing factor and the prospective rendering factor; distribute the plurality of server bands to a plurality of compute servers; receive processed server bands from the plurality of compute servers; assemble a processed frame based on the received processed server bands; and transmit the processed frame for display to a user as an image.

18

18. The system of claim 17 , further comprising: wherein the graphics client is further configured to receive reported rendering times from at least one of the plurality of servers; and wherein setting the server load balancing factor further comprises setting the server load balancing factor based on the scene model data and the reported rendering times.

19

19. The system of claim 17 , further comprising: a plurality of compute servers, each compute server coupled to the graphics client and comprising a plurality of processing elements (PEs), and each compute server configured to: receive a raw display band from the graphics client, the raw display band comprising scene model data; partition the raw display band into a plurality of PE blocks based on a PE load balancing factor; and distribute the plurality of PE blocks to the plurality of PEs; wherein each PE is configured to render the PE blocks, to generate rendered PE blocks; and wherein each compute server is further configured to: combine the rendered PE blocks rendered by that compute server's PEs, to generate a processed display band; determine a rendering time for each of that compute server's PEs; modify the PE load balancing factor based on the determined rendering times; and transmit the processed display band to the graphics client.

20

20. The system of claim 19 , further comprising: wherein the raw display band further comprises prospective rendering input; and wherein partitioning the raw display band comprises partitioning based on the PE load balancing factor and the prospective rendering input.

Patent Metadata

Filing Date

Unknown

Publication Date

February 23, 2016

Inventors

Joaquin Madruga
Barry L. Minor
Mark R. Nutter

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “System and Method for Photorealistic Imaging Workload Distribution” (9270783). https://patentable.app/patents/9270783

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.