Skip to main content
ExplainerComputer ArchitectureExplainer· 4 min read· in Opinion

The Amdahl Constraint: Why Parallel Computing's Speedup Is Always Limited by the Sequential Fraction of the Code

Gene Amdahl's 1967 formula proves that no matter how many processors are added to a system, the maximum possible speedup is strictly dictated by the portion of the code that cannot be parallelized.

By Salma Barakat

Hardware Architects 40%Software Engineers 35%HPC Researchers 25%
Hardware Architects
Focus on optimizing single-thread performance and specialized accelerators to mitigate the physical limits of sequential processing.
Software Engineers
Emphasize profiling and rewriting algorithms to minimize lock contentions and increase the parallelizable fraction of the code.
HPC Researchers
Argue that weak scaling and increasing problem sizes allow supercomputers to bypass Amdahl's limits in practical scientific applications.

Perspectives this story doesn't cover

  • Quantum Computing Theorists
  • Compiler Designers

Imagine a computational task that takes exactly 100 hours to complete on a single processor. If 95 of those hours can be divided perfectly among an infinite number of workers, but the remaining five hours consist of sequential steps that must be executed one after another, the absolute minimum time to finish the task is five hours. The maximum theoretical speedup, regardless of whether you deploy ten cores or ten million, is capped at 20 times the original speed.

This hard mathematical ceiling is not a flaw in modern hardware, but a fundamental law of computer science. First articulated in 1967 by computer architect Gene Amdahl at the American Federation of Information Processing Societies (AFIPS) Spring Joint Computer Conference, the principle dictates that the sequential fraction of a program disproportionately restricts its overall acceleration.[1]

The argument is transparent and unforgiving. As defined in "Measuring Computer Performance," the core thesis is "essentially that the overall performance improvement observed in an application program is limited by that portion of the application that is unaffected by whatever change was made to the system."[5]

In mathematical terms, this is expressed as a specific constraint on latency speedup. The formula dictates that the speedup is equal to one divided by the sum of the sequential fraction and the parallel fraction divided by the number of processors. Here, the parallel fraction represents the proportion of the execution time that can be distributed, the sequential fraction is the strictly linear proportion, and the denominator accounts for the hardware scale.[2]

The mathematical formula demonstrating how the sequential fraction (1-P) acts as an immovable denominator, capping total speedup.

To see the constraint in action, consider a software application where 90 percent of the code can run in parallel and 10 percent is sequential. If an engineering team upgrades their server from a single core to a 10-core machine, the formula yields a speedup of 5.26 times.[2][4]

If that same team decides to spend heavily on a 1,000-core supercomputer cluster to run the exact same workload, the math delivers a brutal reality check. The speedup only reaches 9.91 times. The 990 additional processors provided almost zero marginal return because the 10 percent sequential bottleneck now dominates the execution time.[3][8]

This asymptotic limit explains why the technology industry's relentless push toward multi-core processors—shipping consumer chips with 16, 24, or even 64 cores—often fails to translate into proportional performance gains for everyday desktop software.[7]

Regardless of how many processors are added, the maximum speedup flattens out at a hard ceiling dictated by the sequential code.

A 2023 analysis highlights that while parallel computing architectures are essential for modern data processing, the overhead of coordinating multiple processors—such as thread synchronization and data transfer—can actually degrade performance if the parallel fraction is not sufficiently large.[6]

The strongest counter-argument to this pessimistic boundary comes from John Gustafson, who introduced Gustafson's Law in 1988. Gustafson argued that the assumption of a fixed workload size, known as Strong Scaling, does not reflect how humans actually use massive computing power.[3][4]

The strongest counter-argument to this pessimistic boundary comes from John Gustafson, who introduced Gustafson's Law in 1988.

When researchers gain access to a larger supercomputer, they rarely use it to solve the exact same problem faster. Instead, they scale up the problem size—simulating a larger weather system, rendering a higher-resolution image, or training a more complex neural network.[8]

In Gustafson's model, known as Weak Scaling, the sequential fraction does not remain static. As the overall problem size grows, the parallelizable portion typically grows much faster than the sequential setup and teardown phases, allowing the system to achieve near-linear speedups on massive datasets.[3][7]

While Amdahl's Law assumes a fixed problem size (Strong Scaling), Gustafson's Law observes that adding processors usually allows for computing larger problems (Weak Scaling).

