Karp–Flatt metric

Source: Wikipedia, the free encyclopedia.

The Karp–Flatt metric is a measure of

parallel processor systems. This metric exists in addition to Amdahl's law and Gustafson's law
as an indication of the extent to which a particular computer code is parallelized. It was proposed by Alan H. Karp and Horace P. Flatt in 1990.

Description

Given a parallel computation exhibiting speedup on processors, where > 1, the experimentally determined serial fraction is defined to be the Karp–Flatt Metric viz:

The lower the value of , the better the parallelization.

Justification

There are many ways to measure the performance of a

Amdahl's Law
, which can be written as:

Where:

  • is the total time taken for code execution in a -processor system
  • is the time taken for the serial part of the code to run
  • is the time taken for the parallel part of the code to run in one processor
  • is the number of processors

with the result obtained by substituting = 1 viz. , if we define the serial fraction = then the equation can be rewritten as

In terms of the speedup =  :

Solving for the serial fraction, we get the Karp–Flatt metric as above. Note that this is not a "derivation" from Amdahl's law as the left hand side represents a

metric
rather than a mathematically derived quantity. The treatment above merely shows that the Karp–Flatt metric is consistent with Amdahl's Law.

Use

While the serial fraction e is often mentioned in

overhead
into consideration. Using the serial fraction as a metric poses definite advantages over the others, particularly as the number of processors grows.

For a problem of fixed size, the efficiency of a parallel computation typically decreases as the number of processors increases. By using the serial fraction obtained experimentally using the Karp–Flatt metric, we can determine if the efficiency decrease is due to limited opportunities of parallelism or increases in algorithmic or architectural overhead.

References

  • Karp, Alan H. & Flatt, Horace P. (1990). "Measuring Parallel Processor Performance". Communications of the ACM. 33 (5): 539–543. .
  • Quinn, Michael J. (2004). Parallel Programming in C with MPI and OpenMP. Boston: McGraw-Hill. .

External links