IP Library Granted Patent US 9,117,285
Granted Patent B2
US 9,117,285 · App. 14/138,065 · Granted Aug 25, 2015

Centralised interactive graphical application server

Inventors: Graham Clemie (London, GB); Dedrick Duckett (Canton, GA)
Assignee: T5 LABS LTD
G06T1/20G06T9/00G06T15/00H04N19/40A63F2300/203A63F2300/538G06T2210/08
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,117,285
App. No.
14/138,065
Granted
Aug 25, 2015
Kind
B2
Abstract

A system for processing a plurality of graphical programs on a centralized computer system whereby the images produced by the programs are compressed and transmitted to a plurality of remote processing devices where they are decompressed. Compression assistance data (CAD) is produced by intercepting instructions outputted by the programs and the CAD is then used in the compression step.

Claims (71)

1. A system for producing compressed image data comprising:

i) an image data compressor;

ii) an instruction interception module;

iii) a graphics processor module (GPM) accessible by the instruction interception module;

iv) memory accessible by the image data compressor and the GPM;

such that operation of the system causes the system to perform at least the following steps:

a) intercepting processor instructions by the instruction interception module;

b) identifying at least one of the intercepted processor instructions having an influence on a co-ordinate associated with the image data;

c) generating compression assistance data (CAD) or compression assistance instructions (CAI) or a combination thereof that are responsive to the identified graphics instruction, the CAD comprises information relating to the co-ordinate of at least one pixel of a plurality of pixels of step (d);

d) processing at least one of the intercepted processor instructions by the GPM to generate a plurality of pixels to be stored in the memory; and

e) processing at least a portion of the plurality of pixels using at least part of the CAD or at least part of the CAI or a combination thereof to generate compressed image data.

2. The system as claimed in claim 1 wherein step (c) occurs before step (d).

3. The system as claimed in claim 1 wherein the image data compressor and the GPM are integrated within one unit of graphics processor hardware.

4. The system as claimed in claim 3 wherein the generation of the compressed image data is at least partially performed by the image data compressor.

5. The system as claimed in claim 3 wherein the CAD comprises details of which of the pixels will be used to generate the compressed image data.

6. The system as claimed in claim 1 wherein the generation of the compressed image data is at least partially performed by the image data compressor.

7. The system as claimed in claim 6 wherein the CAD comprises details of which of the pixels will be used to generate the compressed image data.

8. The system as claimed in claim 1 wherein the CAD comprises details of which of the pixels will be used to generate the compressed image data.

9. The system as claimed in claim 8 wherein the GPM comprises at least one GPU.

10. The system as claimed in claim 1 wherein the GPM comprises at least one GPU.

11. The system as claimed in claim 1 wherein at least one of the intercepted processor instructions of step (d) is modified before being processed.

12. The method as claimed in claim 11 wherein the modifying is responsive to the identified instruction.

13. A system for producing compressed image data comprising:

i) an image data compressor;

ii) an instruction interception module;

iii) a graphics processor module (GPM) accessible by the instruction interception module;

iv) memory accessible by the image data compressor and the GPM;

such that operation of the system causes the system to perform at least the following steps:

a) intercepting a first set of processor instructions from a first graphics generating computer program by the instruction interception module to create a first set of intercepted processor instructions (IPI-1);

b) intercepting a second set of processor instructions from a second graphics generating computer program by the instruction interception module to create a second set of intercepted processor instructions (IPI-2);

c) identifying at least one of the instructions of IPI-1 or at least one of the instructions of IPI-2 or a combination of instructions from IPI-1 and IPI-2 having an influence on a co-ordinate associated with the image data;

d) generating compression assistance data (CAD) or compression assistance instructions (CAI) or a combination thereof that are responsive to the identified instruction, the CAD comprising information relating to the co-ordinate of at least one pixel in the first frame of image pixels of step (g) or in the second frame of step (h);

e) modifying at least one of the instructions of IPI-1 to create a first set of modified processor instructions (MPI-1);

f) modifying at least one of the instructions of IPI-2 to create a second set of modified instructions (MPI-2);

g) processing at least one of the MPI-1 instructions by the GPM to generate a first frame of image pixels;

h) processing at least one of the MPI-2 instructions by the GPM to generate a second frame of image pixels;

i) storing the majority or all of the first frame of image pixels in a first set of locations in the memory;

