LearnViz CompSci
Home / Learn / Concurrency & Parallelism / Amdahl's Law

Beginner Topic 3 of 51 Concurrency & Parallelism

Amdahl's Law

Formula bounding speedup by the serial fraction.

How it works

Amdahl's law gives the theoretical maximum speedup from parallelizing a program: if a fraction p of the work can be parallelized over n processors and the rest 1 minus p is serial, speedup is 1 divided by ((1 minus p) plus p over n). As n grows, speedup approaches 1/(1 minus p), so a program that is 95 percent parallel can never exceed a 20 times speedup. Gustafson's law counters that larger problems scale the parallel portion, giving scaled speedup.

Where it is used

Capacity planning for multicore and cluster hardware, deciding whether to parallelize and where to optimize use Amdahl's law to estimate returns.

Common pitfall

It assumes fixed problem size and ignores overhead from communication and synchronization, so real speedups are lower. Misjudging the serial fraction gives unrealistic expectations. It highlights that optimizing the serial part can matter more than adding cores. Measure serial and parallel parts, consider problem scaling and look at efficiency, speedup divided by processors.

Where it fits in the course

Amdahl's Law is topic 3 of 51 in Concurrency & Parallelism, rated Beginner. It follows Sequential Bottlenecks. The next topic is Threads in Practice.

Practice and explore

How to study this topic

  1. Read the explanation above and restate the definition in your own words.
  2. Open the interactive lesson and answer its mini quiz.
  3. Read the common pitfall, then write a short example that avoids it.
  4. Check your understanding in the Concurrency & Parallelism quiz, and revisit the topic if you miss a question.

Frequently asked questions

What is Amdahl's Law?
Formula bounding speedup by the serial fraction. It belongs to Concurrency & Parallelism and is a beginner-level topic.
Where do people use Amdahl's Law?
Capacity planning for multicore and cluster hardware, deciding whether to parallelize and where to optimize use Amdahl's law to estimate returns.
What is the most common mistake with Amdahl's Law?
It assumes fixed problem size and ignores overhead from communication and synchronization, so real speedups are lower.
What should I learn before this topic?
Start with Sequential Bottlenecks, the topic just before it in Concurrency & Parallelism.
How can I practice it?
Answer the mini quiz in the interactive lesson, then take the Concurrency & Parallelism quiz.
Is Amdahl's Law hard to learn?
It is a Beginner topic, so it works as an entry point. If the terms are new, read the explanation twice and try the visualizer before the quiz.
How long does it take to learn Amdahl's Law?
Most learners can read the explanation and finish the interactive lesson in under an hour. Fluency comes from applying the idea, so plan a few short practice sessions with the quiz.
Which topics are related to Amdahl's Law?
Sequential Bottlenecks, Threads in Practice, Concurrency vs Parallelism are closely connected. The full list is in the related topics section of this page.
What should I study after Amdahl's Law?
Continue with Threads in Practice, the next topic in Concurrency & Parallelism.

Related topics