Improving CUDA™ C/C++ encoding readability to foster parallel application development

Bruno F.L. Santos, Hendrik Teixeira Macedo · ACM SIGSOFT Software Engineering Notes · 2012

Graphical Processing Units (GPUs) have recently been used to enable parallel application development. The most prominent initiative has been provided by NVIDIA™ with the so-called CUDA™ architecture, designed to GeForce™ graphic cards. However, even with CUDA C-like programming language, parallel codification remains somewhat awkward if compared to sequential codification. The programmer still has to deal with low-level hardware details such as generation and synchronization of threads and GPU tracks and sectors. In this paper, we propose a programmer-friendly interface for CUDA-C programming, in such a way that most hardware details are hidden from the programmer. We show how code readability is improved without undermining parallel execution performance.

Read the paper · More papers on PaperTik