CUDACL: A Tool for CUDA and OpenCL Programmers

Date:

Graphical Processing Unit (GPU) programming languages are increasingly used for general-purpose computing, but their low-level abstractions make them accessible primarily to expert parallel programmers. This project introduces a novel approach that enables C and Java developers to harness GPU computing power without delving into the technical complexities of CUDA or OpenCL.

We developed a prototype tool called CUDACL, which allows programmers to define one or more parallel execution blocks within a source file and run them directly on the GPU. CUDACL also supports seamless integration of CUDA or OpenCL kernel calls within existing applications.

The tool was designed based on an in-depth analysis of both CUDA and OpenCL programs, and its usability and performance were evaluated through two implementation scenarios. Results show that CUDACL provides a more efficient and effective means of leveraging GPU capabilities compared to existing approaches.

Slides