www.wikidata.de-de.nina.az
Das Amdahlsche Gesetz benannt 1967 nach Gene Amdahl ist ein Modell in der Informatik uber die Beschleunigung von Programmen durch parallele Ausfuhrung Nach Amdahl wird der Geschwindigkeitszuwachs vor allem durch den sequentiellen Anteil des Problems beschrankt da sich dessen Ausfuhrungszeit durch Parallelisierung nicht verringern lasst Geschwindigkeitsgewinn eines parallelisierbaren Problems durch parallel arbeitende Prozessoren Inhaltsverzeichnis 1 Beschreibung 2 Kritik 3 Sonstiges 4 Literatur 5 WeblinksBeschreibung BearbeitenEin Programm kann nie vollstandig parallel ausgefuhrt werden da einige Teile wie Prozess Initialisierung oder Speicherverwaltung nur einmalig auf einem Prozessor ablaufen oder der Ablauf von bestimmten Ergebnissen abhangig ist Daher zerlegt man den Programmlauf in Abschnitte die entweder vollstandig sequentiell oder vollstandig parallel ablaufen und fasst sie zu jeweils einer Gruppe zusammen Sei t P displaystyle t P nbsp der Anteil der Laufzeit der parallelen Teilstucke eines Programms dann ist t S displaystyle t S nbsp der sequentielle Anteil und die Gesamtlaufzeit T displaystyle T nbsp ergibt sich bei Ausfuhrung auf einem Kern aus der Summe Hinweise zu Formelzeichen Formelzeichen bezeichnete GrossenachAmdahl DIN 1304 ISO 800001 T Gesamtlaufzeit t S displaystyle t S nbsp Laufzeit eines seriellen ProgrammabschnittsP t P displaystyle t P nbsp Laufzeit eines parallelen ProgrammabschnittsN n P displaystyle n P nbsp Anzahl der Prozessoren welche von parallelenProgrammabschnitten genutzt werden konnen O n t O n P displaystyle t O n P nbsp Laufzeit fur SynchronisierungsaufwandS h S displaystyle eta S nbsp Speedup FaktorT t S t P displaystyle T t S t P nbsp Angenommen ein Programm benotigt 20 Stunden auf einem Rechner mit einer CPU und eine Stunde davon wird sequentiell ausgefuhrt beispielsweise Initialisierungs Routinen oder Speicher Allokation Die verbleibenden 19 Stunden machen 95 des Gesamtaufwandes aus und konnen auf beliebig viele Prozessoren verteilt werden Die Gesamtrechenzeit kann aber selbst mit unendlich vielen Prozessoren nicht unter 1 Stunde fallen die maximale Beschleunigung Speedup ist also Faktor 20 Seien t P displaystyle t P nbsp der parallele Anteil eines Programms und n P displaystyle n P nbsp die Anzahl der Prozessoren welche zur Berechnung eingesetzt werden konnen Dann ist t S displaystyle t S nbsp der sequentielle Anteil und t P n P displaystyle t P n P nbsp der beschleunigte parallele Anteil Die Gesamtzeit und damit die Gesamtbeschleunigung setzt sich aus der Summe der einzelnen Glieder zusammen und daher gilt fur den Speedup h S displaystyle eta S nbsp h S T t S t P n P T t S T T t P displaystyle eta S frac T t S frac t P n P leq frac T t S frac T T t P nbsp Es ist zu beobachten dass die Beschleunigung bei steigender Prozessoranzahl immer starker vom sequentiellen Anteil des Algorithmus und der Prozessorkommunikation abhangt Amdahl argumentierte dass durch Parallelisierung zusatzliche Kosten wie etwa fur die Kommunikation und zur Synchronisierung zwischen den Prozessoren anfallen Damit erweitert sich die Ungleichung um einen Synchronisierungs Zeitaufwand t O n P displaystyle t O n P nbsp der dies berucksichtigt und daher mit steigendem n displaystyle n nbsp zunimmt h S T t S t O n P t P n P T t S T T t P displaystyle eta S frac T t S t O n P frac t P n P leq frac T t S frac T T t P nbsp Durch die Einfuhrung des neuen Parameters konvergiert die Kurve nicht mehr gegen T t S displaystyle T t S nbsp sondern erreicht ein Maximum um dahinter wieder abzufallen Dieser Effekt wird auch in der Praxis beobachtet Bei genugend grosser Anzahl Prozessoren ubersteigt der Aufwand das Problem zu ubertragen zu synchronisieren und zuruckzusenden den Rechenaufwand der durch die zusatzlichen Kerne abgenommen wird Kritik BearbeitenAmdahls Gesetz berucksichtigt einige Faktoren nicht die sich positiv auf den Speedup auswirken Nach Amdahl ist die grosstmogliche Beschleunigung linear also durch die 10 fache Anzahl von Kernen ist maximal die 10 fache Rechenleistung moglich Jedoch ist in jeder CPU auch Cache integriert so dass sich auch die Menge an schnellem Speicher verzehnfacht Im gunstigsten Fall ist es so moglich die gesamte Problemgrosse im Cache anstatt im langsamen Hauptspeicher zu halten was einen super linearen Speedup ermoglicht also Beschleunigung die uber die zusatzliche reine Rechenleistung hinausgeht Allerdings konnte dies darauf zuruckzufuhren sein dass der Vergleich aus dem Grund fehlerhaft ist dass der integrierte Cache als Teil des Prozessormoduls betrachtet wird Ein Vergleich ohne Berucksichtigung der Cache Grosse wurde nicht zu dem benannten super linearen Speedup fuhren Amdahls Betrachtung fur den maximalen Speedup bleibt jedoch in beiden Fallen gultig Sonstiges BearbeitenDas Amdahlsche Gesetz besitzt ebenfalls Bedeutung in der Betriebswirtschaftslehre insbesondere beim Operations Research hinsichtlich Ressourcenallokationen Gustafsons Gesetz ist eng verwandt berucksichtigt aber einige fehlende Aspekte des Gesetzes von Amdahl das mooresche Gesetz analysiert den Speedup von Computerchips im Allgemeinen Literatur BearbeitenGene Amdahl Validity of the Single Processor Approach to Achieving Large Scale Computing Capabilities In AFIPS Conference Proceedings Band 30 1967 S 483 485 berkeley edu PDF Thomas Rauber Gudula Runger Parallele und Verteilte Programmierung Springer Berlin Heidelberg u a 2000 ISBN 3 540 66009 7 Gunther Bengel Christian Baun Marcel Kunze u a Masterkurs Parallele und Verteilte Systeme 1 Auflage Vieweg Teubner Wiesbaden 2008 ISBN 978 3 8348 0394 8 Weblinks Bearbeiten nbsp Commons Amdahlsches Gesetz Sammlung von Bildern Videos und Audiodateien Abgerufen von https de wikipedia org w index php title Amdahlsches Gesetz amp oldid 233711717