16.01.2015 Aufrufe

MuPAD Report: Ein denotationales Modell für ... - webexams.ch

MuPAD Report: Ein denotationales Modell für ... - webexams.ch

MuPAD Report: Ein denotationales Modell für ... - webexams.ch

MEHR ANZEIGEN
WENIGER ANZEIGEN

Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.

YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.

152 ANHANG C. PARALLELITÄT IN MUPAD<br />

C.2.3<br />

Beispiele<br />

An Hand zweier Beispiele - der Bere<strong>ch</strong>nung der Fibonacci-Zahlen mit Hilfe der übli<strong>ch</strong>en<br />

Definition und der normalen Matrixmultiplikation (beidesmal wurden keine optimalen<br />

Algorithmen benutzt) - soll gezeigt werden, wie ein Programm zu parallelisieren ist und<br />

wel<strong>ch</strong>e Auswirkungen dies auf die Laufzeit hat.<br />

Die Laufzeiten wurden auf einer mit 12 Prozessoren des Typs 80386- jeweils mit 16MHz<br />

getaktet - ausgestatteten Sequent Symmetry gemessen. Die folgenden Angaben für<br />

die Laufzeiten geben bei den sequentiellen Programmen die benötigte Prozessorzeit an,<br />

während sie bei den parallelen Programmen die benötigte Realzeit angeben. Da die Mas<strong>ch</strong>ine<br />

ni<strong>ch</strong>t vom Tester allein benutzt wurde, können bei den parallelen Programmen<br />

höhere Zeiten dadur<strong>ch</strong> hervorgerufen werden, daß dem parallelen <strong>MuPAD</strong> ni<strong>ch</strong>t immer<br />

genügend Prozessoren zur Verfügung standen. Je größer die von <strong>MuPAD</strong> benutzte Anzahl<br />

von Prozessoren ist, desto größer ist die Wahrs<strong>ch</strong>einli<strong>ch</strong>keit für dieses Ereignis. Dies<br />

war beim Testen daran zu erkennen, daß die Varianz der gemessenen Laufzeiten mit der<br />

Anzahl der benutzten Prozessoren stark anstieg.<br />

In den folgenden Tabellen, die Laufzeiten enthalten, werden die Laufzeiten in Sekunden<br />

angegeben. Dana<strong>ch</strong> folgt der Speedup gegenüber dem sequentiellen Programm auf der<br />

sequentiellen Version.<br />

Fibonacci-Zahlen<br />

Programme: Programme, die die Definition der Fibonacci-Zahlen implementieren,<br />

können in <strong>MuPAD</strong> wie folgt aussehen:<br />

fl := proc(n)<br />

begin<br />

if n < 2 then<br />

1<br />

else<br />

fl(n-l) + fl(n-2)<br />

end_if<br />

end_proc:<br />

f2 := proc(n)<br />

begin<br />

if n < 2 then<br />

1<br />

else<br />

_plus«parbegin<br />

f2(n-l)<br />

f2(n-2)<br />

end_par»<br />

end_if<br />

end_proc:<br />

f3 := proc(n)

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!