In various examples, local checkpoint registers can be used to synchronize the operations of two or more execution engines of the integrated circuit device. The accelerator engine 502 may include one checkpoint register associated with each execution engine in the accelerator engine 502. Each execution engine may wait on a condition associated with a value (i.e., a checkpoint) in its associated local checkpoint register. In the local register implementation, remote engines or the host processor may remotely set values in the checkpoint register of another execution engine but may not wait on the remotely set checkpoint values. The local checkpoint registers may be included in the hardware of the associated execution engines.
While