Cray
HPCwire

Since 1986 - Covering the Fastest Computers
in the World and the People Who Run Them

Language Flags

Visit additional Tabor Communication Publications

Datanami
Digital Manufacturing Report
HPC in the Cloud
Green Computing Report

Tabor Communications
Corporate Video

NVIDIA Opens Up CUDA Compiler


GPU maker NVIDIA is going to make its CUDA compiler runtime source code, and internal representation format public, opening up the technology for different programming languages and processor architectures. The announcement was made on Wednesday at the kick-off of the GPU Technology Conference Asia in Beijing, China.

The company says it will use the LLVM compiler infrastructure as the vehicle for the public CUDA source code. LLVM is a open source project that maintains source code collections of various of compile, runtimes, and other development tools. The new LLVM-based CUDA source, will be available in the latest release of the CUDA Toolkit, version 4.1, which was also launched this week.

The CUDA open source set-up does not, however, mean NVIDIA will arbitrarily accept changes and enhancements to its compiler technology from other developers. The company still intends to retain complete control of its source code.  Tool developers will be able to modify the standard compiler and runtime for their own customized needs, but little of this is likely to be folded back into NVIDIA's code base

The main idea is to allow software tool makers to port the CUDA compiler to other environments that NVIDIA or its commercial partners are not interested in pursuing on their own. In the case of programming languages, there are already compilers for C, C++, and Fortran, which are the big three for high performance computing. But as the market for GPU computing expands, NVIDIA foresees the need for other languages such as Python or Java, as well as domain specific languages.

As far as CUDA compiler targets, there is a lot of room for interesting ports to other platforms. The prime candidate here is the AMD/ATI GPU platform. Even though CUDA is the most widespread programming environment for GPU computing, it only currently works on NVIDIA GPUs (and x86 multicore via a PGI compiler implementation). There are likely to be plenty of users with CUDA-based applications that are now interested in running their applications on AMD GPUs/APUs, or at least are interested in the prospect that their codes can do so at some future date.

AMD is still pushing its OpenCL strategy for GPU computing. OpenCL, a non-vendor-specific open standard for parallel computing, is supported by NVIDIA as well, but has not yet managed to attract a lot applications. By offering to open up CUDA, NVIDIA has probably blunted some of the appeal of OpenCL, that is, assuming a compiler vendor or an academic research group builds an CUDA-ized AMD GPU compiler.

Since CUDA is a general-purpose parallel computing technology, essentially any multicore/manycore architecture would be a potential target. Other possible architectures for CUDA include Intel's upcoming Many Integrated Core (MIC) coprocessor, Power CPUs, multicore ARM chips (especially for future 64-bit implementations), and even more exotic fare, like Texas Instruments' new floating-point capable DSPs.

The academic community most likely to take early advantage of an open CUDA compiler.  For example, at Georgia Tech, the Ocelot project is focused on applying CUDA C to different processors, including AMD GPUs and x86-CPUs. The project lead there, Sudhakar Yalamanchili, says the opening up of the CUDA technology is "a significant step."
 
Even compiler vendors who already have special arrangements with NVIDIA will be able to take advantage of the new open source strategy. In the press release, The Portland Group (PGI) director Doug Miles says “This initiative enables PGI to create native CUDA Fortran and OpenACC compilers that leverage the same device-level optimization technology used by NVIDIA CUDA C/C++. It will enable seamless debugging and profiling using existing tools, and allow PGI to focus on higher-level optimizations and language features.”

NVIDIA will not always directly benefit from its new open source stance. Certainly, if some enterprising team ports CUDA to AMD chips, that could cut into Tesla GPU sales. But for the greater good of attracting customers to its own hardware, NVIDIA realized that a closed platform discourages plenty of users who don't want to be locked into a single hardware platform or rely on a sole vendor. As with NVIDIA's recent endorsement of the OpenACC directives, the opening of CUDA  seems to be part of a strategy designed to broaden the appeal of GPU computing rather than just NVIDIA products. It appears the GPU maker has calculated that expanding the pie will get them further in the long run than just trying to maximize their slice of it.

Sponsored Links