j) storing the majority or all of the second frame of image pixels in a second set of locations in the memory; and

k) processing at least a portion of the first frame using at least part of the CAD or at least part of the CAI or a combination thereof to generate first compressed image data;

l) processing at least a portion of the second frame using at least part of the CAD or at least part of the CAI or a combination thereof to generate second compressed image data;

wherein the majority or all of the first set of memory locations do not overlap the second set of memory locations.

14. The system as claimed in claim 13 wherein step (d) occurs before step (e).

15. The system as claimed in claim 13 wherein the image data compressor and the GPM are integrated within one unit of graphics processor hardware.

16. The system as claimed in claim 15 wherein the generation of the compressed image data is at least partially performed by the image data compressor.

17. The system as claimed in claim 16 wherein the GPM comprises at least one GPU.

18. The system as claimed in claim 15 wherein the CAD or the CAI or a combination thereof comprises details of which of the pixels will be used to generate the compressed image data.

19. The system as claimed in claim 15 wherein the GPM comprises at least one GPU.

20. The system as claimed in claim 13 wherein the generation of the compressed image data is at least partially performed by the image data compressor.

21. The system as claimed in claim 20 wherein the CAD or the CAI or a combination thereof comprises details of which of the pixels will be used to generate the compressed image data.

22. The system as claimed in claim 20 wherein the GPM comprises at least one GPU.

23. The system as claimed in claim 13 wherein the CAD or the CAI or a combination thereof comprises details of which of the pixels will be used to generate the compressed image data.

24. The system as claimed in claim 23 wherein the GPM comprises at least one GPU.

25. The system as claimed in claim 13 wherein operation of the system causes the system to deliver information specifying at least one capability of the GPM to the first graphics generating computer program wherein the information delivered differs at least in part from the actual capabilities of the GPM.

26. The system as claimed in claim 13 wherein the GPM comprises at least one GPU.

27. A system comprising:

i) an instruction interception module;

ii) a plurality of graphics processor units (GPUs) accessible by the instruction interception module;

iii) memory accessible by the plurality of GPUs;

such that operation of the system causes the system to perform at least the following steps:

a) intercepting a first set of processor instructions from a first graphics generating computer program by the instruction interception module to create a first set of intercepted processor instructions (IPI-1);

b) intercepting a second set of processor instructions from a second graphics generating computer program by the instruction interception module to create a second set of intercepted processor instructions (IPI-2);

c) modifying at least one of the instructions of IPI-1 to create a first set of modified processor instructions (MPI-1);

d) modifying at least one of the instructions of IPI-2 to create a second set of modified processor instructions (MPI-2);

e) processing at least one of the MPI-1 instructions by a first of the plurality of GPUs to generate a first frame of image pixels;

f) processing at least one of the MPI-2 instructions by a second of the plurality of GPUs to generate a second frame of image pixels; and

g) processing at least a portion of the first frame of image pixels to generate compressed image data.

28. The system as claimed in claim 27 wherein step (c) occurs before step (d).

29. The system as claimed in claim 27 wherein the system further comprises an image data compressor, and wherein at least part of the memory is accessible by the image data compressor.

30. The system as claimed in claim 29 wherein the generation of the compressed image data is at least partially performed by the image data compressor.

31. The system as claimed in claim 27 wherein the step of modifying comprises a step selected from a group of steps consisting of adding instructions, removing instructions, altering instructions, replacing instructions, and any combination thereof.

32. The system as claimed in claim 27 wherein the modifying in step (d) directs the processing in step (f) to occur in the second of the plurality of GPUs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2021
From: CLEMIE, GRAHAM; DUCKETT, DEDRICK
To: T5 LABS LIMITED
Reel/Frame 056074/0549 →
Priority Claims (4)
GB 0204859.3 · Mar 1, 2002 · national
GB 0223687.5 · Oct 11, 2002 · national
GB 0226192.3 · Nov 9, 2002 · national
GB PCT/GB2003/000933 · Mar 3, 2003 · national
Continuity (6)
Continuation 13887538 · May 6, 2013
Continuation 13369280 · Feb 8, 2012
Continuation 13298266 · Nov 16, 2011
Continuation 13032401 · Feb 22, 2011
Continuation 10506151
Related Publication 20140111529A1 · Apr 24, 2014