CPC G06F 9/3851 (2013.01) [G06F 9/46 (2013.01); G06F 9/4843 (2013.01); G06F 9/4881 (2013.01); G06F 9/5027 (2013.01); G06F 9/522 (2013.01); G06F 9/545 (2013.01); G06F 12/0842 (2013.01); G06F 12/0866 (2013.01); G06F 12/0897 (2013.01); G06F 15/16 (2013.01); G06F 15/76 (2013.01); G06T 1/20 (2013.01); G06T 1/60 (2013.01); G06F 2209/5018 (2013.01); G06T 2200/28 (2013.01)] | 19 Claims |
1. A processor comprising:
a plurality of multiprocessors, each multiprocessor including a plurality of cores for execution of multiple threads, the multiple threads comprising a plurality of thread groups;
a memory for thread processing; and
scheduling hardware, the scheduling hardware to schedule the multiple threads among the plurality of multiprocessors;
wherein the processor is to:
determine a magnitude of barriers used in each of the plurality of thread groups,
determine barrier weight values based on the determined magnitude of barriers used in each of the plurality of thread groups, and store the determined barrier weight values, and
schedule the threads of the plurality of thread groups to the plurality of multiprocessors based at least in part on the determined barrier weight values.
|