Nvidia Releasing CUDA's Compiler Source Code
Nvidia is releasing the source code to its LLVM-based CUDA compiler for researchers and software tool vendors.
On Tuesday Nvidia announced its plans to provide the source code for the new CUDA low level virtual machine (LLVM) based compiler. This will be available for academic researchers and software tool vendors so they can easily add GPU support for more programming languages and support CUDA applications on alternative processor architectures. The actual compiler itself resides in the latest release of the publicly available CUDA Toolkit (v4.1), and is enhanced to support Nvidia's parallel GPUs.
"Opening up the CUDA platform is a significant step," said Sudhakar Yalamanchili, professor at Georgia Institute of Technology and lead of the Ocelot project, which maps software written in CUDA C to different processor architectures. "The future of computing is heterogeneous, and the CUDA programming model provides a powerful way to maximize performance on many different types of processors, including AMD GPUs and Intel x86 CPUs."
LLVM is an open source compiler infrastructure with a modular design that makes it easy to add support for new programming languages and processor architectures. It is used for a range of programming requirements by many leading companies, including Adobe, Apple, Cray, Electronic Arts, and others.
Nvidia believes that releasing the source code to the LLVM-based CUDA compiler will enable alternate approaches to programming and thus accelerate the development of exascale computing. Researchers will have more flexibility in mapping the CUDA programming model to other architectures. It will also further the overall development of next-generation higher performance computing platforms.
Early access to the CUDA compiler source code is available for qualified academic researchers and software tools developers by registering here: http://developer.nvidia.com/cuda-source. To learn more about the Nvidia CUDA programming environment, visit the CUDA web site.