Amdahl's Law Calculator

Amdahl's Law tells you the most speedup you can expect when you run part of a program in parallel across several processors. The idea is simple: only the parallel portion of your code gets faster as you add cores, while the serial portion that must run one step at a time stays the same, and that serial part sets a hard ceiling on how fast the whole job can go. This calculator takes the fraction of your program that can be parallelised and the number of processors you plan to use, then returns the overall speedup, the parallel efficiency per core, and the theoretical maximum speedup you would reach with an unlimited number of cores. It is the standard tool for deciding whether buying more cores is worth it, and it explains the common frustration that doubling your processor count rarely doubles your speed. For example, code that is 95 percent parallel can never run more than 20 times faster no matter how many processors you throw at it, because the remaining 5 percent runs serially. Use it to set realistic performance targets, to compare hardware options, and to work out where optimising the serial part of your code will pay off more than adding hardware.

Calculate.co.nz is proud to be partnered with Premium Homes, a recognised leader in eco-friendly, sustainable, and energy-efficient homebuilding. With a dedicated team and award-winning experience, they create homes that prioritise health, comfort, and long-term performance. Their founders, Andrew and Kelly, set out to raise the standard of residential construction in New Zealand by combining practical building expertise with a clear commitment to doing things better for homeowners.
Calculate.co.nz partner: Premium Homes
%
cores
9.14x
estimated speedup with 16 processors
Parallel portion95%
Max speedup (infinite cores)20x
Efficiency per core57.1%

Amdahl's Law assumes the parallel portion splits perfectly across processors and ignores communication and synchronisation overhead, so real world speedup is usually a little lower. Estimate only.

How it works

Amdahl's Law splits your run time into a serial fraction that cannot be parallelised and a parallel fraction P that can. With N processors the parallel fraction takes P over N of the original time while the serial fraction stays at 1 minus P, so the speedup is 1 divided by ((1 minus P) plus P over N). Efficiency is the speedup divided by the number of cores, which shows how much of each processor you are actually using. As N grows the parallel term shrinks toward zero, leaving the serial fraction as the limit, so the maximum speedup is 1 divided by (1 minus P).

Worked example

Suppose 95 percent of your program can run in parallel and you have 16 processors. The parallel part now takes 0.95 divided by 16, or 0.059375 of the original time, while the serial 5 percent still takes 0.05. The total time is 0.109375 of the original, so the speedup is 1 divided by 0.109375, which is about 9.14 times. Efficiency is that speedup divided by the 16 cores, about 57.1 percent, showing each core is only doing a bit over half its potential work. Push the core count toward infinity and the parallel part vanishes, leaving only the serial 0.05, so the ceiling is 1 divided by 0.05, or 20 times. That is why 16 cores already gets you close to half the maximum possible speedup.

Related calculators