Programming GPUs Beyond CUDA
Graphics Processing Units (GPUs) are playing an important role in the current general-purpose computing market. The common approach to programming GPUs today is to write GPU-specific code with low-level GPU APIs such as CUDA. Although this approach can produce very good performance, it raises serious portability issues: programmers are required to write a specific version of code for each potential target architecture. This results, however, in high development and maintenance costs.
We believe this challenge can be met by a programming model that provides source code portability between CPUs and GPUs, and among different GPUs: Programmers only need to write one version of the code, which can then be compiled and executed efficiently on either CPUs or GPUs without modification. In this talk, we propose MapCG, a MapReduce framework to provide source code-level portability between CPUs and GPUs. As opposed to OpenCL, our framework is based on MapReduce, which provides a high-level programming model, making programming much easier.
Wenguang Chen received the B.S. and Ph.D. degrees in computer science from Tsinghua University in 1995 and 2000, respectively. He served as the CTO of Opportunity International Inc. from 2000-2002. He returned to Tsinghua University in January 2003, where he is now a professor and associate head of the Department of Computer Science and Technology. His research interests are in parallel and distributed computing, programming models, and mobile cloud computing.
This event has expired. Available online resources are listed below: