elib
DLR-Header
DLR-Logo -> http://www.dlr.de
DLR Portal Home | Impressum | Datenschutz | Barrierefreiheit | Kontakt | English
Schriftgröße: [-] Text [+]

Explicit SIMD Vectorization with modern C++

Krzikalla, Olaf und Wendler, Johannes und Huismann, Immo (2025) Explicit SIMD Vectorization with modern C++. In: 27th IEEE International Conference on High Performance Computing and Communications, HPCC 2025. IEEE. The 27th IEEE International Conference on High Performance Computing and Communications (HPCC-2025), 2025-08-13 - 2025-08-15, Exeter, UK. doi: 10.1109/HPCC67675.2025.00033. ISBN 979-833156874-0.

[img] PDF - Nur DLR-intern zugänglich
1MB

Offizielle URL: https://ieeexplore.ieee.org/abstract/document/11207437

Kurzfassung

Loop vectorization remains a challenging task. While automatic vectorization from compilers can now handle a wide range of codes, the underlying dependency reasoning tends to fail when either data or control flow become too complex. Guided vectorization as, e.g., provided by OpenMP pragmas, allows the compiler to offload the reasoning to the developer and handle more code in turn. However, neither guided nor automatic vectorization has yet been able to generate suitable data structures for vectorized code. In this case, explicit vectorization remains the sole option for programmers. We present our general-purpose approach to explicitly vector- ize complex loops based on C++ templates and the upcoming std::simd library. The core idea of this approach is the introduction of a SIMD index type, which allows loop bodies to be completely written in a simd-generic way. On top of that, we have developed the open source library SIMD_ACCESS, which complements std::simd. This library adds streamlined load and store expressions, residual and aligning loop handling and a framework for vectorizing data structures. We conclude the paper with a performance evaluation. We show that there is no performance overhead caused by our ab- straction layer. Finally, we investigate and compare two different vectorization approaches of a loop in a Discontinous-Galerkin Spectral-Element Method in an industry-grade CFD code for unstructured meshes.

elib-URL des Eintrags:https://elib.dlr.de/214904/
Dokumentart:Konferenzbeitrag (Vortrag)
Titel:Explicit SIMD Vectorization with modern C++
Autoren:
AutorenInstitution oder E-Mail-AdresseAutoren-ORCID-iDORCID Put Code
Krzikalla, OlafOlaf.Krzikalla (at) dlr.deNICHT SPEZIFIZIERTNICHT SPEZIFIZIERT
Wendler, Johannesjohannes.wendler (at) dlr.deNICHT SPEZIFIZIERTNICHT SPEZIFIZIERT
Huismann, ImmoImmo.Huismann (at) dlr.dehttps://orcid.org/0009-0008-5827-9266204770702
Datum:15 August 2025
Erschienen in:27th IEEE International Conference on High Performance Computing and Communications, HPCC 2025
Referierte Publikation:Ja
Open Access:Nein
Gold Open Access:Nein
In SCOPUS:Ja
In ISI Web of Science:Nein
DOI:10.1109/HPCC67675.2025.00033
Verlag:IEEE
ISBN:979-833156874-0
Status:veröffentlicht
Stichwörter:SIMD, Vectorization, C++, Open Source Library
Veranstaltungstitel:The 27th IEEE International Conference on High Performance Computing and Communications (HPCC-2025)
Veranstaltungsort:Exeter, UK
Veranstaltungsart:internationale Konferenz
Veranstaltungsbeginn:13 August 2025
Veranstaltungsende:15 August 2025
HGF - Forschungsbereich:Luftfahrt, Raumfahrt und Verkehr
HGF - Programm:Luftfahrt
HGF - Programmthema:Effizientes Luftfahrzeug
DLR - Schwerpunkt:Luftfahrt
DLR - Forschungsgebiet:L EV - Effizientes Luftfahrzeug
DLR - Teilgebiet (Projekt, Vorhaben):L - Digitale Technologien
Standort: Dresden
Institute & Einrichtungen:Institut für Softwaremethoden zur Produkt-Virtualisierung > Hochleistungsrechnen
Hinterlegt von: Krzikalla, Olaf
Hinterlegt am:05 Feb 2026 08:51
Letzte Änderung:05 Feb 2026 08:57

Nur für Mitarbeiter des Archivs: Kontrollseite des Eintrags

Blättern
Suchen
Hilfe & Kontakt
Informationen
OpenAIRE Validator logo electronic library verwendet EPrints 3.3.12
Gestaltung Webseite und Datenbank: Copyright © Deutsches Zentrum für Luft- und Raumfahrt (DLR). Alle Rechte vorbehalten.