Expand description
eval_choreography — the executable MEANING of a placed + scheduled spatial program.
Every engine program runs as a coroutine over bounded FIFOs, semaphores and accumulators with tt-metal’s
enabling rules (a reserve needs free capacity, a push needs a reservation carrying data, a wait needs
pages, a multicast needs every receiver’s reservation, a semaphore wait needs its value). A round in
which no program can step while some are unfinished is a Deadlock; every protocol slip is a typed
ChoreoFault. Five schedulers must agree (Kahn determinacy, executed). The numerics per tile are the
systolic references: integer operands accumulate in wrapping i64 (I32 truncates at pack), float
operands accumulate in f32 K-ascending exactly as eval_systolic_bf16, and a spill to a narrower
intermediate rounds exactly where the schedule spills. This is the golden oracle every lowering is
proven against.
Structs§
Enums§
- Choreo
Fault - Scheduler
- Value
- A tensor’s elements, row-major over its element shape.
Constants§
- INDIRECT_
MAP_ DEFERRED - The refusal an element-level SCATTER earns: an indirect term on a compute stage’s OUTPUT map. Gathers (an
indirect term on an operand map, an
IndirectTileon a Load) and tile scatters (anIndirectTileon a Store) have semantics; an element scatter does not, and nothing lowers one.
Functions§
- eval_
choreography - The meaning of a scheduled program under the round-robin scheduler.
- eval_
choreography_ confluent - Run five schedulers and demand bit-equal outputs — Kahn determinacy, executed.
- eval_
choreography_ dry - A token-only run: every choreography check (reservations, pushes, waits, semaphore protocol, multicast landing, accumulator protocol, store coverage) with no arithmetic — the certificate’s dry run, every trip at its greatest count.
- eval_
choreography_ dry_ at eval_choreography_drywith each triptcountingcounts[t].- eval_
choreography_ every_ tensor eval_choreographywith EVERY tensor the program holds at the end in the outputs — its activations and parameters as well as its results: the values a segment of a composed program starts from, and must reach.- eval_
choreography_ traced - eval_
choreography_ traced_ with - eval_
choreography_ with - program_
sites - Every site any program runs on (a placement view for the lowerings).
- round_
to - A value as the datapath of precision
pstores it (bf16 / fp16 / fp32 rounding; integers untouched). - trip_
counts - The count of each of
p’s trips oninputs, in trip order: elementelemof the trip’s input — as the tensor holds it, at its own precision — throughTrip::count_of. An inputinputsdoes not carry reads the tensor’s declared fill.