VISTLE (Visualization Testing Laboratory for Exascale Computing) ist eine erweiterbare Softwareumgebung, die Simulationen auf Supercomputern, Post-Processing und parallele interaktive Visualisierung integriert.
Die Software wird am HLRS seit 2012 innerhalb der EU-geförderten Projekte CRESTA und bwVisu stetig weiterentwickelt. Ziel ist es, einen hoch skalierbaren Nachfolger von COVISE bereitzustellen, der Daten-, Task- und Pipeline-Parallelität in hybriden Shared- und Distributed-Memory-Umgebungen mit Beschleunigungshardware ausnutzt. Die während der Simulation verwendeten Bereichszerlegungen können für die Visualisierung wiederverwendet werden.
Ein VISTLE-Arbeitsablauf besteht aus mehreren Verarbeitungsmodulen, von denen jedes ein paralleles MPI-Programm ist, das OpenMP innerhalb von Knoten verwendet. Diese können grafisch oder über Python konfiguriert werden. Für den Datentransfer zwischen den Modulen auf einem einzelnen Knoten wird ein gemeinsamer Speicher verwendet. Arbeitsabläufe können auf mehrere Cluster verteilt werden.
Für das Rendering in immersiven Projektionssystemen verwendet Vistle OpenCOVER. Die Visualisierungsparameter können aus der virtuellen Umgebung heraus manipuliert werden. Große Datensätze können mit OpenGL sort-last parallel rendering und depth compositing dargestellt werden. Für die Skalierung mit der Simulation auf entfernten HPC-Ressourcen ist ein CPU-basierter hybrider Sort-Last/Sort-First-Parallel-Raycasting-Renderer verfügbar. Das "Remote Hybrid Rendering" ermöglicht es, seine Ausgabe mit dem lokalen Rendering zu kombinieren und gleichzeitig eine reibungslose Interaktivität zu gewährleisten, indem es vom Remote Rendering entkoppelt wird.
Das Vistle-System ist modular aufgebaut und kann leicht um zusätzliche Visualisierungsalgorithmen erweitert werden.
Der Quellcode ist auf GitHub verfügbar und steht unter der LPGL-Lizenz.