Skip to main content

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.43

Attributes

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)}.

Back to top