CPC G06F 9/522 (2013.01) [G06F 9/3005 (2013.01); G06F 9/461 (2013.01); G06F 11/3024 (2013.01); G06F 11/3476 (2013.01); G06F 11/3495 (2013.01); G06N 20/00 (2019.01)] | 20 Claims |
1. An integrated circuit (IC), comprising:
a comparison module configured to indicate a result of a comparison between loaded data of a workgroup and a specified value, wherein the loaded data is generated as a result of a waiting atomic instruction, and wherein the result of the comparison representing a failed match indicates the workgroup is waiting for at least one synchronization variable;
a synchronization monitor configured to receive the indicated result from the comparison module, and, in response to the result indicating a failed match, monitor the workgroup; and
a compute unit configured to send the loaded data of the workgroup and the specified value to the comparison module, and to perform a context switch that prevents execution of the workgroup in response to an indication that the synchronization monitor is monitoring the workgroup.
|