Practical Lab WS 11/12 Programmierpraktikum numerische Algorithmen
Die Parallelisierung von Algorithmen ist ein ganz wesentliches Konzept in der Ent- wicklung leistungsstarker numerischer Verfahren. Bei anspruchsvollen Aufgabenstellun- gen lässt sich nur durch paralleles Abarbeiten aufeinander abgestimmter Teilprobleme überhaupt noch eine vertretbare Laufzeit erzielen. Die gleichzeitig laufenden parallelen Prozesse sind hier darauf angewiesen, regelmässig Informationen austzutauschen, um das Gesamtproblem zu lösen.
Das Message Passing Interface (MPI) ist ein Standard, der grundlegende Kommu- nikationsmechanismen zur Verfügung stellt und dabei die Details der Netzwerkstruktur abstrahiert (das heisst vor dem Benutzer versteckt). MPI ist maschinenunabhänging und inzwischen weltweit auf dem Grossteil aller Parallelrechner verfügbar, vom kleinen Clus- ter bis zur Spitze der Top500 Liste. Mit MPI parallelisierte C oder Fortran Programme sind daher sehr portabel und laufen ohne Änderung auf einer Vielzahl von Rechnern.