Amdahl's Law
\[S=\frac{1}{(1-P)+\frac{P}{N}}\]

Variables

Sspeedup factor
Pparallelizable fraction of the program
Nnumber of processors

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.

fCalc · Android

Take this formula to fCalc and evaluate it directly on your Android device.

Get it on Google Play

Content language

EnglishSpanish