High-Performance Computing in Action
Businesses that want to be on the cutting edge of their industries are increasingly turning to high-performance computing (HPC) solutions to handle complex compute processes and speed up their rate of innovation. Download this Executive Brief to see how businesses in energy, life sciences and entertainment put HPC solutions to work in their operations.

Accelerate your science with Seneca
One of the first HPC providers installing a 4X NVIDIA Kepler K-20 cluster. Invites you to a free evaluation on Seneca’s NVIDIA K20 Kepler cluster, pre-loaded with AMBER, NAMD, LAMMPS

Webinar: Programming Heterogeneous X64+GPU Systems Using OpenACC
Join Michael Wolfe as he compares the advantages and costs of using both low-level models and the directive-based OpenACC model for programming accelerated heterogeneous systems. Registration is free.

May 23, 2013

May 22, 2013

May 21, 2013

May 20, 2013

May 17, 2013

May 16, 2013

May 15, 2013

May 14, 2013

May 13, 2013


Most Read Features

Most Read Around the Web

Most Read This Just In

Cray CS300-LC

Short Takes

NASA Builds 'Climate in a Box'

May 23, 2013 | The study of climate change is one of those scientific problems where it is almost essential to model the entire Earth to attain accurate results and make worthwhile predictions. In an attempt to make climate science more accessible to smaller research facilities, NASA introduced what they call ‘Climate in a Box,’ a system they note acts as a desktop supercomputer.
Read more...

Building Supercomputers with Raspberries

May 22, 2013 | At some point in the not-too-distant future, building powerful, miniature computing systems will be considered a hobby for high schoolers, just as robotics or even Lego-building are today. That could be made possible through recent advancements made with the Raspberry Pi computers.
Read more...

Running Computational Fluid Dynamics in the Cloud

May 16, 2013 | When it comes to cloud, long distances mean unacceptably high latencies. Researchers from the University of Bonn in Germany examined those latency issues of doing CFD modeling in the cloud by utilizing a common CFD and its utilization in HPC instance types including both CPU and GPU cores of Amazon EC2.
Read more...

Computing the Physics of Bubbles

May 15, 2013 | Supercomputers at the Department of Energy’s National Energy Research Scientific Computing Center (NERSC) have worked on important computational problems such as collapse of the atomic state, the optimization of chemical catalysts, and now modeling popping bubbles.
Read more...

Sponsored Whitepapers

Best Practices in Big Data Storage

05/10/2013 | Cleversafe, Cray, DDN, NetApp, & Panasas | From Wall Street to Hollywood, drug discovery to homeland security, companies and organizations of all sizes and stripes are coming face to face with the challenges – and opportunities – afforded by Big Data. Before anyone can utilize these extraordinary data repositories, however, they must first harness and manage their data stores, and do so utilizing technologies that underscore affordability, security, and scalability.

Progress in Parallel: the Bull Parallel Programming Center

04/15/2013 | Bull | “50% of HPC users say their largest jobs scale to 120 cores or less.” How about yours? Are your codes ready to take advantage of today’s and tomorrow’s ultra-parallel HPC systems? Download this White Paper by Analysts Intersect360 Research to see what Bull and Intel’s Center for Excellence in Parallel Programming can do for your codes.

Sponsored Multimedia

SGI DMF ZeroWatt Disk Solution

In this demonstration of SGI DMF ZeroWatt disk solution, Dr. Eng Lim Goh, SGI CTO, discusses a function of SGI DMF software to reduce costs and power consumption in an exascale (Big Data) storage datacenter.

Cray CS300-AC Cluster Supercomputer Air Cooling Technology Video

The Cray CS300-AC cluster supercomputer offers energy efficient, air-cooled design based on modular, industry-standard platforms featuring the latest processor and network technologies and a wide range of datacenter cooling requirements.

SC12 Editorial Feature HPCwire Soundbite sponsored by ISC

HPC Job Bank


Featured Events


  • June 16, 2013 - June 20, 2013
    ISC'13
    Leipzig,
    Germany

  • June 17, 2013 - June 18, 2013
    Forecast 2013
    San Francisco, CA
    United States





HPCwire Events