Gustafson's law

From Wikipedia, the free encyclopedia

Gustafson's Law (also known as Gustafson-Barsis' law) is a law in computer engineering which states that any sufficiently large problem can be efficiently parallelized. Gustafson's Law is closely related to Amdahl's law, which gives a limit to the degree to which a program can be sped up due to parallelization. It was first described by John L. Gustafson in 1988.

S(P) = P − α * (P − 1).

P... number of processors, S... speedup, α ... non-parallelizable part of process

Gustafson's law addresses the shortcomings of Amdahl's law which cannot scale to match availability of computing power as the machine size increases.

It removes the fixed problem size or fixed computation load on the parallel processors, instead he proposed a fixed time concept which leads to scaled speed up.

Amdahl's law is based on fixed workload or fixed problem size. It implies that the sequential part of a program does not change with respect to machine size (i.e, the number of processors). However the parallel part is evenly distributed by n processors.

The impact of the law was the shift in research to develop parallelizing compilers and reduction in the serial part of the solution to boost the performance of parallel systems.

Let n be a measure of the problem size.

The execution of the program on a parallel computer is decomposed into:

       a(n) + b(n) = 1
     where a is the sequential fraction and b is the parallel   
     fraction, (ignoring overhead for now).

On a sequential computer, the relative time would be a(n) + pb(n) where p is the number of processors in the parallel case.

Speedup is therefore:

       (a(n) + pb(n)) (parallel, relative to sequential a(n)+b(n)=1)

and thus

       = a(n) + p*(1-a(n))
     where a(n) is the serial function.

Assuming the serial function a(n) diminishes with problem size n, then speedup approaches p as n approaches infinity, as desired.

Thus Gustafson's law seems to rescue parallel processing from Amdahl's law.

Gustafson's law argues that even using massively parallel computer systems does not influence the serial part and regards this part as a constant one. In comparison to that, the hypothesis of Amdahl's law results from the idea that the influence of the serial part grows with the number of processes.

A given car will be traveling between two cities 60 miles apart, and has already traveled half the distance at 30 mph.

Amdahl's Law approximately suggests:

No matter how fast you drive the last half, it is impossible to achieve 90 mph average. 
Since it has already taken you 1 hour and you only have a distance of 60 miles total; 
going infinitely fast you would only achieve 60 mph.

Gustafson's Law approximately states:

Given enough time, the car will approach the desired speed. 
90mph average is possible so long as you drive at 150 mph for an hour. 

Addressing a slightly different question allows for a significantly more useful analysis.

Topics in Parallel Computing  v  d  e 
General High-performance computing
Parallelism Data parallelismTask parallelism
Theory SpeedupAmdahl's lawFlynn's TaxonomyCost efficiencyGustafson's LawKarp-Flatt Metric
Elements ProcessThreadFiberParallel Random Access Machine
Coordination MultiprocessingMultithreadingMultitaskingMemory coherencyCache coherencyBarrierSynchronizationDistributed computingGrid computing
Programming Programming modelImplicit parallelismExplicit parallelism
Hardware Computer clusterBeowulfSymmetric multiprocessingNon-Uniform Memory AccessCache only memory architectureAsymmetric multiprocessingSimultaneous multithreadingShared memoryDistributed memoryMassively parallel processingSuperscalar processingVector processingSupercomputer
Software Distributed shared memoryApplication checkpointing
APIs PthreadsOpenMPMessage Passing Interface (MPI)
Problems Embarrassingly parallelGrand Challenge
Advanced Search
Included Web Search Engines


Safe Search

close

Top Matching Results

Occasionally Search.com will highlight specialized results that are based on the context of your query. Examples of specialized results include specific links to news, images, or video.

Top Matching Results may highlight information from other Search.com pages, content from the CNET Network of sites, or third party content. The listings are based purely on relevance. Search.com does not receive payment for listings in this section but our partners that provide this data may get paid for listing these products.

Sponsored Links

This section contains paid listings which have been purchased by companies that want to have their sites appear for specific search terms and related content. These listings are administered, sorted and maintained by a third party and are not endorsed by Search.com.

Search Results

Search.com sends your search query to several search engines at one time and integrates the results into one list which has been sorted by relevance using Search.com's proprietary algorithm. You can customize the list of search engines included in your metasearch from the preferences.

The search engines that are used in your metasearch may allow companies to pay to have their Web sites included within the results. To view the Paid Inclusion policy for a specific search engine, please visit their Web site. Search.com does not accept payment or share revenue with any search engine partner for listings in this section.