IP Library Granted Patent US 10,403,025
Granted Patent B2
US 10,403,025 · App. 16/128,449 · Granted Sep 3, 2019

Automated graphics and compute tile interleave

Inventors: Abhinav Golas (San Bruno, CA); Michael Fertig (Sunnyvale, CA)
Assignee: Samsung Electronics Co., Ltd.
G06T15/005G06T1/20G06T1/60G09G2360/123
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 10,403,025
App. No.
16/128,449
Granted
Sep 3, 2019
Kind
B2
Abstract

There is provided a method of a graphics processing system, the method including receiving dependency information for a set of interdependent images indicating a dependency across one or more compute shader and graphics workloads, and interleaving processing of the compute shader and graphics workloads for the set of interdependent images in accordance with the dependency information without recompiling a compute shader generating the one or more compute shader workloads.

Claims (42)

1. In a graphics processing system, a method comprising:

receiving dependency information for a set of interdependent images indicating a dependency across one or more compute shader and graphics workloads; and

interleaving processing of the compute shader and graphics workloads for the set of interdependent images in accordance with the dependency information without recompiling a compute shader generating the one or more compute shader workloads.

2. The method of claim 1 , wherein the dependency information is received from an application generating graphics or compute workloads via a defined API, or is generated automatically without human intervention.

3. The method of claim 1 , wherein the dependency information indicates:

a ratio of a number of workgroups in a compute-tile of a compute workload to a number of graphics-tiles of a graphics workload; or

a ratio of a number of graphics-tiles of a graphics workload to a number of compute-tiles of a compute workload.

4. The method of claim 1 , wherein the set of interdependent images correspond to a same frame.

5. The method of claim 1 , wherein the interleaving processing of the compute shader and graphics workloads is performed on a tile-by-tile basis for the set of interdependent images.

6. The method of claim 1 , wherein a compute-tile corresponding to a compute shader workload comprises a matrix of workgroups that are an integral number of a graphics-tile corresponding to a graphics workload along each dimension of the compute-tile.

7. The method of claim 1 , further comprising scheduling either a first graphics operation or a first compute shader operation followed by scheduling either a second graphics operation or a second compute shader operation,

wherein the second graphics operation or the second compute shader operation depends on one or more graphics operations or compute shader operations including the first graphics operation or the first compute shader operation,

wherein a block in a graphics operation comprises a block of graphics tiles, and

wherein a block in a compute shader operation comprises a block of workgroups.

8. A non-transitory computer readable medium having computer code that, when executed on a processor, implements a method comprising:

receiving dependency information for a set of interdependent images indicating a dependency across one or more compute shader and graphics workloads; and

interleaving processing of the compute shader and graphics workloads for the set of interdependent images in accordance with the dependency information without recompiling a compute shader generating the one or more compute shader workloads.

9. The non-transitory computer readable medium of claim 8 , wherein the dependency information is received from an application generating graphics or compute workloads via a defined API, or is generated automatically without human intervention.

10. The non-transitory computer readable medium of claim 8 , wherein the dependency information indicates:

a ratio of a number of workgroups in a compute-tile of a compute workload to a number of graphics-tiles of a graphics workload; or

a ratio of a number of graphics-tiles of a graphics workload to a number of compute-tiles of a compute workload.

11. The non-transitory computer readable medium of claim 8 , wherein the set of interdependent images correspond to a same frame.

12. The non-transitory computer readable medium of claim 8 , wherein the interleaving processing of the compute shader and graphics workloads is performed on a tile-by-tile basis for the set of interdependent images.

13. The non-transitory computer readable medium of claim 8 , wherein a compute-tile corresponding to a compute shader workload comprises a matrix of workgroups that are an integral number of a graphics-tile corresponding to a graphics workload along each dimension of the compute-tile.

14. The non-transitory computer readable medium of claim 8 , further comprising scheduling either a first graphics operation or a first compute shader operation followed by scheduling either a second graphics operation or a second compute shader operation,

wherein the second graphics operation or the second compute shader operation depends on one or more graphics operations or compute shader operations including the first graphics operation or the first compute shader operation,

wherein a block in a graphics operation comprises a block of graphics tiles, and

wherein a block in a compute shader operation comprises a block of workgroups.

15. A graphics processing system comprising:

a graphics renderer configured to generate graphics workloads;

a compute shader configured to generate compute shader workloads; and

an interleaved scheduling module configured to interleave processing of the compute shader and graphics workloads for a set of interdependent images in accordance with dependency information for the set of interdependent images indicating a dependency across one or more of the compute shader and graphics workloads without recompilation of the compute shader.

16. The graphics processing system of claim 15 , wherein the dependency information indicates:

a ratio of a number of workgroups in a compute-tile of a compute workload to a number of graphics-tiles of a graphics workload; or

a ratio of a number of graphics-tiles of a graphics workload to a number of compute-tiles of a compute workload.

17. The graphics processing system of claim 15 , wherein the set of interdependent images correspond to a same frame.

18. The graphics processing system of claim 15 , wherein the interleaved scheduling module is configured to interleave processing of the compute shader and graphics workloads on a tile-by-tile basis for the set of interdependent images.

19. The graphics processing system of claim 15 , wherein a compute-tile corresponding to a compute shader workload comprises a matrix of workgroups that are an integral number of a graphics-tile corresponding to a graphics workload along each dimension of the compute-tile.

20. The graphics processing system of claim 15 , further comprising a scheduler configured to schedule either a first graphics operation or a first compute shader operation followed by scheduling either a second graphics operation or a second compute shader operation,

wherein the second graphics operation or the second compute shader operation depends on one or more graphics operations or compute shader operations including the first graphics operation or the first compute shader operation,

wherein a block in a graphics operation comprises a block of graphics tiles, and

wherein a block in a compute shader operation comprises a block of workgroups.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2018
From: GOLAS, ABHINAV; FERTIG, MICHAEL
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 047805/0691 →
Continuity (3)
Continuation In Part 14981395 · Dec 28, 2015
Provisional Application 62171071 · Jun 4, 2015
Related Publication 20190005703A1 · Jan 3, 2019