Skip to content

Amdahl's Law

Bound the fixed-workload speedup from accelerating one fraction of execution while the unaffected fraction remains a limiting serial bottleneck.

Version
v4 · 2026-09-19 · History
Domain-specific #
1278
Domain group
Applied Sciences & Engineering
Origin domain
Computer Science & Software Engineering
Subdomain
Parallel Computing → Computer Science & Software Engineering
Aliases
Amdahl's argument

Core Idea

Amdahl's Law is a fixed-workload performance model. It states how much the execution time of one unchanged job can improve when only a fraction of that job benefits from an enhancement. Let the one-resource baseline time be normalized to (1). Let \(p\in[0,1]\) be the fraction of that baseline time that can be parallelized, and let (1-p) be the unaffected or serial fraction. If the parallelizable work is ideally divided among \(N\geq1\) identical processing resources, with no communication, synchronization, scheduling, or load-imbalance cost, then

How would you explain it like I'm…

The Part Nobody Can Share

Imagine you and your friends are making a big picture together. Coloring can be shared, so more friends make that part faster. But if one kid has to draw all the outlines first, more friends can't speed that part up. So no matter how many friends help, the picture can't get done faster than that one kid's part. That's Amdahl's Law.

More Helpers, Limited Speed

Amdahl's Law is a rule about how much faster a job can get when you add more computers or helpers to it. Usually, part of the job can be split up and shared, and part of it has to be done one step at a time. Adding helpers makes the shareable part faster, but the one-at-a-time part stays the same. So there is a limit: if even a small part cannot be shared, the whole job can never go faster than that part allows. The rule assumes the job stays the same size and the sharing is perfect, with no time wasted on coordinating.

Serial Fraction Caps Speedup

Amdahl's Law predicts the speedup of a fixed job when only part of it can be improved, such as by running it on more processors. If p is the fraction of the original running time that can be parallelized and 1 − p is the serial fraction, then with N processors the new time is (1 − p) + p/N of the original, and the speedup is 1 / ((1 − p) + p/N). Adding processors shrinks the p/N term but never the 1 − p term, so as N grows, the speedup approaches 1/(1 − p). For example, if 5% of the time is serial, the best possible speedup is 20 times. The law assumes a fixed amount of work and perfect division with no communication or coordination costs, so it's a limit under stated conditions, not a prediction of real performance.

 

Amdahl's Law is a fixed-workload performance model giving the improvement in execution time of one unchanged job when only a fraction of it benefits from an enhancement. With the single-resource baseline time normalized to 1, let p ∈ [0, 1] be the fraction of that baseline time that is parallelizable and 1 − p the serial fraction. Ideally dividing the parallel portion among N ≥ 1 identical resources, with no communication, synchronization, scheduling or load-imbalance costs, gives T_N/T_1 = (1 − p) + p/N and speedup S(N) = 1/((1 − p) + p/N). Because added resources reduce only p/N, for p < 1 the speedup tends to 1/(1 − p) as N → ∞; a 5% serial fraction caps ideal speedup at 20×. Gene Amdahl made the argument in 1967 while challenging projections for large-scale parallel organization, and later literature presents the normalized equation as the law. It is a conditional bound: the fixed workload, common baseline, fractions measured on the baseline and idealized acceleration are constitutive, and if problem size scales with resources, fractions change or overheads are added, one has moved to a different performance model.

Cross-Domain Echoes

See how this entry connects to another domain.

Scope of Application

Amdahl's Law is used in parallel algorithm analysis, high-performance computing, multiprocessor design, hardware-accelerator evaluation, compiler optimization, database execution, and performance engineering. It supports strong-scaling analysis: hold problem size fixed and ask how execution time changes as processors increase. The same affected-fraction reasoning also evaluates nonparallel enhancements such as improving a memory operation, accelerating a kernel on a GPU, or replacing a subsystem, provided the baseline fractions and local acceleration are coherent.

Clarity

The most reliable reading separates three quantities. First, (p) is a fraction of baseline execution time, not the percentage of source lines, operations, or processors. Second, (S(N)) is whole-job speedup for a fixed workload, not the local acceleration (N) of the parallel part. Third, (E(N)=S(N)/N) is efficiency, not speedup.

Manages Complexity

The law compresses a complicated program and machine into two accounting classes plus one acceleration factor. That deliberate abstraction answers a high-value question without requiring instruction-level simulation: whether further investment in the enhanced component can materially improve end-to-end time. It exposes the difference between a large local gain and a small global gain, identifies when the limiting fraction deserves redesign, and prevents resource-count optimism from replacing workload accounting.

Abstract Reasoning

Amdahl's Law licenses several deductions. First, the asymptotic ceiling is set entirely by the unaffected fraction: reducing (1-p) can matter more than multiplying (N). Second, a target speedup (S^) requires (1-p<1/S^) even with unbounded acceleration. Third, for finite (N), solving (p=(1-1/S)/(1-1/N)) gives the ideal parallel fraction consistent with an observed speedup, provided the assumptions are credible. This inversion is algebraically the complement of the Karp–Flatt effective serial fraction.

Knowledge Transfer

Within computing, the exact pattern transfers from processor parallelism to vectorization, storage acceleration, network offload, database indexing, GPU kernels, and compiler optimization. The analyst identifies the fraction affected, estimates its local acceleration, and recombines it with untouched time. This is exact in-domain reuse because the quantities retain execution-time semantics.

The portable residue is a bottleneck principle: improving only one component yields an end-to-end gain bounded by the share of the outcome that component controls.

Relationships to Other Abstractions

Local relationship map for Amdahl's LawParents appear above the current abstraction, mutual partners to the right, and children below. Node labels state whether each abstraction is prime or domain-specific; colors identify relation types.Amdahl's LawDOMAINPrime abstraction: Bottleneck — is a kind ofBottleneckPRIMEPrime abstraction: Scalability — is a kind ofScalabilityPRIME

Current abstraction Amdahl's Law Domain-specific

Parents (2) — outgoing typed relations

  • Amdahl's Law is a kind of Bottleneck Prime

    Bottleneck. The unaffected fraction instantiates a bottleneck: as (N) grows, it becomes the binding contribution to elapsed time and fixes the ceiling.

  • Amdahl's Law is a kind of Scalability Prime

    Scalability. Amdahl's Law is a specific fixed-workload scalability model.

Hierarchy paths (4) — routes to 4 parentless roots

Neighborhood in Abstraction Space

Amdahl's Law sits in a sparse region of the domain-specific corpus (98th percentile for distinctiveness): few abstractions share its structure, so a faithful description tends to retrieve it precisely.

Family — Unclustered & Miscellaneous (2769 abstractions)

Nearest neighbors

Computed from structural-signature embeddings · 2026-10-25