Gustafsons Gesetz

Gustafsons Gesetz

Gustafsons Gesetz (auch bekannt als Gesetz von Gustafson-Barsis) ist ein Gesetz in der theoretischen Informatik, das von John Gustafson 1988 aufgestellt wurde.[1] Es besagt, dass ein genügend großes Problem effizient parallelisiert werden kann.

Beschreibung

Gustafsons Gesetz basiert auf dem Gesetz von Amdahl, das, ausgehend von einer festen Problemgröße, versucht eine zu bewältigende Aufgabe durch Parallelisierung mit N Prozessoren in kürzerer Zeit zu lösen. Es geht dabei davon aus, dass das bestmögliche Ergebnis eine lineare Verbesserung der benötigten Zeit (also 1 / N) sei. Verwendet man doppelt soviel Prozessoren, benötige man bestenfalls die halbe Zeit.

Gustafson veränderte das Gesetz so, dass es ein festes Zeitfenster verwendet, in dem die Problemgröße mit der Anzahl der Prozessoren wächst. Verwendet man doppelt soviel Prozessoren, kann man bestenfalls eine doppelt so große Aufgabe lösen. Obwohl sie auf den ersten Blick gleich erscheinen, unterscheiden sich die Aussagen signifikant.

Ein Programm kann nie vollständig parallel ausgeführt werden, da einige Teile, wie Prozessinitialisierung oder Speicherallokation nur einmalig auf einem Prozessor ablaufen oder der Ablauf von bestimmten Ergebnissen abhängig ist. Daher zerlegt man den Programmlauf in Abschnitte, die entweder vollständig sequentiell oder vollständig parallel ablaufen und fasst sie zu jeweils einer Gruppe zusammen. Sei P der Anteil der Laufzeit der parallelen Teilstücke eines Programms, dann ist (1 − P) der sequentielle Anteil und die Gesamtlaufzeit ergibt sich bei Ausführung auf einem Kern aus der Summe:

\!\, 1 = (1 - P) + P

Gemäß dieser Formel werden beide Teile auf einem seriellen Rechner hintereinander ausgeführt, die Zeiten addieren sich auf. Vernachlässigt man den Overhead für Kommunikation, Synchronisierung und dergleichen, so lässt sich der parallele Anteil auf N Prozessoren gleichzeitig ausführen. Für den Beschleunigungsfaktor (SpeedUp) S(N) gilt damit

S(N) = (1 - P) + N \cdot P

Der entscheidende Unterschied zu Amdahl ist, dass der parallele Anteil mit der Anzahl der Prozessoren wächst. Der sequentielle Part wirkt hier nicht beschränkend, da er mit zunehmendem N unbedeutender wird. Geht N gegen unendlich, so wächst der SpeedUp linear mit der Anzahl der Prozessoren N.

Kritik

Es gibt eine Reihe von Problemstellungen, die sich nicht beliebig vergrößern lassen, oder Probleme, die in möglichst kurzer Zeit berechnet werden müssen, beispielsweise in Echtzeit.

Nicht-lineare Algorithmen können oft nicht in vollem Umfang von der von Gustafson beschriebenen Parallelisierung profitieren. Lawrence Snyder[2] erklärt, dass ein Algorithmus mit einer Komplexität in O(N3) durch Verdopplung der Nebenläufigkeit einen SpeedUp von nur 9 % erzielt.

Einzelnachweise

  1. John L. Gustafson: Reevaluating Amdahl's law. In: Commun. ACM. 31, Nr. 5, 1988, S. 532–533, doi:10.1145/42411.42415 (PDF, abgerufen am 10. November 2010).
  2. Lawrence Snyder: Type Architectures, Shared Memory, and the Corollary of Modest Potential. In: Annual Review of Computer Science. 1, 2003, S. 289–317, doi:10.1146/annurev.cs.01.060186.001445 (PDF, abgerufen am 20. September 2009).

Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Amdahls Gesetz — Der Geschwindigkeitsgewinn bei der Verwendung von parallel arbeitenden Prozessoren bei der Bearbeitung eines parallelen Problems Das Amdahlsche Gesetz (benannt 1967 nach Gene Amdahl) ist ein Modell in der Informatik über die Beschleunigung von… …   Deutsch Wikipedia

  • Amdahlsches Gesetz — Der Geschwindigkeitsgewinn bei der Verwendung von parallel arbeitenden Prozessoren bei der Bearbeitung eines parallelen Problems Das Amdahlsche Gesetz (benannt 1967 nach Gene Amdahl) ist ein Modell in der Informatik über die Beschleunigung von… …   Deutsch Wikipedia

  • Parallelcomputer — Ein Parallelrechner ist ein Computer, in dem Operationen gleichzeitig auf mehreren CPUs ablaufen. Es werden grob zwei Ausführungen von Parallelrechnern unterschieden: Massiv parallele Computer besitzen einige zehn bis einige tausend CPUs, die… …   Deutsch Wikipedia

  • Paralleles System — Ein Parallelrechner ist ein Computer, in dem Operationen gleichzeitig auf mehreren CPUs ablaufen. Es werden grob zwei Ausführungen von Parallelrechnern unterschieden: Massiv parallele Computer besitzen einige zehn bis einige tausend CPUs, die… …   Deutsch Wikipedia

  • Parallelrechner — Parallelrechner, ein Cray 2 (1986) Ein Parallelrechner ist ein Rechner, in dem Rechenoperationen gleichzeitig unter anderem auf mehreren Haupt oder Grafik Prozessoren durchgeführt werden können. Weitere Details Para …   Deutsch Wikipedia

  • Gustafson — ist ein patronymisch gebildeter schwedischer Familienname mit der Bedeutung „Sohn des Gustaf“. Bekannte Namensträger Björn Gustafson (* 1934), schwedischer Schauspieler Elisabet Gustafson (* 1964), schwedische Curlerin Gabriel Gustafson… …   Deutsch Wikipedia

  • Wäre die Welt mein — Filmdaten Deutscher Titel Wäre die Welt mein Originaltitel Were the World Mine …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”