3 Graphcore Patent- Scheduler Control

Scheduler Control

The scheduler is controlled by the two commands EXIT and RUN. EXIT gives the worker’s time slot back to the supervisor. While the supervisor issues the RUN instruction to give the SLOT to a particular worker. Some embodiments include a RUNALL which sets multiple workers in a single instruction.

The complexities of Exit

Embodiments can vary in the complexity of how a worker exits its timeslot. This comes from the variety of potential amounts of information that one would want to receive from a workers process. The proposal was essentially an aggregator, of either a single or multi bits. The complexities include if ALL workers failed, if AT LEAST ONE worker failed, or if SOME MIX of workers failed.

The meaning of the bits is given to the programmer via the EXIT operands and the supervisors ‘EXIT STATUS REGISTER’. Programmatically one could choose to exit failure with either 0 or 1, and then the ESR can be interpreted any number of ways.


The ESR can be used to have workers feedback convergence information. In machine intelligence, often you want to manipulate a graph until some level of error or probability converges to a degree of n error. For instance, workers could test for results less than or greater than n and EXIT accordingly. Said results could be regions of error, degrees of confidence, etc.