FanoutDeadlineScenario
Agents scenarios · Implementation: mlsysim/engine/scenario_definitions/agents.py.
Construct this scenario with keyword inputs. The fields below show the types and defaults declared by this class.
A fan-out whose workers each finish by the deadline with one probability, independently.
An all-results barrier needs every worker (horizon compounding across workers); a quorum contract accepts any required of workers.
Notes
Equation: All-results probability is p**workers; quorum probability is the binomial tail at required successes.
Assumptions: Workers have identical independent on-time probabilities supplied externally.
Excludes: Correlated stalls and an inferred latency distribution; deadline labels the supplied probability.
References
Derivation: the scenario composes mlsysim.physics.agents.calc_first_horizon_below, mlsysim.physics.agents.calc_unchecked_success, mlsysim.physics.coordination.calc_binomial_tail. Their contracts supply the underlying equations; property equations show the remaining unit conversions and accounting.
Examples
>>> from mlsysim import Scenarios
>>> scenario = Scenarios.EightWorkerDeadlineFanout
>>> value = scenario.all_on_time
>>> round(float(value), 3)
0.43Attributes
| Name | Description |
|---|---|
| all_on_time | Probability that every worker meets the deadline, using independent worker success |
| all_on_time_by_fleet | Map each fleet size to its dimensionless all-results success probability. |
| deadline | |
| even_odds_workers | Smallest worker count whose all-results success probability is below one half. |
| max_fleet | |
| on_time_probability | |
| quorum_on_time | Probability that at least required workers finish on time, using the binomial upper |
| required | |
| workers |
workers
Type: int.
Declared default: required.
required
Type: int.
Declared default: required.
on_time_probability
Type: float.
Declared default: required.
deadline
Type: Quantity.
Declared default: required.
max_fleet
Type: int.
Declared default: required.
all_on_time
engine.scenario_types.FanoutDeadlineScenario.all_on_time
Probability that every worker meets the deadline, using independent worker success compounding.
Equation: calc_unchecked_success(on_time_probability, workers).
quorum_on_time
engine.scenario_types.FanoutDeadlineScenario.quorum_on_time
Probability that at least required workers finish on time, using the binomial upper tail.
Equation: calc_binomial_tail(workers, on_time_probability, required).
even_odds_workers
engine.scenario_types.FanoutDeadlineScenario.even_odds_workers
Smallest worker count whose all-results success probability is below one half.
Equation: calc_first_horizon_below(on_time_probability, 0.5).
all_on_time_by_fleet
engine.scenario_types.FanoutDeadlineScenario.all_on_time_by_fleet
Map each fleet size to its dimensionless all-results success probability.
Equation: {n: calc_unchecked_success(on_time_probability, n) for n in range(1, max_fleet + 1)}.