US 11,775,299 B1
Vector clocks for highly concurrent execution engines
Drazen Borkovic, Los Altos, CA (US)
Assigned to Amazon Technologies, Inc., Seattle, WA (US)
Filed by Amazon Technologies, Inc., Seattle, WA (US)
Filed on Mar. 29, 2021, as Appl. No. 17/215,912.
Int. Cl. G06F 9/30 (2018.01); G06F 1/10 (2006.01); G06N 3/08 (2023.01); G06F 9/38 (2018.01)
CPC G06F 9/30036 (2013.01) [G06F 1/10 (2013.01); G06F 9/3001 (2013.01); G06F 9/3836 (2013.01); G06N 3/08 (2013.01)] 17 Claims
OG exemplary drawing
 
4. A method comprising:
receiving a computation graph that includes a set of nodes to be executed by a set of execution engines;
determining, based on the computation graph, a set of edges connecting the set of nodes;
determining, based on the computation graph, an edge type for each of the set of edges, wherein the edge type indicates a type of synchronization between connected nodes;
generating a vector clock for each of the set of nodes, wherein the vector clock for a particular node is calculated based on the vector clock for each connected preceding node and the edge type for the one of the set of edges that connects each connected preceding node and the particular node; and
assigning event registers to the set of edges based on the vector clock for each of the set of nodes.