Offline- und Online-Autotuning von Parallelen Programmen
Offline and Online Autotuning of Parallel Applications
Wissenschaftsdisziplinen
Informatik (100%)
Keywords
-
Autotuning,
MPI,
Benchmarking,
Reproducibility,
Performance Models
Viele wissenschaftliche Anwendungen, z.B. Klima- oder Erdbebensimulationen, werden auf großen Parallelrechnern ausgeführt, um die Rechenzeit zu verkürzen. Diese Parallelrechner bestehen aus hunderten oder tausenden von Rechnerknoten, wobei jeder dieser Knoten einem normalen Desktop-Computer ähnlich ist. Die meisten dieser parallelen Anwendungen verwenden das Message Passing Interface (MPI) als Schnittstelle für die notwendige Datenkommunikation über das Netzwerk. Aus diesem Grund ist die Laufzeit von Anwendungen stark von der Güte der jeweiligen MPI-Bibliothek abhängig. Deshalb ist es wichtig, die bestmögliche MPI-Bibliothek für einen Rechner zur Verfügung zu stellen. In den letzten zwei Jahrzehnten wurden viele effiziente Algorithmen für MPI entwickelt, welche auch in den entsprechenden MPI-Bibliotheken zu finden sind. Das Problem ist jedoch, dass nicht jeder Algorithmus für jedes Problem geeignet ist. Aus diesem Grund muss man eine MPI-Bibliothek an ein System anpassen. Der Prozess der Optimierung soll natürlich möglichst automatisiert erfolgen. Aus diesem Grund hat unser Projekt das Ziel, die Parameter von MPI-Bibliotheken so zu optimieren, dass für jede Anwendung und Maschine effiziente Einstellungen gesetzt werden können. Das Problem hierbei ist, dass MPI-Bibliotheken mehrere hundert Parameter besitzen, welche diverse Systemeigenschaften und die Algorithmenauswahl steuern. Der Suchraum ist damit viel zu groß, um alle Parameterkombinationen mit vertretbarem Aufwand auszuprobieren. Statistische Methoden können uns helfen, die Anzahl der wichtigen Parameter zu verkleinern. Um die Auswahl der intern verwendeten Algorithmen zu optimieren, werden zusätzlich moderne Verfahren des maschinellen Lernens eingesetzt. Als Gesamtprodukt erhält man dann eine Software, die sich automatisiert an einen Parallelrechner anpasst.
- Technische Universität Wien - 50%
- Universität Wien - 50%
- Siegfried Benkner, Universität Wien , assoziierte:r Forschungspartner:in
- Balazs Gerofi, Reserach Center for Computational Science - Japan
- George Bosilca, University of Tennessee - Vereinigte Staaten von Amerika
Research Output
- 11 Zitationen
- 5 Publikationen
-
2024
Titel Exploring Scalability in C++ Parallel STL Implementations DOI 10.1145/3673038.3673065 Typ Conference Proceeding Abstract Autor Laso R Seiten 284-293 Link Publikation -
2022
Titel OMPICollTune: Autotuning MPI Collectives by Incremental Online Learning DOI 10.1109/pmbs56514.2022.00016 Typ Conference Proceeding Abstract Autor Hunold S Seiten 123-128 -
2022
Titel Cache-oblivious Hilbert Curve-based Blocking Scheme for Matrix Transposition DOI 10.1145/3555353 Typ Journal Article Autor Alves J Journal ACM Transactions on Mathematical Software Seiten 1-28 Link Publikation -
2021
Titel MicroBench Maker: Reproduce, Reuse, Improve DOI 10.1109/pmbs54543.2021.00013 Typ Conference Proceeding Abstract Autor Hunold S Seiten 69-74 -
2023
Titel A Novel Triangular Space-Filling Curve for Cache-Oblivious In-Place Transposition of Square Matrices DOI 10.1109/ipdps54959.2023.00045 Typ Conference Proceeding Abstract Autor Alves J Seiten 368-378