tfp.experimental.auto_batching.stackless.ExecutionQueue

View source on GitHub

A priority queue of resumption points.

Each resumption point is a pair of program counter to resume, and mask of threads that are waiting there.

This class is a simple wrapper around Python's standard heapq implementation of priority queues. There are just two subtleties:

  • Dequeue gets all the threads that were waiting at that point, by coalescing multiple entries if needed.

  • Enqueue drops entries with empty masks, because they need never be resumed.

Methods

dequeue

View source

enqueue

View source