IP Library Granted Patent US 12682540
Granted Patent B2
US 12682540 · App. 18/393,167 · Granted Jul 14, 2026

Graphics processing

Inventors: Daren Croxford (Swaffham Prior, GB); Roberto Lopez Mendez (Cambridge, GB); Mina Ivanova Dimova (Great Shelford, GB)
Assignee: Arm Limited
G06T15/005
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 12682540
App. No.
18/393,167
Granted
Jul 14, 2026
Kind
B2
Abstract

The present disclosure relates to a method of operating a graphics processor to process a frame formed of a plurality of regions, the graphics processor comprising at least one execution unit with an associated storage element, the at least one execution unit is operable to process the plurality of regions according to a shading rate for each region to generate a processing output to the associated storage element, the method comprising: obtaining the shading rate for one or more of the plurality of regions; determining a respective processing output size for each of the one or more regions based on the shading rate for the one or more regions; forming the one or more regions into at least one variable processing unit based on the respective processing output size for each of the one or more regions and a capacity of the associated storage element; and assigning the at least one variable processing unit as a processing task to the at least one execution unit.

Claims (39)

1 . A method of operating a graphics processor comprising at least one execution unit with an associated storage element, the at least one execution unit is operable to perform data processing associated with a plurality of regions forming a frame according to a respective representative shading rate for each region to generate a processing output to the associated storage element, the method comprising:

obtaining the respective representative shading rate for one or more of the plurality of regions;

determining a respective processing output size for each of the one or more of the plurality of regions based on the respective representative shading rate for the one or more of the plurality of regions;

forming the one or more of the plurality of regions into at least one variable region based on the respective processing output size for each of the one or more of the plurality of regions and a capacity of the associated storage element; and

assigning data processing associated with the at least one variable region as a processing task to the at least one execution unit.

2 . The method of claim 1 , wherein,

when a region has a single shading rate, the respective representative shading rate for the region is the single shading rate; or

when a region has more than one shading rates, the respective representative shading rate of the region is a minimum shading rate, an average shading rate, or a maximum shading rate.

3 . The method of claim 1 , wherein the at least one variable region comprises more than one region of the frame.

4 . The method of claim 3 , wherein the more than one region of the frame is adjacent each other within the frame.

5 . The method of claim 1 , wherein the at least one variable region comprises one or more sub-regions, a sub-region being a portion of a region.

6 . The method of claim 1 , wherein the at least one variable region comprises a first plurality of variable regions, and data processing associated with each of the first plurality of variable regions represents a similar processing load for the at least one execution unit.

7 . The method of claim 6 , wherein the graphics processor comprises a plurality of execution units each having an associated storage element, and the method further comprises assigning data processing associated with each of the first plurality of variable regions as a first processing task of a plurality of first processing tasks, and distributing the plurality of first processing tasks amongst the plurality of execution units.

8 . The method of claim 7 , further comprising, when only a portion of the plurality of regions remains for which data processing is to be performed, forming the remaining regions into a second plurality of variable regions, each of the second plurality of variable regions being smaller with respect to processing output size compared to the first plurality of variable regions.

9 . The method of claim 8 , further comprising assigning data processing associated with each of the second plurality of variable regions as a second processing task of a plurality of second processing tasks, and distributing the plurality of second processing tasks amongst the plurality of execution units.

10 . The method of claim 1 , wherein each region of the plurality of regions is a tile in tile-based graphics processing using a tile-based graphics processor.

11 . A graphics processor comprising:

at least one execution unit operable to perform data processing associated with a plurality of regions forming a frame according to a respective representative shading rate for each region to generate a processing output;

at least one storage element associated with the at least one execution unit to store processing output; and

control circuitry configured to:

obtain the respective representative shading rate for one or more of the plurality of regions;

determine a respective processing output size for each of the one or more of the plurality of regions based on the respective representative shading rate for the one or more of the plurality of regions;

form the one or more of the plurality of regions into at least one variable region based on the respective processing output size for each of the one or more of the plurality of regions and a capacity of the associated at least one storage element; and

assign data processing associated with the at least one variable region as a processing task to the at least one execution unit.

12 . The graphics processor of claim 11 , wherein,

when a region has a single shading rate, the respective representative shading rate of the region is the single shading rate; or

when a region has more than one shading rates, the respective representative shading rate of the region is a minimum shading rate, an average shading rate, or a maximum shading rate.

13 . The graphics processor of claim 11 , wherein the at least one variable region comprises more than one region of the frame.

14 . The graphics processor of claim 13 , wherein the more than one region of the frame is adjacent each other within the frame.

15 . The graphics processor of claim 11 , wherein the at least one variable region comprises one or more sub-regions, a sub-region being a portion of a region.

16 . The graphics processor of claim 11 , wherein the at least one variable region comprises a first plurality of variable regions, and data processing associated with each of the first plurality of variable regions represents a similar processing load for the at least one execution unit.

17 . The graphics processor of claim 16 , wherein the graphics processor comprises a plurality of execution units each having an associated storage element, and the control circuitry is further configured to assign data processing associated with each of the first plurality of variable regions as a first processing task of a plurality of first processing tasks, and distribute the plurality of first processing tasks amongst the plurality of execution units.

18 . The graphics processor of claim 17 , wherein the control circuitry is further configured to, when only a portion of the plurality of regions remains for which data processing is to be performed, form the remaining regions into a second plurality of variable regions, each of the second plurality of variable regions being smaller with respect to processing output size compared to the first plurality of variable regions.

19 . The graphics processor of claim 18 , wherein the control circuitry is further configured to assign data processing associated with each of the second plurality of variable regions as a second processing task of a plurality of second processing tasks, and distribute the plurality of second processing tasks amongst the plurality of execution units.

20 . A non-transitory computer readable storage medium storing software code which, when executing on a processor, performs a method of operating a graphics processor comprising at least one execution unit with an associated storage element, the at least one execution unit is operable to perform data processing associated with a plurality of regions forming a frame according to a respective representative shading rate for each region to generate a processing output to the associated storage element, the method comprising:

obtaining the respective representative shading rate for one or more of the plurality of regions;

determining a respective processing output size for each of the one or more of the plurality of regions based on the respective representative shading rate for the one or more of the plurality of regions;

forming the one or more of the plurality of regions into at least one variable region based on the respective processing output size for each of the one or more of the plurality of regions and a capacity of the associated storage element; and

assigning data processing associated with the at least one variable region as a processing task to the at least one execution unit.