Model how an LLM training step splits across a GPU cluster — then run it: the simulation
executes on the ChipFoundryServices distributed compute pool. A run is cut along three orthogonal axes
whose product must divide the cluster, num_gpus = TP × PP × DP.
Tensor parallel (TP) shards each layer’s matmuls and pays four activation all-reduces per
layer — bandwidth-hungry, so keep it inside one NVLink node. Pipeline parallel (PP) cuts the
layer stack into stages joined by small point-to-point sends, but leaves a fill/drain bubble
(PP−1)/(micro-batches+PP−1) of idle time. Data parallel (DP) replicates the
model and does one gradient all-reduce per step, usually hidden behind the backward pass. The node
rooflines the per-GPU compute (6 × params × tokens FLOPs), adds the exposed
TP / PP / DP collectives and the bubble, and returns the step time, the strong-scaling efficiency /
model-FLOPs utilisation (MFU), the dominant bottleneck and token throughput — the same
TP-vs-PP-vs-DP and interconnect-bandwidth trade-offs that decide how efficiently a Transformer trains on
hundreds of accelerators. Reduced-order educational model. See also the
power & thermal, training-memory,
KV-cache, HBM bandwidth,
systolic array, transistor I-V,
thermal, interconnect RC,
die-yield, 6T SRAM, CMP planarization and
lithography simulators and the
compute-pool status.
curl -X POST https://www.chipfoundryservices.com/edge/parallelism \
-H "Content-Type: application/json" \
-d '{"model_params_b":70,"num_gpus":64,"tensor_parallel":8,"pipeline_parallel":4,
"micro_batch":1,"gradient_accum_steps":16,"seq_length":4096,"hidden_dim":8192,
"num_layers":80,"link_bandwidth_gb_s":450,"compute_tflops":500}'
Returns JSON with outputs (data_parallel, used_gpus, idle_gpus, valid_layout,
tokens_per_step, compute_time_ms, tp_comm_ms, pp_comm_ms, pipeline_bubble_ms, dp_allreduce_ms,
dp_allreduce_raw_ms, step_time_ms, comm_fraction_percent, bubble_fraction_percent,
scaling_efficiency_percent, mfu_percent, achieved_tflops_per_gpu, throughput_tokens_s,
per_gpu_tokens_s, bottleneck, verdict), the full profile (48-point
eff_vs_gpus strong-scaling and eff_vs_bw interconnect sweeps, plus
compute_ms, tp_ms, pp_ms, bubble_ms,
dp_ms, step_ms, num_gpus, link_bandwidth_gb_s,
mfu_percent), the serving node, and compute_ms. Endpoint aliases
/edge/parallel, /edge/3d, /edge/tp, /edge/pp,
/edge/allreduce.