In diesem Kapitel geht es um den Einsatz nicht nur eines, sondern vieler Prozessoren zur Lösung eines Problems. Es wird dabei von dem Modell einer PRAM (Parallel Random Access Machine) ausgegangen, bei der jeder Prozessor einen lokalen Speicherplatz besitzt, und außerdem noch ein gemeinsamer Speicher existiert. Ein Rechenschritt einer PRAM geht dann wie folgt vor sich:
In Bezug auf die Lese- und Schreibzugriffe kann man eine PRAM in unterschiedliche Klassen einteilen: Eine CR-PRAM (Concurrent Read) erlaubt gleichzeitige Lesezugriffe, eine CW-PRAM (Concurrent Write) erlaubt gleichzeitige Schreibzugriffe. Im Gegensatz dazu spricht man von einer ER- (Exclusive Read) bzw. EW-PRAM (Exclusive Write), wenn keine gleichzeitigen Lese- bzw. Schreibzugriffe erlaubt sind.
Es stellt sich nun die Frage, ob die entsprechend größere Anzahl an Prozessoren in einem angemessenen Verhältnis zum Zeitgewinn steht. Dazu bezeichne im Folgenden
die sequentielle und
die parallel Laufzeit, sowie
die Anzahl der Prozessoren bei der parallelen Berechnung. Dann definiert man
Man nennt einen parallelen Algorithmus
In der Vorlesung wurde die parallele Minimum-Berechnung und die parallele Präfixsummen-Berechnung genauer besprochen, worauf hier nicht näher eingegangen wird (bei Interesse möge das Skriptum studiert werden).
|
|
||
|
|
|
|
|
|
||