×

Reachability-based coordination for cyclic dataflow

  • US 9,832,068 B2
  • Filed: 12/17/2012
  • Issued: 11/28/2017
  • Est. Priority Date: 12/17/2012
  • Status: Active Grant
First Claim
Patent Images

1. A computer-readable storage medium storing computer-executable instructions that, when executed by a processor, configure the processor to perform operations comprising:

  • scheduling a plurality of processes each comprising a plurality of threads to operate independently on discrete partitions of data;

    responsive to a first thread of the plurality of threads receiving a first partition of the data, the first thread beginning an operation on the first partition of the data;

    responsive to a second thread of the plurality of threads receiving a second partition of the data, the second thread beginning the operation on the second partition of the data;

    tracking progress of the operation using a replicated data structure at each of the first thread and the second thread, the replicated data structure comprising a logical time, the logical time being a tuple comprising at least an integer representing an epoch and an integer representing an iteration;

    adding a timestamp to a record for processing at each of the first thread and the second thread, the timestamp corresponding to the logical time the record was produced;

    storing the timestamp in the replicated data structure;

    determining a number of yet to be processed records from the replicated data structure for at least one of the first thread or the second thread; and

    when the number of yet to be processed records for the first thread or the second thread reaches zero and the timestamp includes the highest iteration in the replicated data structure for one of the first thread or the second thread, terminating the one of the first thread or the second thread.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×