FWF - MVP - Automatische Volumsdatenverarbeitung auf graphischen Parallelprozessoren

  • Boechat de Almeida Germano, Pedro, (Teilnehmer (Co-Investigator))
  • Kerbl, Bernhard, (Teilnehmer (Co-Investigator))
  • Schmalstieg, Dieter (Projektleiter (Principal Investigator))

Projekt: Foschungsprojekt

Projektdetails

Beschreibung

Volumetrische Datensätze, wie sie häufig von medizinischen Anwendungen erzeugt werden, stellen eine besondere
Herausforderung an die Computergrafik: Durch ihre Komplexität und Größe erfordert die Verarbeitung und
Darstellung die Programmierung neuester Grafikprozessoren, da heutige Hauptprozessoren für diese Art der
Datenverarbeitung nicht gut geeignet sind. Dieser Projektantrag beschäftigt sich mit Methoden zur effizienten
Ausnutzung dieser Geräte.
Algorithmen zur Verarbeitung von volumetrischen Daten sind häufig nicht direkt an die daten-parallele Ausführung
auf Grafikprozessoren anpassbar. Die dadurch entstehenden Implementierungen neigen zur Ineffizienz, weil sie oft
nicht alle Recheneinheiten gleichmäßig mit Arbeit versorgen.
Insbesondere bei interaktiven Anwendungen kann eine ineffiziente Implementierung das System unbrauchbar
machen, weil die Bedienung durch den Benutzer eine Echtzeitverarbeitung der Daten erfordert. Aktuelle
Grafikprozessoren versuchen effizienzsteigernde Maßnahmen umzusetzen, scheitern aber häufig an der Tatsache,
dass die Art des ausgeführten Algorithmus und dessen Eigenschaften unbekannt sind. Des Weiteren besitzt diese
von der Hardware gesteuerte Ausführungskontrolle nicht über ausreichende Privilegien im System, um
weitreichende Entscheidungen durchzusetzen.
An dieser Stelle setzt unser vorgeschlagenes Projekt an. Es bietet eine Programmierumgebung zur effizienten
Ausführung und Speicherverwaltung für Volumsdarstellung und -verarbeitung. Über eine möglichst einfache
Programmschnittstelle können Entwickler Daten und Aufgaben in Form eines gerichteten Ausführungs-Graphen an
unser System übergeben. Dieses kann selbständig Abhängigkeiten erkennen und alle Aufgaben in geeigneter
Reihenfolge unter Berücksichtigung von Einschränken (z.B. Echtzeitfähigkeit) an die ausführende Hardware
übergeben. Speicherbereiche im Hauptspeicher und auf der Grafikkarte werden von unserer Umgebung verwaltet,
und fehlende Daten automatisch von z.B. der Festplatte nachgeladen. Außerdem werden Zwischenergebnisse falls
möglich zwischengespeichert, um die Gesamtlaufzeit zu verkürzen.
Dieses Projekt verwendet neueste Grafikprozessor-Technik und Programmschnittstellen, wie OpenCL, um
zukünftig Software-Entwicklern, die mit Volumsdatenverarbeitung konfrontiert sind, eine effiziente und
zeitsparende Programmierung zu ermöglichen.
StatusAbschlussdatum
Tatsächlicher Beginn/ -es Ende1/09/1128/02/15