
Variables
Description
What is this formula?
Amdahl's Law predicts the theoretical maximum speedup that can be achieved by parallelizing part of a program.
It is one of the most important equations in parallel computing and performance engineering.
The law shows that the non-parallelizable portion of a program ultimately limits overall performance gains, regardless of how many processors are added.
When to use it
Use this formula when:
- evaluating parallel algorithms,
- estimating multicore performance,
- designing distributed systems,
- analyzing scalability limits,
- comparing hardware upgrades.
Example
Suppose:
P = 0.90
N = 8 processors
Formula:
S = 1 / ((1 - P) + (P / N))
Substitution:
S = 1 / ((1 - 0.90) + (0.90 / 8))
S = 1 / (0.10 + 0.1125)
S = 4.706
Result:
Maximum theoretical speedup = 4.71×
Even with 8 processors, the remaining serial portion prevents achieving an 8× speedup.
Applications
- Parallel computing
- High-performance computing
- Multicore processor analysis
- Cloud computing
- Software scalability studies
- Distributed systems engineering
Note
Amdahl's Law is a theoretical model that assumes a fixed workload and constant parallel efficiency. Real systems may experience additional limitations due to communication overhead, synchronization costs, memory contention, and load imbalance. Gustafson's Law is often used as an alternative model when problem size increases with processor count.
