• Keine Ergebnisse gefunden

2.4 Paralleles Rehnen

2.4.5 Im Rahmen der Arbeit verwendetes Rehnermodell

bei-spielsweise eine Kommunikationsoperation, bei der jeder Prozessor gleihzeitig Daten an

einen einzigen Prozessor vershikt, unter Umständen dazu, dass die Netzwerkanbindung

desProzessorsüberlastetwirdundalsFolgedieDatenmitdermaximalzurVerfügung

ste-henden Rate

1/g

empfangen werden.DieübrigenProzessorenmüssen solangewarten,bis ihre Nahrihtempfangen wurde. Somit istdie vomLogP ModellprognostizierteLaufzeit

für eine solhe Operation gröÿer als die Laufzeit für einen balanierten Datenaustaush,

bei dem jeder Prozessor etwa gleih groÿe Datenmengen sendet und empfängt, und die

Netzwerkanbindung der einzelnen Prozessoren gleihmäÿigbelastetwird.

Für eine einzigePunkt-zu-Punkt Kommunikationsoperationprognostiziertdas LogP

Mo-dell eine Abhängigkeitder Kommunikationsdauer

T ˜

LogP von der vershikten

Datenmen-ge

m

inder Form

T ˜

LogP

= t s + t w · m,

(2.71)

wobei

t s

und

t w

FunktionenderParameter

o

,

g

bzw.

L

sind.Gleihung(2.71)legtnahe,dass

esvonVorteilist,denAustaushvonDaten,wennmöglih,mitHilfeeinereinzigengroÿen,

anstattmiteinerVielzahlkleinerNahrihtendurhzuführen . DerkonstanteAnteil

t s

tritt

dannlediglihein einzigesMalinErsheinung.In diesemFallkannder Term

t s

gegenüber

dem sehr viel gröÿeren Anteil

t w · m

vernahlässigt werden und man erhält

T ˜

LogP

≈ t w · m.

(2.72)

Diese Zeit beinhaltet sowohl einen Anteil für den eigentlihen Datentransfer über das

Netzwerk, als auh einen Anteil für Operationen, die für die Vorbereitung des Transfers

erforderlihsind.Abbildung2.11(a)zeigt,dassdasModelleineguteÜbereinstimmungmit

Messungen der (mittleren) Kommunikationszeit aufweist, welhe für zwei Rehnerluster

durhgeführtwurden.

Überlappen von Datenaustaush und Berehnungen. Auf einigen Parallel-rehnern ist es möglih, dass das Versenden und Empfangen von Nahrihten niht

der direkten Beteiligung der CPU bedarfund daher im Hintergrund erfolgen kann.

Durh spezialisierte Hardware, bei der ein Coprozessor das Senden und Empfangen

derNahrihten übernimmt,müssenSende-undEmpfangsoperationenvonderCPU

lediglih initialisiert und abgeshlossen werden. Während die Daten über das

Netz-werk transportiert werden, kann die CPU weitere Rehnungen durhführen, welhe

dervershiktenDaten nihtbedürfen.DiesistalsVersteken derLatenzzeit (engl.

lateny hiding) bekannt. Dies ist auh bei der Verwendung eines Multiomputers

bestehend aus mehreren Prozessoren pro Knoten möglih. Während ein Prozessor

Berehnungendurhführt,behandelteinandererProzessordenAustaushderDaten

(sieheAbbildung2.10).Diesmussjedohexplizitimplementiertwerden.Obwohl

die-seTehnik bei den imRahmender Arbeitdurhgeführten Implementierungen niht

zum Einsatzkam, wirdbeider Vorstellung der parallelenAlgorithmen imfolgenden

Kapiteldennoh angeeigneter Stelledarauf hingewiesen,wie eine solhe

Implemen-tierungaussehen könnte.

SlaveThreads

MasterThread MasterThread

lokale

Berehnungen

send(.)

rev(.)

lokale

Berehnungen send(.)

rev(.) Datenaustaush

Abbildung 2.10: Durh die Verwendung mehrerer Threads lässt sih die Zeit, welhe für

den Datenaustaushbenötigt wird, mitlokalen Berehnu ngen füllen.

Netzwerküberlastung. Der Einuss der Netzwerklast auf die Nahrihtenüber-tragungszeiten bleibt unberüksihtigt. Eine Modellierung dieses Eekts ist extrem

shwierig, dasih in einemZustand der Netzwerküberlastung starkeShwankungen

