Computing Library › HPC & Compute
HPC & Compute

Weak versus Strong Scaling

Strong scaling fixes the problem size and adds processors; weak scaling grows the problem with the processors, and each answers a different question.

Two ways to scale

Strong scaling holds the total problem size fixed and increases the number of processors, asking how much faster a given problem can be solved. Weak scaling increases the problem size in proportion to the processors, keeping the work per processor constant, asking how large a problem can be solved in a fixed time. They probe different limits and are governed by different laws.

What limits each

Kronos motion — confinement scaling

Strong scaling is bounded by Amdahl's law: the serial fraction and the fixed communication overhead do not shrink as processors are added, so speedup saturates and eventually reverses when communication overtakes the ever-smaller per-processor work. Weak scaling is described by Gustafson's law: because the useful work per processor stays constant, near-linear scaling can continue much further, limited mainly by communication that grows with scale (such as global collectives).

Reading a scaling study

A strong-scaling plot shows speedup versus processor count against an ideal linear line; the point where the curve peels away marks where overhead began to dominate, often because the per-processor problem became too small to amortize communication. A weak-scaling plot shows efficiency (time relative to the single-node baseline) versus processor count; a flat line near one is excellent, and any droop reveals communication or imbalance growing with scale.

In practice

Reporting both for a Hyperion solver is standard: strong scaling shows how quickly a fixed case can be turned around, while weak scaling shows how finely a plasma or blanket model can be resolved as more nodes are added. Stating which was measured, and at what per-processor work, is essential for the numbers to mean anything.