Abstract
GPU programs are widely used in industry. To obtain the best performance, a typical development process involves the manual or semi-automatic application of optimizations prior to compiling the code. To avoid the introduction of errors, we can augment GPU programs with (pre- and postcondition-style) annotations to capture functional properties. However, keeping these annotations correct when optimizing GPU programs is labor-intensive and error-prone. This paper introduces Alpinist, an annotation-aware GPU program optimizer. It applies frequently-used GPU optimizations, but besides transforming code, it also transforms the annotations. We evaluate Alpinist, in combination with the VerCors program verifier, to automatically optimize a collection of verified programs and reverify them.
| Original language | English |
|---|---|
| Title of host publication | Tools and Algorithms for the Construction and Analysis of Systems |
| Subtitle of host publication | 28th International Conference, TACAS 2022, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2022, Munich, Germany, April 2–7, 2022, Proceedings, Part II |
| Editors | Dana Fisman, Grigore Rosu |
| Place of Publication | Cham |
| Publisher | Springer |
| Pages | 332-352 |
| Number of pages | 21 |
| ISBN (Electronic) | 978-3-030-99527-0 |
| ISBN (Print) | 978-3-030-99526-3 |
| DOIs | |
| Publication status | Published - 30 Mar 2022 |
| Event | 28th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2022 held as part of 25th European Joint Conferences on Theory and Practice of Software, ETAPS 2022 - Munich, Germany Duration: 2 Apr 2022 → 7 Apr 2022 |
Publication series
| Name | Lecture Notes in Computer Science (LNCS) |
|---|---|
| Volume | 13244 |
| ISSN (Print) | 0302-9743 |
| ISSN (Electronic) | 1611-3349 |
Conference
| Conference | 28th International Conference on Tools and Algorithms for the Construction and Analysis of Systems, TACAS 2022 held as part of 25th European Joint Conferences on Theory and Practice of Software, ETAPS 2022 |
|---|---|
| Country/Territory | Germany |
| City | Munich |
| Period | 2/04/22 → 7/04/22 |
Funding
★ This work is supported by NWO grant 639.023.710 for the Mercedes project and by NWO TTW grant 17249 for the ChEOPS project
Keywords
- Annotation-aware
- Deductive verification
- GPU
- Optimization
- Program transformation