Nvidia CUDA now built against LLVM and their C/C++ Compiler

Posted:
in Future Apple Hardware edited January 2014
http://blog.llvm.org/



Quote:

NVIDIA CUDA 4.1 Compiler Now Built on LLVM

From the NVIDIA CUDA compiler team:



CUDA is a parallel programming model and platform created by NVIDIA for harnessing the power of hundreds of cores in modern graphics processing units (GPUs). NVIDIA provides free support for CUDA C and C++ in the CUDA toolkit. The CUDA programming environment consists of a compiler targeting NVIDIA GPUs and has been adopted by thousands of developers.



At NVIDIA we have switched over to using LLVM inside the CUDA C/C++ compiler for Fermi and future architectures. We use LLVM for optimizations and PTX code generation and for generating debug information for CUDA debugging. From a developer's perspective the new compiler is functionally on par with the previous compilers and produces better code with better compile times. We have extended the LLVM core compiler to understand data parallel programming model. It is now available, as part of CUDA 4.1 and you can learn more here.



Our experience with the use of LLVM has been very positive, starting with a modern compiler infrastructure and with high quality optimizations contributed by a large community of developers. The effort required to learn LLVM infrastructure is quite small and reasonable.



I give it the release of LLVM/Clang 3.1 which complete the C++ 2011 standards support and you can bank on Nvidia dumping their compiler and using Clang. Intel is in the midst of doing the same with LLVM.



PTX Support was added near the second half of the 3.0 release cycle. This smells of seeing AMD and it's OpenCL stack embracing LLVM/Clang as reactive less than a proactive change.

Comments

  • Reply 1 of 1
    wizard69wizard69 Posts: 13,377member
    Quote:
    Originally Posted by mdriftmeyer View Post








    I give it the release of LLVM/Clang 3.1 which complete the C++ 2011 standards support and you can bank on Nvidia dumping their compiler and using Clang. Intel is in the midst of doing the same with LLVM.



    I haven't heard of Intels interest here, but I wouldn't be surprised. LLVM & CLang are very impressive, open sourced and most importantly not saddled with the GPL! As to NVidia I see this as a sign. CLang and family are just to compelling to stay away from.

    Quote:

    PTX Support was added near the second half of the 3.0 release cycle. This smells of seeing AMD and it's OpenCL stack embracing LLVM/Clang as reactive less than a proactive change.



    I'm not sure how to take that. AMD went all in embracing OpenCL and eventually the LLVM technologies real early in the process. This has been very beneficial to them in their competition with NVidia. So if you mean NVidia is in reactionary mode than I'd say yes they are. The only people sticking to CUDA are those with heavy investments in it already. The rest of the industry wants the freedom of OpenCL.



    It is actually pretty amazing to see how Apple can shake up entire industries with public releases, under generous terms, of key technologies.
Sign In or Register to comment.