Yet, the original 1967 constraint remains binding for latency-sensitive applications where the problem size cannot be arbitrarily increased. A database query that must return in 50 milliseconds cannot be scaled up; it simply must execute faster.[1][6]

This dynamic forces a structural divergence in hardware design. Because single-thread performance remains the ultimate bottleneck for sequential code, CPU architects continue to dedicate massive silicon area to branch prediction, out-of-order execution, and larger caches just to squeeze out single-digit percentage gains in sequential speed.[4]

Because sequential code cannot be distributed, CPU architects dedicate massive silicon area to optimizing single-thread performance.

Meanwhile, workloads that genuinely possess a parallel fraction approaching 99.9 percent—such as graphics rendering and matrix multiplication for artificial intelligence—have migrated entirely away from general-purpose CPUs.[8]

These highly parallel tasks are instead executed on Graphics Processing Units and Tensor Processing Units, which abandon complex sequential optimizations in favor of packing thousands of simpler, slower cores onto a single chip.[7][8]

The boundary established six decades ago continues to dictate the economics of cloud computing. Renting a massive 128-core virtual machine on Amazon Web Services or Microsoft Azure is a waste of capital if the deployed application is heavily serialized.[6]

Software engineers must therefore profile their code meticulously, identifying the exact sequential fraction before provisioning hardware. If a lock contention or a sequential data dependency exists, throwing more silicon at the problem will only increase costs, not throughput.[4][6]

The next frontier in computational acceleration will not come from simply inflating core counts, but from algorithmic breakthroughs that rewrite sequential dependencies into parallelizable structures, pushing the parallel fraction ever closer to one.[8]

What to know

  • Amdahl's Law proves that the maximum speedup of a parallel computing system is strictly limited by the portion of the code that must be executed sequentially.
  • Even with an infinite number of processors, an application with just 5 percent sequential code can never run more than 20 times faster.
  • The law explains why simply adding more cores to consumer CPUs does not yield proportional performance gains for everyday software.
  • Gustafson's Law counters this by showing that in high-performance computing, researchers scale the problem size up as they add processors, minimizing the sequential bottleneck.
  • The physical limits of sequential processing force hardware architects to design specialized chips, like GPUs, for highly parallel workloads.

Key terms

Amdahl's Law
A formula used in computer science to find the maximum expected improvement to an overall system when only part of the system is improved.
Strong Scaling
Measuring how the time to solve a fixed-size problem decreases as the number of processors increases.
Weak Scaling
Measuring how the time to solve a problem varies as the number of processors increases, while keeping the problem size per processor constant.
Thread Synchronization
The mechanism that ensures that two or more concurrent processes or threads do not simultaneously execute a particular program segment, creating a sequential bottleneck.

Sources

Source coverage

9 outlets

3 viewpoints surfaced

Hardware Architects 40%Software Engineers 35%HPC Researchers 25%
  1. [1]AFIPS Conference ProceedingsHPC Researchers

    Validity of the Single Processor Approach to Achieving Large Scale Computing Capabilities

    Read on AFIPS Conference Proceedings
  2. [2]OracleHardware Architects

    3.5.1 Amdahl's Law

    Read on Oracle
  3. [3]Computer Systems FundamentalsHardware Architects

    9.4. Limits of Parallelism and Scaling

    Read on Computer Systems Fundamentals
  4. [4]UC BerkeleySoftware Engineers

    Amdahl's Law - CS 61C Course Notes

    Read on UC Berkeley
  5. [5]Measuring Computer PerformanceHPC Researchers

    Amdahl's argument is essentially that the overall performance improvement observed in an application program is limited by that portion of the application that is unaffected by whatever change was made to the system.

    Read on Measuring Computer Performance
  6. [6]SplunkSoftware Engineers

    Amdahl's Law: Understanding the Basics

    Read on Splunk
  7. [7]Built InSoftware Engineers

    What is Amdahl's Law? (Definition, Formula, Examples)

    Read on Built In
  8. [8]arXivHPC Researchers

    How Amdahl's law restricts supercomputer applications and building ever bigger supercomputers

    Read on arXiv
  9. [9]Factlen Editorial Team

    Synthesis by Factlen editorial team

    Read on Factlen Editorial Team

Comments

Stay informed

Every angle. Every day.

Get Opinion stories with full source coverage and perspective breakdowns delivered to your inbox.