Amdahls Law

Proposed in 1967, Amdahls' Law examines the theoretical maximum speedup obtained by using parallel processing.

If N is the number of processors, s is the time spent by a processor on serial part of a program, and p is the time spent by a processor on a parallel part of a program, then the maximum possible speedup is given by: which simplifies (by setting s+p=1) to This "Law" has been re-evaluated since and its underlying assumptions challenged. TheInterestedReader might choose to look at


Although we should point out that Gustavson's Law which modifies Amdahl's Law only applies in somewhat exotic circumstances such as massively parallel systems rather than just ordinary clustering.


The section below was added by Juan Jose Arrieta-Camacho (http://hysteria.cheme.cmu.edu) based on Steinar Hauan's (www.andrew.cmu.edu/~steinhau) lecture notes on High Performance Computing

Amdahl's Law: If ts is the run time and f its parallelizable fraction, with n CPUs, the total time tt becomes:

assuming infinite amount of processors and perfect communication (i.e. no loss of speed due to comunication time), the speedup factor S(n)(ratio of serial to parallel times, ts/tp) will be increased AT MOST:
     ts               n           1\lim''S(n) =
 ----------------- = ----------- =  ---\s-->inf
 f*ts+(1-s)*tp/n     1+(n-1)*f      f''


"Amdahl's Law -- Simplified":

-- GeneAmdahl - one of the creators of IBM System 360 Architecture

...which also has bearing on optimizing software.


CategoryOptimization


EditText of this page (last edited July 1, 2010) or FindPage with title or text search