Feeds

Nvidia kicks out CUDA 3.1 for GPUs

Parallel Nsight plug-in for Visual Studio, too

Designing a Defense for Mobile Applications

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.

The Power of One eBook: Top reasons to choose HP BladeSystem

More from The Register

next story
Apple fanbois SCREAM as update BRICKS their Macbook Airs
Ragegasm spills over as firmware upgrade kills machines
Auntie remains MYSTIFIED by that weekend BBC iPlayer and website outage
Still doing 'forensics' on the caching layer – Beeb digi wonk
Attack of the clones: Oracle's latest Red Hat Linux lookalike arrives
Oracle's Linux boss says Larry's Linux isn't just for Oracle apps anymore
THUD! WD plonks down SIX TERABYTE 'consumer NAS' fatboy
Now that's a LOT of porn or pirated movies. Or, you know, other consumer stuff
EU's top data cops to meet Google, Microsoft et al over 'right to be forgotten'
Plan to hammer out 'coherent' guidelines. Good luck chaps!
US judge: YES, cops or feds so can slurp an ENTIRE Gmail account
Crooks don't have folders labelled 'drug records', opines NY beak
Manic malware Mayhem spreads through Linux, FreeBSD web servers
And how Google could cripple infection rate in a second
prev story

Whitepapers

Designing a Defense for Mobile Applications
Learn about the various considerations for defending mobile applications - from the application architecture itself to the myriad testing technologies.
How modern custom applications can spur business growth
Learn how to create, deploy and manage custom applications without consuming or expanding the need for scarce, expensive IT resources.
Reducing security risks from open source software
Follow a few strategies and your organization can gain the full benefits of open source and the cloud without compromising the security of your applications.
Boost IT visibility and business value
How building a great service catalog relieves pressure points and demonstrates the value of IT service management.
Consolidation: the foundation for IT and business transformation
In this whitepaper learn how effective consolidation of IT and business resources can enable multiple, meaningful business benefits.