Abstract
In this paper we introduce a novel transformation pass written using LLVM that performs kernel fusion. We demonstrate the correctness and performance of the pass on several example programs inspired by scientific applications of interest. The method achieves up to 4× speedup relative to unfused versions of the programs, and exact performance parity with manually fused versions. In contrast to previous work, it also requires minimal user intervention. Our approach is facilitated by a new loop fusion algorithm capable of interprocedurally fusing both skewed and unskewed loops in different kernels.
Original language | English |
---|---|
Title of host publication | Proceedings of LLVM-HPC2020 and HiPar 2020 - 6th Workshop on the LLVM Compiler Infrastructure in HPC and Workshop on Hierarchical Parallelism for Exascale Computing, Held in conjunction with SC 2020 |
Subtitle of host publication | The International Conference for High Performance Computing, Networking, Storage and Analysis |
Publisher | Institute of Electrical and Electronics Engineers (IEEE) |
Pages | 45-55 |
Number of pages | 11 |
ISBN (Electronic) | 9780738110424 |
DOIs | |
Publication status | Published - Nov 2020 |
Event | 6th Workshop on the LLVM Compiler Infrastructure in HPC and Workshop on Hierarchical Parallelism for Exascale Computing, LLVM-HPC2020 and HiPar 2020 - Virtual, Atlanta, United States Duration: 12 Nov 2020 → … |
Publication series
Name | Proceedings of LLVM-HPC2020 and HiPar 2020 - 6th Workshop on the LLVM Compiler Infrastructure in HPC and Workshop on Hierarchical Parallelism for Exascale Computing, Held in conjunction with SC 2020: The International Conference for High Performance Computing, Networking, Storage and Analysis |
---|
Conference
Conference | 6th Workshop on the LLVM Compiler Infrastructure in HPC and Workshop on Hierarchical Parallelism for Exascale Computing, LLVM-HPC2020 and HiPar 2020 |
---|---|
Country/Territory | United States |
City | Virtual, Atlanta |
Period | 12/11/20 → … |
Bibliographical note
Publisher Copyright:© 2020 IEEE.
Keywords
- HPC
- kernel-fusion
- LLVM
- loop-fusion
- optimisation
ASJC Scopus subject areas
- Hardware and Architecture
- Control and Optimization