Feeds

Nvidia kicks out CUDA 3.1 for GPUs

Parallel Nsight plug-in for Visual Studio, too

Protecting against web application threats using SSL

If GPU coprocessors are going to go mainstream as adjuncts to CPUs in workstations and servers, the programming has to get easier and developers have to be able to exploit the languages, libraries, and development tools they have traditionally been using to create applications for PCs and servers.

With the launch of the CUDA 3.1 development kit and the Parallel Nsight plug-in for Microsoft's Visual Studio IDE, Nvidia is several steps closer to splashing in that mainstream.

While the CUDA 3.1 software development kit, which you can get here, was announced today alongside the Parallel Nsight plug-in, Ian Buck, software director for GPUs at Nvidia, says the code has actually been available since June 23 and has already gotten tens of thousands of downloads.

The original CUDA 1.X toolkit from 2007 had a C compiler made by Nvidia and C extensions to allow routines to be dispatched to Nvidia GPUs in a workstation or server. The SDK could do single precision math on one or more GPUs in a machine and supported 64-bit Windows XP platforms. In 2008, with the CUDA 2.X toolkit and the next generation of GPUs, Windows Vista and Mac OS X support was added, as was the ability to do double-precision math calculations on the "Tesla" family of GPUs; the Parallel Nsight plug-in for Visual Studio went into beta that year.

With the CUDA 3.0 toolkit, which came out in March of this year concurrent more or less with the "Fermi" GPUs, Nvidia added support for C++ class templates and class inheritance, beefing up its C++ support. (The official Fortran compiler for Nvidia GPUs comes from Portland Group, and according to Buck, there is no plan for Nvidia to cook up its own Fortran - or Java or PHP or any other languages other than C and C++.)

With CUDA 3.1, the SDK is getting a feature called GPUDirect, a technology Nvidia has developed in conjunction with InfiniBand networking specialist Mellanox to allow direct GPU-to-GPU data transfers over InfiniBand networks without getting those silly CPUs (who think they run everything in the system) involved. The GPUDirect APIs are about more than an InfiniBand adapter, of course, and have been written to give any third party device a means of accessing GPU memory directly. GPUDirect is supported on Quadro graphics cards and Tesla GPUs.

As you can see from the release notes, CUDA 3.1 also gives 16-way kernel concurrency, allowing for up to 16 different kernels to run at the same time on Fermi GPUs. Buck said a bunch of needed C++ features were added, such as support for function pointers and recursion to allow for more C++ apps to run on GPUs as well as a unified Visual Profiler that supports CUDA C/C++ as well as OpenCL. The math libraries in the CUDA 3.1 SDK were also goosed, with some having up to 25 per cent performance improvements, according to Buck.

Looking ahead, it doesn’t look like the GNU C/C++ compiler will ever be ported by Nvidia to GPUs, but there's nothing stopping the open source community from doing so. Looking ahead to the future of CUDA, Buck says that generally speaking, anything that a CPU can do in terms of programming will have to be supported on the GPU. That's why Nvidia will be adding more and more C++ features to CUDA over time, adding new libraries for better supporting image processing and better exploiting the parallelism in the GPU to do calculations. Generally speaking, the idea will be to have applications rely less and less on the CPU and just let the GPUs do all of the hard work. The plan calls for integrating GPUs more deeply into systems and allowing job schedulers uses to control parallel supercomputing clusters to reach in and control GPUs as they do CPUs today.

Choosing a cloud hosting partner with confidence

More from The Register

next story
Wanna keep your data for 1,000 YEARS? No? Hard luck, HDS wants you to anyway
Combine Blu-ray and M-DISC and you get this monster
US boffins demo 'twisted radio' mux
OAM takes wireless signals to 32 Gbps
Google+ GOING, GOING ... ? Newbie Gmailers no longer forced into mandatory ID slurp
Mountain View distances itself from lame 'network thingy'
Apple flops out 2FA for iCloud in bid to stop future nude selfie leaks
Millions of 4chan users howl with laughter as Cupertino slams stable door
Students playing with impressive racks? Yes, it's cluster comp time
The most comprehensive coverage the world has ever seen. Ever
Run little spreadsheet, run! IBM's Watson is coming to gobble you up
Big Blue's big super's big appetite for big data in big clouds for big analytics
Seagate's triple-headed Cerberus could SAVE the DISK WORLD
... and possibly bring us even more HAMR time. Yay!
prev story

Whitepapers

Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.
WIN a very cool portable ZX Spectrum
Win a one-off portable Spectrum built by legendary hardware hacker Ben Heck
Storage capacity and performance optimization at Mizuno USA
Mizuno USA turn to Tegile storage technology to solve both their SAN and backup issues.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
The next step in data security
With recent increased privacy concerns and computers becoming more powerful, the chance of hackers being able to crack smaller-sized RSA keys increases.