通过专门化编译器阶段选择和顺序来提高OpenCL性能

摘要:使用特定的编译器阶段顺序对OpenCL内核进行编译,以GPU为目标,实现了显著的性能提升。通过对15个OpenCL基准测试进行迭代探索,我们针对NVIDIA GPU专门定制了LLVM阶段顺序,并通过分析生成的NVIDIA PTX代码找出了最重要的改进原因。通过使用专门的编译器阶段顺序,相比于使用NVIDIA CUDA编译器生成的PTX代码或者使用NVIDIA OpenCL驱动编译的OpenCL内核,我们取得了1.54倍(最高可达5.48倍)和1.65倍(最高可达5.7倍)的几何平均性能提升。此外,我们还评估了在OpenCL内核中使用代码特性的效果,并通过使用与目标内核最相似的1个或3个基准测试的编译器序列,实现了1.49倍和1.56倍的几何平均性能提升。

作者:Ricardo Nobre, Lu''is Reis and Jo~ao M. P. Cardoso

论文ID:1810.10496

分类:Performance

分类简称:cs.PF

提交时间:2018-10-25

PDF 下载: 英文版 中文版pdf翻译中