next up previous contents
Next: Feldberechnung mit CONCEPT auf Up: Zentrale Systeme Previous: Parallelisierung von Anwendungen

Visualisierung auf der Hydra

Im Rahmen eines Visualisierungsprojektes, in dem der Arbeitsbereich Biomechanik und das Rechenzentrum zusammenarbeiten, um komplexe 3D-Datensätze zu visualisieren, ist ein Public Domain paralleler Raytracer eingesetzt worden. Die Ergebnisse sind wie aus der Theorie zu erwarten: Die Geschwindigkeitssteigerung ist fast linear zu der Anzahl der eingesetzten Prozessoren.

Der Arbeitsbereich Biomechanik befaßt sich schon seit einiger Zeit mit dem Design von Gelenkprothesen. Die Untersuchungen in diesem Projekt beziehen sich auf die Verankerung von künstlichen Hüftpfannen im menschlichen Becken. Eines der Probleme bei Hüftprothesen ist die Bewegung des Implantats gegenüber dem Knochen, die sog. Mikrobewegung. Diese Mikrobewegung verhindert das Einwachsen des Implantats in den Beckenknochen.

Ein zweites Problem besteht darin, daß durch die Implantation die Spannungsverteilung im umliegenden Knochen derartig beeinflußt wird, daß die Prothese sich später lockern kann.

Beide Effekte sind in Laborexperimenten an drei Stellen im Hüftgelenk gemessen worden. Weitere unterschiedliche Vorgänge bei der Implantation (z.B. Verankerung des Implantats durch Schrauben) sind ausgeführt worden und die jeweiligen Auswirkungen wurden qualitativ und quantitativ überprüft.

Anschließend wurden die Laborergebnisse mit numerischen Berechnungen im 'Finite Elemente' (FE) Verfahren verglichen. Abgesehen von den Vorteilen, die diese Methode für Parametervariationen bietet, bringt sie auch eine dreidimensionale Darstellung, d.h. einen Überblick der Mikrobewegung und Spannungsverteilung im ganzen Bereich der Implantatverankerung, gegenüber nur drei Meßpunkte bei den klinischen Experimenten.

 
Abbildung 1: Übersichtsbild der Becken-Prothesenkonfiguration 

  
Abbildung 2: Präsentationsdarstellung 

Abbildung 3: Rohdatendarstellung 

Die numerischen Ergebnisse der Berechnungen waren aber unzureichend oder sogar in den Postprocessingprogrammen des FE-Pakets nicht darstellbar. Deshalb wurde ein Filterprogramm geschrieben, um die rohen numerischen Daten in einem Format aufzubereiten, das von einem Raytracer gelesen werden konnte.

Ein Raytracer (``Strahlenverfolger'') ist ein Programm, das eine in 3D-Koordinaten beschriebenen Szene in einer Rastergraphik darstellt. In dem Verfahren werden die Lichtstrahlen, die auf eine virtuelle Kamera eintreffen, auf deren Ursprung zurückverfolgt. Dabei werden die Eigenschaften der begegneten Oberflächen (wie Farbe, Material, Transparenz, Lumineszenz usw.) in Betracht genommen. Das Resultat der sehr zeitaufwendigen Berechnungen ist eine stilisierte und photorealistische Abbildung der Szene (Abb. 1).

Der in diesem Projekt eingesetzte Raytracer ist das public domain Programm POV-Ray (Persistence of Vision Ray Tracer). Ursprünglich sind alle Bilder auf Silicon Graphics Rechnern gerechnet worden. Als eine mit Hilfe von PVM parallelisierte Version verfügbar war, ist diese auf der Hydra eingesetzt worden.

Es wurden einige unterschiedliche Darstellungsarten entwickelt: Zum einen das 'rohe' Ergebnis (Abb. {3) der FE-Rechnung: dies ist eine relativ schnell berechnete Vektordarstellung, die für die Untersucher ausreichend aussagekräftig ist. Die zweite Darstellung eignet sich für Präsentationen und multimediale Darstellungen, z.B. in der Form eines Videofilms. Sie zeigt nicht nur die berechneten Vektordaten, sondern zusätzlich das Becken (Abb. {2).

Die Berechnungszeiten werden hier aufgelistet (Tabelle 1):

 

Bild Auflösung Maschine Prozessoren Rechenzeit Geschwindigkeits-
steigerung
Rohdaten 1024x768 indi4 1 0:04:19 -
Rohdaten 1024x768 Hydra 1 0:02:26 1
Rohdaten 1024x768 Hydra 5 0:00:50 2.92
Rohdaten 1024x768 Hydra 6 0:01:14 1.92
Rohdaten 4096x4096 Hydra 1 0:36:27 1
Rohdaten 4096x4096 Hydra 5 0:09:51 3.70
Rohdaten 4096x4096 Hydra 6 0:14:29 2.52
Präsentation 1024x768 indi4 1 4:42:59 -
Präsentation 1024x768 Hydra 1 2:20:18 1
Präsentation 1024x768 Hydra 4 0:37:52 3.71
Tabelle 1: Rechenzeiten  

Die Ergebnisse zeigen das Master/Slave-Prinzip der parallelisierten Version sehr deutlich. Ein Prozessor beschäftigt sich mit der Verteilung und Sammlung der einzelnen Teilaufgaben. Wenn man dann alle sechs Prozessoren im parallelen Subkomplex zum Rechnen benutzt, wird die Rechenzeit länger: Der Master muß mitrechnen und erzeugt eine Verzögerung im Programmablauf. Deshalb wurde im weiteren immer ein Prozessor als Master eingesetzt und die dann maximal fünf noch zur Verfügung stehenden Prozessoren als Slave.

Die Tabelle zeigt weiter eine Geschwindigkeitssteigerung von 2.92 für die parallele Verarbeitung der Rohdaten. Daß dieser Wert weit unter dem erwarteten bleibt, ist daher zu erklären, daß die Rohdaten eine relativ kurze Rechenzeit haben und das Einlesen aller Daten verhältnismäßig lange dauert. Diesen Effekt kann man zeigen, wenn man den Rechenaufwand erhöht, z.B. durch das Vergrößern des Bildes. In diesem Fall sieht man eine Geschwindigkeitssteigerung von 3.70 . Dieser Wert ist durchaus akzeptabel.

In der Präsentationsberechnung wurde auf vier Prozessoren gerechnet und die Geschwindigkeitssteigerung ergab 3.71 . Dieser Wert kommt sehr nah an das theoretische Maximum von 4 heran.

Zusammenfassend kann man sagen, daß die Parallelisierung der Visualisierung sich hier lohnt. Der Aufwand, um den Raytracer zu parallelisieren, ist klein: Das Programm braucht nur 'gepatched' und neu übersetzt zu werden. Die Parallelisierung bringt Vorteile bei den größeren und/oder komplexeren Szenen. Ein weiterer Vorteil ist, daß der Forscher nicht nur seine numerischen Daten nach einem Batchjob zurückbekommt, sondern auch eine vielsagende graphische Darstellung seiner Lösung.

In der Zukunft wird dieses Projekt sich noch mit dem Animieren der FE-Daten befassen, sowohl für Videoverfilmung als auch für Generierung von MPEG-kodierten Rechneranimationen. Das Vorhaben ist, auch die MPEG-Kodierung parallel ablaufen zu lassen.

Peter van der Reest, Tel.: 3189


next up previous contents
Next: Feldberechnung mit CONCEPT auf Up: Zentrale Systeme Previous: Parallelisierung von Anwendungen

Marco Budde
Fri Apr 12 18:53:17 MESZ 1996