Communication Scenarios
Network topology, transfer costs, and collective communication.
Source locations
- Inputs and calculations:
mlsysim/engine/scenario_definitions/communication.py. - Named configurations:
mlsysim/engine/scenario_catalog/communication/. - Result schemas:
mlsysim/engine/result_types/communication.py.
Public imports and existing class reference URLs remain stable.
Scenario contracts
- AllReduceScheduleScenario: One buffer reduced by ring, simple tree, and parameter server at each of
group_sizes. - AllToAllDispatchScenario: One expert-parallel dispatch:
total_tokensofhidden_dimvalues overn_devicesholdingn_experts. - AlphaBetaScenario: Named messages on named paths, each path an
alphastartup and abetabandwidth. - BandwidthDelayScenario: Data a link carries during
delay: line rate times delay (for example, a Go-Back-N resend window). - ComponentExposureScenario: Independent components, each affected with
probability(per day, or at one instant). - CompressionPaybackScenario: One synchronization compressed by
compression_ratioat a codec cost ofcodec_time. - CompressionRunScenario: A run to a quality target with and without gradient compression on several networks.
- DataParallelIntensityScenario: Communication intensity of one data-parallel worker of
workload. - ErrorFeedbackScenario: A rounding compressor applied to a gradient sequence, with and without error feedback.
- FatTreeScenario: A non-blocking fat-tree of radix-
radixswitches (Al-Fares et al. 2008). - GradientSyncScenario: A data-parallel step of
workload: compute, then a ring AllReduce over each link. - HierarchicalAllReduceScenario: A buffer AllReduced over
n_nodesnodes ofgpus_per_nodeGPUs, in three phases or one flat ring. - HopPathScenario: Named paths through
hopsidentical switch traversals ofhop_latencyeach. - IncastScenario:
n_sendersatsender_bandwidthinto one egress port with abuffer. - LinkBuildoutScenario:
links_per_devicelinks per accelerator offleet, each with a price and a module power. - MessageFusionScenario:
countsmall messages sent one by one against one fused message on the same path. - NicSharingScenario: One NIC split into
n_virtual_functionsrate-capped slices, and a burst at full line rate. - OverlapBudgetScenario: Layer-by-layer gradient AllReduce of
workload: sequential against overlapped with backward. - OversubscriptionScenario: A ring AllReduce whose edges all cross the bisection of
fleet, at 1:1 and atoversubscription_ratio. - PropagationScenario: A request sent
distanceover fiber and answered; optionally a budget and a measured round trip. - ResidualShareScenario: A residual equal to
residualof the one-device step, ondevicesdevices. - RingAttentionScenario: Ring attention on
accelerator: the smallest chunk that hides each K/V tile, per link. - RingTraceScenario: A ring AllReduce traced step by step on one short integer vector per GPU.
- SensorUplinkScenario:
streamsraw video streams against a shared link, and the event records that replace them. - SilentSlowdownScenario: A run on
fleetslowed a few percent by a degraded link, with no alarm. - SlowdownDiagnosisScenario: A training step that slowed, and a pairwise link test that finds one link at a fraction of its rate.
- SyncStrategyScenario: Data-parallel training to a fixed target under one synchronization strategy.
- TensorParallelScenario: The activation AllReduces of one tensor-parallel step of
workload. - TorusScenario:
n_endpointsas a cubic torus against a non-blocking fat-tree, at equal per-link bandwidth. - TransferScenario:
copiesof onepayloadmoved at once over each named link tier.