ZERPA – Zerstörungsfreie Prüfung auf heterogenen Parallelrechner-Architekturen

Das intelligente, zerstörungsfreie und automatisierte Prüfen von Bauteilen durch Röntgen- oder Ultraschallverfahren stellt hohe Anforderungen an die damit verbundene Rechentechnik, um die in großer Menge anfallenden Messdaten in Echtzeit rekonstruieren und auswerten zu können. Die Implementierung für heterogene Rechnerarchitekturen ist jedoch komplex, da deren Programmierung nicht einheitlich ist.

Ziel des Vorhabens war die Entwicklung eines plattformunabhängigen Programmierframeworks, das die für die Rekonstruktions- und Auswertealgorithmik benötigten Basisoperatoren derart zur Verfügung stellt, dass eine aus Grafikkarten, Multikernarchitekturen und evtl. auch FPGAs bestehende Parallelrechnerarchitektur transparent erschlossen werden kann.

Zu Beginn des Projekts wurden Basisoperatoren identifiziert, aus denen komplexe Operatorketten für die zerstörungsfreie Prüfung realisiert werden können. Diese wurden weitgehend für Standard- und Grafikprozessoren (OpenCL) implementiert. Kern des entwickelten Frameworks ist eine Beschreibungssprache, mit deren Hilfe das Verketten der Basisoperatoren für den Benutzer ohne notwendige Architekturkenntnisse realisiert werden kann. Hierfür wurde HPX als Parallelisierungsbibliothek eingesetzt. Eine besondere Herausforderung hierbei war die Verwendung der neuesten Programmierstandards für C++‑11 unter Windows. Aufgabe des Frameworks war es darüber hinaus, die fertig implementierten Operatorketten dynamisch auf die verfügbaren Haupt- und Grafikprozessoren zu verteilen, so dass für eine gegebene Hardwarekonfiguration eine optimale Laufzeit erzielt wird.

Zum Ende des Projekts konnte ein sequentieller Ablauf der Operatorketten demonstriert werden. Darüber hinaus wurde ein Ultraschall-Hohlwellenprüfsystem als Demonstrator aufgebaut.

Nach oben scrollen