Slashdot Mirror


NVIDIA Releases Source To CUDA Compiler

An anonymous reader writes "NVIDIA has announced they have 'open-sourced' their new CUDA compiler so that their GPGPU platform can be brought to new architectures. NVIDIA's CUDA compiler is based upon LLVM. At the moment though they seem to be restricting the source code's access to 'qualified' individuals.' The official press release implies wider access to the source will happen later. It so happens that a few days ago AMD opened their OpenCL backend and added initial support to the Free Software r600 driver.

12 of 89 comments (clear)

  1. Re:GPU drivers by Anonymous Coward · · Score: 3, Informative

    They cant, not fully at least. They have to keep details about tilt-bits and other DRM and patented crap secret.

  2. any word on a license? by Trepidity · · Score: 3, Insightful

    Despite the phrase "open-source", there seems to be a distinct lack of information about whether this is a "source is now available for inspection" type release, or actually under an open-source license, and if so, which one.

  3. Re:GPU drivers by Anonymous Coward · · Score: 3, Informative

    If it's patented, then it isn't a secret anymore, by virtue of the patent.

  4. No they haven't by PatDev · · Score: 5, Interesting

    Title is correct. From TFA, the summary appears wrong. It seems they are not open sourcing anything. To quote TFA

    On December 13th, NVIDIA announced that it will open up the CUDA platform by releasing source code for the CUDA Compiler.

    They will let you look at the code, and they might let you send patches back to them. Nowhere I can find did NVIDIA promise anything along the lines of an open license, or even any license at all. This is more like a Microsoft shared-source deal, where you can look, but no rights or privileges are transferred to you.

    That said, it would still be cool to see.

  5. Re:GPU drivers by fnj · · Score: 3, Insightful

    Do you know something we don't? Is there some defiency in our understanding of patents? "A patent ... consists of a set of exclusive rights granted by a sovereign state to an inventor or their assignee for a limited period of time in exchange for the public disclosure of an invention" (emphasis added).

  6. Open Source the Libraries by melonakos · · Score: 4, Interesting

    IMO, open sourcing their GPU libraries would be a much bigger deal than only open sourcing the compiler. I would like to see CUBLAS, CUFFT, CUSPARSE, CURAND, etc all get opened up to the community.

    The pain is not in compiling GPU code; rather, the pain is in writing good GPU code. The major difference between NVIDIA and AMD (and the major edge NVIDIA has over AMD) is not as much the compiler as it is the libraries.

    Of course, I'm biased, because I work at AccelerEyes and we do GPU consulting with our freely available, but not open source, ArrayFire GPU library, which has both CUDA and OpenCL versions.

  7. Re:Can someone tell me NVidia's business model? by hardwareman · · Score: 4, Informative

    Well, They are making some of the best mobile/low-power solutions with the Tegra family of chip-sets.

    I also believe that it's still going to take some time before the integrated solutions (Intel IGP and AMD Fusion) are good enough to replace discrete graphics for gamers - where they are strong today.

  8. Re:So... by fsckmnky · · Score: 4, Interesting

    imho ... OpenCL is a much better path, because it can execute code on a CPU as well as a GPU. It can even target FPGAs for executing the parallel operations on reconfigurable hardware, as well as sharing output paths with OpenGL for visualization.

    The Nvidia driver ( at least for linux ) currently seems to only support Nvidia GPUs as a target, but the AMD driver supports AMD GPUs as well as the host systems CPU. Again, on linux at least, you can install both AMD and Nvidias drivers if you want to utilize your CPU ( via AMD driver ) and Nvidia GPU ( via Nvidia driver ) at the same time, although there are some minor framework related hoops to jump through to get parallel execution across multiple device platforms concurrently.

    These features seem to indicate native CUDA is pretty much a dead platform ( looking forward ).

  9. Re:Should work well with AMD 7000 series by GameboyRMH · · Score: 3, Interesting

    D'oh, NM, I RTFA'd:

    Nvidia's CUDA compiler will be able to create code that supports more programming languages and will run on AMD and Intel processors, while previously it ran only on Nvidia's GPUs. The company made the announcement today at the GPU Technology Conference in Beijing.

    Continuing to call it a CUDA compiler is a bit misleading then isn't it?

    --
    "When information is power, privacy is freedom" - Jah-Wren Ryel
  10. From TFA: CUDA runs on x86 by tepples · · Score: 3, Interesting

    OpenCL is a much better path, because it can execute code on a CPU as well as a GPU.

    So can CUDA, according to a graphic in one of the featured articles: "NVIDIA C or C++, PGI Fortran, or new language support, through LLVM-based CUDA compiler, to NVIDIA GPUs, x86 CPUs, and new processor support."

    1. Re:From TFA: CUDA runs on x86 by fsckmnky · · Score: 3, Interesting

      And as I said, the OpenCL driver I downloaded from Nvidia a week ago, doesn't support CPU's as a target. This is not to say CUDA isn't capable of doing this at some point or with some 3rd party addition, just that the capability currently doesn't exist, or at the very least, isn't being provided by Nvidia.

      Given the choice of a vendor-neutral platform, or a vendor-supplied platform ( where the odds of CUDA having support for AMD GPU's is near 0 ) ... as a developer, which would you choose ?

      Hence my prediction, OpenCL will win ( the hearts and minds contest ). It's already won mine. I wouldn't touch CUDA for fear of being locked into Nvidia products versus the open, broad support, of OpenCL. I even ordered an AMD video card, so I can ditch the Nvidia only driver entirely.

  11. Re:GPU drivers by hairyfeet · · Score: 3, Interesting

    Yes, please help proprietary hardware vendors by making sure nobody will support you, that's the ticket!

    I mean what do you think other hardware vendors are gonna do? they are gonna look at what happened with AMD. AMD releases all the specs they can (there are some bits that are part of HDCP they don't have the right to release) and even go so far as to hire developers out of their own pocket to support the free drivers, and what does the community do? What do you see on every forum, including here? "LOL use nvidia".

    Any company with a brain after seeing that would tell you and the rest of your little ungrateful "community" to fuck right off. So thanks, you are helping to ensure that FOSS stays the choice of hobbyist nerds and never gains any share, making sure guys like me have plenty of work, appreciate it pal.

    --
    ACs don't waste your time replying, your posts are never seen by me.