Ginkgo
Description
Gudrun spricht mit Hartwig Anzt. Er leitet die Helmholtz-Nachwuchsgruppe Fixed-point methods for numerics at Exascale (FiNE) am SCC. Seine Forschung beschäftigt sich mit numerischer linearer Algebra in modernen Hochleistungsrechnersystemen. Angesichts des explosionsartigen Anstiegs der Hardware-Parallelität erfordert die effiziente Ausführung von Anwendungen auf solchen Systemen eine völlige Neugestaltung der zugrunde liegenden numerischen Methoden. Dieses neue Paradigma muss Implementierungen umfassen, die sich auf die Parallelität auf Knotenebene, ein reduziertes globales Kommunikationsvolumen und abgeschwächte Synchronisationsanforderungen konzentrieren.
Hartwig ist Teil des PEEKS und xSDK-Projekts und leitet die Multiprecision-Initiative im US Exascale Computing Project (ECP). Das Ziel dieser Initiative besteht darin, die Nutzung verschiedener arithmetischer Präzisionen in numerische Algorithmen zu erforschen, wodurch viele Algorithmen beschleunigt werden können, ohne dabei Genauigkeit einzubüßen.
Hartwigs Forschungsschwerpunkt liegt auf der Entwicklung und Optimierung numerischer Methoden für effizientes Hochleistungsrechnen. Insbesondere interessiert er sich für lineare Algebra für dünn besetzte Matrizen, iterative und asynchrone Methoden, Krylov-Löser und Vorkonditionierung. Die zugrundeliegende Idee besteht darin, numerische Probleme als Fixpunktprobleme umzuformulieren, um höhere Parallelisierungsgrade zu ermöglichen. Die Implementierung der Fixpunktmethoden macht typischerweise starken Gebrauch von (datenparallelen) Batch-Routinen und weist schwache Synchronisationsanforderungen auf. Die Algorithmenforschung wird ergänzt durch Bemühungen, die auf eine nachhaltige Software-Entwicklung in einem akademischen Umfeld und einen gesunden Software-Lebenszyklus abzielen. Ein Ergebnis dieser Bemühungen ist Ginkgo, eine Open Source Softwarebibliothek für numerische lineare Algebra mit dem Fokus auf Löser für dünn besetzte Systeme, die Hartwig ins Leben gerufen hat.
Bei dem Stichwort Software-Nachhaltigkeit könnte man an das Vorhandensein eines Continuous Integration (CI)-Frameworks denken, also das Vorhandensein eines Test-Frameworks, das aus Unit-Tests, Integrationstests und End-to-End-Tests besteht (inkl. das Vorhandensein einer Software-Dokumentation). Wenn man jedoch fragt, was der übliche Todesstoß für ein wissenschaftliches Softwareprodukt ist, ist es oft die fehlende Plattform- und Leistungsportabilität. Vor diesem Hintergrund haben Hartwig und seine Gruppe wir Ginkgo-Bibliothek mit dem primären Fokus auf Plattform-Portabilität und der Fähigkeit, nicht nur auf neue Hardware-Architekturen zu portieren, sondern auch eine gute Performance zu erreichen, entwickelt. Die grundlegende Idee beim Design der Ginkgo-Bibliothek ist eine radikale Trennung der Algorithmen von den hardwarespezifischen Dingen.
Daneben sprechen Gudrun und Hartwig über die Nutzung von Kalkülen mit geringer Genauigkeit für letztendlich präzise Algorithmen. Die Hardware-Anbieter haben nämlich damit begonnen, spezielle Funktionseinheiten mit geringer Genauigkeit zu entwickeln, um der Nachfrage z.B. der Machine-Learning-Community und deren Bedarf an hoher Rechenleistung in Formaten mit geringer Genauigkeit zu entsprechen. Hartwig konzentriert sich darauf, wie dann Mixed- und Multiprecision-Technologie helfen kann, die Leistung dieser Methoden zu verbessern und findet Anwendungen, die die traditionellen Methoden mit fester Genauigkeit deutlich übertreffen.
Literatur und weiterführende Informationen
- Hartwig Anzt e.a.: Iterative sparse triangular solves for preconditioning European conference on parallel processing, 650-661 (2015).
- Ginkgo Numerik für lineare Algebra Paket
- Terry Cojean, Yu-Hsiang -Mike- Tsai, Hartwig Anzt: Ginkgo - A Math Library designed for Platform Portability 2020.
- Hartwig Anzt e.a.: An Environment for Sustainable Research Software in Germany and Beyond: Current State, Open Challenges, and Call for Action 2020.
Podcasts
- Exascale Computing Project Episode 47: Hartwig Anzt - Developing Multiprecision Algorithms with the Ginkgo Library Project, 2019.
- Exascale Computing Project - alle Folgen.
- C. Haupt, S. Ritterbusch: Research Software Engineering, Gespräch im Modellansatz Podcast, Folge 208, Fakultät für Mathematik, Karlsruher Institut für Technologie (KIT), 2019.
- S. Janosch, K. Förstner: Forschungssoftware in Deutschland, Open Science Radio, OSR091, 2017.
- F. Magin: Automated Binary Analysis, Gespräch mit S. Ritterbusch im Modellansatz Podcast, Folge 137, Fakultät für Mathematik, Karlsruher Institut für Technologie (KIT), 2017.