Ernst, Dominik und Hager, Georg und Thies, Jonas und Wellein, Gerhard (2020) Performance engineering for real and complex tall & skinny matrix multiplication kernels on GPUs. International Journal on High Performance Computing Applications. SAGE Publications. doi: 10.1177/1094342020965661. ISSN 1094-3420.
PDF
- Verlagsversion (veröffentlichte Fassung)
1MB |
Offizielle URL: https://journals.sagepub.com/doi/10.1177/1094342020965661
Kurzfassung
General matrix-matrix multiplications with double-precision real and complex entries (DGEMM and ZGEMM) in vendor-supplied BLAS libraries are best optimized for square matrices but often show bad performance for tall & skinny matrices, which are much taller than wide. NVIDIA’s current CUBLAS implementation delivers only a fraction of the potential performance as indicated by the roofline model in this case. We describe the challenges and key characteristics of an implementation that can achieve close to optimal performance. We further evaluate different strategies of parallelization and thread distribution and devise a flexible, configurable mapping scheme. To ensure flexibility and allow for highly tailored implementations we use code generation combined with autotuning. For a large range of matrix sizes in the domain of interest we achieve at least 2/3 of the roofline performance and often substantially outperform state-of-the art CUBLAS results on an NVIDIA Volta GPGPU.
elib-URL des Eintrags: | https://elib.dlr.de/137944/ | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Dokumentart: | Zeitschriftenbeitrag | ||||||||||||||||||||
Titel: | Performance engineering for real and complex tall & skinny matrix multiplication kernels on GPUs | ||||||||||||||||||||
Autoren: |
| ||||||||||||||||||||
Datum: | Oktober 2020 | ||||||||||||||||||||
Erschienen in: | International Journal on High Performance Computing Applications | ||||||||||||||||||||
Referierte Publikation: | Ja | ||||||||||||||||||||
Open Access: | Ja | ||||||||||||||||||||
Gold Open Access: | Nein | ||||||||||||||||||||
In SCOPUS: | Ja | ||||||||||||||||||||
In ISI Web of Science: | Ja | ||||||||||||||||||||
DOI: | 10.1177/1094342020965661 | ||||||||||||||||||||
Verlag: | SAGE Publications | ||||||||||||||||||||
ISSN: | 1094-3420 | ||||||||||||||||||||
Status: | veröffentlicht | ||||||||||||||||||||
Stichwörter: | Performance engineering, complex, tall & skinny, matrix multiplication, CUDA, GPU | ||||||||||||||||||||
HGF - Forschungsbereich: | Luftfahrt, Raumfahrt und Verkehr | ||||||||||||||||||||
HGF - Programm: | Raumfahrt | ||||||||||||||||||||
HGF - Programmthema: | Technik für Raumfahrtsysteme | ||||||||||||||||||||
DLR - Schwerpunkt: | Raumfahrt | ||||||||||||||||||||
DLR - Forschungsgebiet: | R SY - Technik für Raumfahrtsysteme | ||||||||||||||||||||
DLR - Teilgebiet (Projekt, Vorhaben): | R - Vorhaben SISTEC (alt) | ||||||||||||||||||||
Standort: | Köln-Porz | ||||||||||||||||||||
Institute & Einrichtungen: | Institut für Simulations- und Softwaretechnik | ||||||||||||||||||||
Hinterlegt von: | Thies, Jonas | ||||||||||||||||||||
Hinterlegt am: | 24 Nov 2020 13:44 | ||||||||||||||||||||
Letzte Änderung: | 17 Dez 2020 08:21 |
Nur für Mitarbeiter des Archivs: Kontrollseite des Eintrags