Modeling and analyzing evaluation cost of CUDA kernels
Modeling and analyzing evaluation cost of CUDA kernels
复制标题
CUDA 内核评估成本建模与分析
DOI:
10.1145/3434306
复制
发表时间:
2021
影响因子:
--
通讯作者:
Hoffmann, Jan
中科院分区:
文献类型:
--
作者:
Muller, Stefan K.;Hoffmann, Jan
General-purpose programming on GPUs (GPGPU) is becoming increasingly in vogue as applications such as machine learning and scientific computing demand high throughput in vector-parallel applications. NVIDIA's CUDA toolkit seeks to make GPGPU programming accessible by allowing programmers to write GPU functions, called kernels, in a small extension of C/C++. However, due to CUDA's complex execution model, the performance characteristics of CUDA kernels are difficult to predict, especially for novice programmers.This paper introduces a novel quantitative program logic for CUDA kernels, which allows programmers to reason about both functional correctness and resource usage of CUDA kernels, paying particular attention to a set of common but CUDA-specific performance bottlenecks. The logic is proved sound with respect to a novel operational cost semantics for CUDA kernels. The semantics, logic and soundness proofs are formalized in Coq. An inference algorithm based on LP solving automatically synthesizes symbolic resource bounds by generating derivations in the logic. This algorithm is the basis of RaCuda, an end-to-end resource-analysis tool for kernels, which has been implemented using an existing resource-analysis tool for imperative programs. An experimental evaluation on a suite of CUDA benchmarks shows that the analysis is effective in aiding the detection of performance bugs in CUDA kernels.
登录
查看更多内容
DOI:
--
发表时间:
2015
期刊:
Parallel Processing and Applied Mathematics
影响因子:
--
作者:
P. Bialas;A. Strzelecki
通讯作者:
A. Strzelecki
DOI:
10.1145/232627.232650
发表时间:
1996
期刊:
Proceedings of the 19th International Symposium on Principles and Practice of Declarative Programming
影响因子:
--
作者:
G. Blelloch;John Greiner
通讯作者:
John Greiner
DOI:
10.1145/224164.224210
发表时间:
1995
期刊:
Proceedings 16th Annual IEEE Symposium on Logic in Computer Science
影响因子:
--
作者:
G. Blelloch;John Greiner
通讯作者:
John Greiner
DOI:
10.2168/lmcs-8(4:11)2012
发表时间:
2011
期刊:
2011 IEEE 26th Annual Symposium on Logic in Computer Science
影响因子:
--
作者:
Ugo Dal Lago;Marco Gaboardi
通讯作者:
Marco Gaboardi
DOI:
10.1007/978-3-319-63387-9_25
发表时间:
2017
期刊:
Proceedings of the 4th International Workshop on OpenCL
影响因子:
--
作者:
R. Alur;Joseph Devietti;O. N. Leija;N. Singhania
通讯作者:
N. Singhania