shen Methoden sinnvoll modellieren lassen (siehez.B. [61, 56℄für eine ausführlihe

Behandlung dieses Eekts). Abbildung2.11(b) illustriert den Eekt. Abgebildetist

dieaufihrenMaximalwertnormierteHäugkeitsverteilungvongemessenen

Übertra-gungszeiten von Punkt-zu-Punkt Nahrihten. Während die gemessenen Zeiten bei

einemeinzigenkommunizierenden Prozessorpaarsehr starkbeieinemWert

konzen-triert sind, lässt sih bei 64 gleihzeitig kommunizierenden Prozessorpaaren bereits

einestarke Verbreiterungder Verteilungbeobahten unddie mittlere

Kommunikati-onszeit wähst deutlihan. Je mehr Prozessoren gleihzeitigmiteinander

kommuni-zieren,desto breiter wird die gezeigte Verteilungsfunktion.

Reihenfolge von Nahrihten. Es wird niht die genaue Reihenfolgebetrahtet, odergar eineReihenfolgeerzwungen, inder dieNahrihten vershiktoder

empfan-genwerden.WerdenmehrereNahrihtenanuntershiedliheProzessorenvershikt,

sowird die dazubenötigteZeit alsSummeder einzelnen Kommunikationszeiten

an-genommen.

Einuss fremder Prozesse. Das Modell berüksihtigt niht das eventuelle Vor-handenseinfremderProzesse undderenEinussaufdieverfügbareProzessorleistung

sowie die Netzwerk last. Eine Untersuhun g dieser Einüsse ndet sih z.B. in[62℄.

Annahme eines ahen Speihers. Es wird ein aher Speiher angenommen, d.h. die Einüsse der Speiherhierarhie (Cahe) werden niht explizit modelliert.

Anentsprehenden Stellenwird jedoh aufEekte, die durh die Speiherhierarhie

bedingtsind, hingewiesen,sofernein starkerEinussaufdie Laufzeitzu beobahten

ist.

m

Bytes

T ˜

ms

0 200 400 600 800 1000 0,4

0,6 0,8 1,0

0 0,02

b b b b b b b b b b b b b b b b b b b b b

b b b b b b b b b b b b b b b b b b b b b b b

GigabitEthernet

b b

Myrinet

T ˜

ms

h

norm

0 0,25 0,50 0,75 1,00

0 20 40 60 80

2Prozessoren

128Prozessoren

(a) (b)

Abbildung2.11:(a)zeigtdiemittlerebenötigte ZeitfürdenAustaush einerNahriht

va-riablerGröÿe zwishen zweiProzessorenfüruntershiedlihe Netzwerktehnologien. (b) zeigt

die normierte Häugkeitsverteilung, welhe sih beim Austaush einer Nahriht der

Grö-ÿe 10KByte zwishen einer untershiedlihen Anzahl Prozessoren, welhe über ein Gigabit

Im folgendenKapitelsollen Strategien zur Parallelisierungdes PIC Algorithmusfür

Mul-tiomputer vorgestellt werden. Zunähst wird in Abshnitt 3.1 hergeleitet, wie eine

lauf-zeitoptimaleZuordnungvonBerehnungenimFalleeinesParallelrehnersmitProzessoren

beliebigerLeistungsfähigkeiterfolgenkann.InAbshnitt 3.2wirdderBegrider

Paralleli-sierungsstrategieimRahmeneineszunähst abstraktenOptimierungsproblemsformuliert.

InAbshnitt3.3 wirddiesesfürdenFallderParallelisierungdesFeldlösersohne

Anwesen-heit von Teilhen konkretisiert. Im anshlieÿenden Abshnitt 3.4 wird das Problem unter

Anwesenheit vonTeilhenformuliert, undvershiedene Parallelisierungsstrategienwerden

vorgestellt,umdasOptimierungsproblemzulösen.InnerhalbdiesesAbshnitteswerdenim

RahmendieserArbeitentwikelteParallelisierungsstrategien,sowiedieVerallgemeinerung

einer aus der Literatur bekannten Strategie vorgestellt.

3.1 Lastverteilung für Parallelrehner mit Prozessoren

untershiedliher Leistungsf ähigkeit

IndiesemAbshnittsolluntersuhtwerden,wiedieRehenlast,welhebeiderLösungeines

Problems anfällt, auf die Prozessoren eines Parallelrehnersverteilt werden muss, um die

Laufzeit zu minimieren. Betrahtet werde ein Problem, zu dessen Lösung

C

voneinander unabhängige,gleihartigeRehenshritte ausgeführtwerdenmüssen.DasProblemsollmit

Hilfe eines Parallelrehners mit

N π

Prozessoren gelöst werden, wobei Prozessor

i π

einen

der Rehenshritte in

λ i π

Zeiteinheiten bearbeiten kann. Die Laufzeit

T (N π , C )

, welhe

zur Lösung des Problems benötigt wird, wird von der Laufzeit des Prozessors bestimmt,

welher für die ihm zugeordneten Berehnungen die meiste Zeit benötigt

T (N π , C) = max

i π ∈{ 1...N π } {T (i π , N π , C)} .

(3.1)

Gesuht ist die Anzahl an Rehenoperationen

C i π

, die Prozessor

i π

zugeordnet werden

müssen, so dass

T (N π , C)

minimalwird. Dazumuss oenbar

T (i π , N π , C) = T (j π , N π , C ) ∀i π , j π ∈ {1 . . . N π }

(3.2)

gelten. Anderenfallsgibt es einen Prozessor

i π ∈ {1 . . . N π }

, für den

T (i π , N π , C) ≥ T (j π , N π , C) ∀j π ∈ {1 . . . N π }

(3.3)

gilt. Durh Abgabe von Berehnungen an die übrigen Prozessoren lässt sih

T (i π , N π , C)

und somitdie Gesamtlaufzeitsenken . Dies istsolangemöglih,bisGleihung (3.2)erfüllt

ist.Mit Hilfe der

C i π

und

λ i π

lässt sih Gleihung (3.2) shreiben als

λ i π C i π = λ j π C j π ∀i π , j π ∈ {1 . . . N π } .

(3.4)

Wegen

N π

X

i π =1

C i π = C

(3.5)

lässt sih sofortder Zusammenhang

C i π

C =

1 λ N π

P

j π =1 1 λ

(3.6)

angeben, mitdem sih die laufzeitoptimalen Werte der

C i π

berehnen lassen.

Es besteht eine Analogie zu dem Problem aus der Netzwerktheorie bei bekanntem

Ge-samtstrom die Ströme durh die Zweige einer Parallelshaltung ohmsher Widerstände

zu berehnen. In der Analogie übernehmen die

C i π

die Rolle der Ströme und die

λ i π

die

Rolleder ohmshen Widerstände. Die Gleihungen(3.4)und (3.5) sind nihts anderes als

die Kirhhoff shen Gesetze und Gleihung (3.6) kann als Stromteilerregel identiziert

werden [63℄. Abbildung3.1 illustriert die beshriebene Analogie.