Lockstep.Strategy.FairPCT (Lockstep v0.1.0)

Copy Markdown View Source

PCT for the first K steps, then uniform random walk.

Coyote uses this hybrid as a probabilistically-fair PCT. Pure PCT can livelock on programs with spin loops because a high-priority process spinning on a low-priority process starves it. After step K we fall back to random scheduling, which is probabilistically fair.

Options

Inherits all of Lockstep.Strategy.PCT's options, plus:

  • :fair_switch — step at which to flip to random; defaults to div(max_steps, 2).