Skip to main content

Communication Scenarios

Network topology, transfer costs, and collective communication.

All domains · Classes A–Z

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_tokens of hidden_dim values over n_devices holding n_experts.
  • AlphaBetaScenario: Named messages on named paths, each path an alpha startup and a beta bandwidth.
  • 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_ratio at a codec cost of codec_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-radix switches (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_nodes nodes of gpus_per_node GPUs, in three phases or one flat ring.
  • HopPathScenario: Named paths through hops identical switch traversals of hop_latency each.
  • IncastScenario: n_senders at sender_bandwidth into one egress port with a buffer.
  • LinkBuildoutScenario: links_per_device links per accelerator of fleet, each with a price and a module power.
  • MessageFusionScenario: count small messages sent one by one against one fused message on the same path.
  • NicSharingScenario: One NIC split into n_virtual_functions rate-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 at oversubscription_ratio.
  • PropagationScenario: A request sent distance over fiber and answered; optionally a budget and a measured round trip.
  • ResidualShareScenario: A residual equal to residual of the one-device step, on devices devices.
  • 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: streams raw video streams against a shared link, and the event records that replace them.
  • SilentSlowdownScenario: A run on fleet slowed 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_endpoints as a cubic torus against a non-blocking fat-tree, at equal per-link bandwidth.
  • TransferScenario: copies of one payload moved at once over each named link tier.
Back to top