| CPC G06F 9/4881 (2013.01) [G06F 9/5016 (2013.01); G06F 40/169 (2020.01); G06T 15/005 (2013.01); G06T 15/06 (2013.01); G06T 2200/28 (2013.01); G06T 2210/52 (2013.01)] | 20 Claims |

|
1. A machine-implemented method of scheduling computation tasks, each computation task defining a graphic rendering process, comprising:
identifying, by a processor, a set of computation tasks to be executed on a plurality of processing units;
profiling, by the processor, the computation tasks of the set according to parameters comprising memory access requirements and computation requirements of the computation tasks;
forming, by the processor, instances of the computation tasks into at least one group by using said profiling of the computation tasks to identify computation tasks to be grouped together on the basis that they have memory access requirements and computation requirements that enable them to be executed in a group, wherein forming the instances of the computation tasks into at least one group is performed prior to scheduling the at least one group for execution, and wherein forming the instances of the computation tasks into at least one group is performed without allocating processing resources to service the at least one group;
scheduling, by the processor, subsequently to forming the at least one group of instances of the computation tasks, said at least one group to be executed on the plurality of processing units;
subsequent to scheduling the at least one group for execution, obtaining an allocation of processing resources to service the at least one group; and
executing the scheduled at least one group of instances of computation tasks using the allocated processing resources within the plurality of processing units.
|