Visit additional Tabor Communication Publications
October 15, 2012
Chipmaker NVIDIA has released CUDA 5, its latest and greatest toolkit for GPU computing. This new version adds Kepler hardware support for the supercomputing crowd as well as extra functionality to boost developer productivity. CUDA 5 is being launched just a few months ahead of the new K20 GPU, which is scheduled to be available before the end of the year.
Supporting advanced hardware features and increasing developing friendliness have always been a priority for the CUDA software engineers, but with Intel's Xeon Phi and its built-in support in Parallel Studio expected to be released about the same time as the K20, there is an additional incentive for NVIDIA to make its programming platform more CPU-like.
The CUDA 5 release candidate has been out since spring, so GPU computing enthusiasts already have a taste of what it can do. Will Ramey, senior product manager of the NVIDIA's GPU Computing Software group, says from the level of interest he's seen from the early release, he's expecting it to have a significant impact. "I believe this is going to be our most successful and widely used CUDA release ever," he told HPCwire.
As far as the Kepler hardware goes, CUDA 5 will support the new "dynamic parallelism" and RDMA-enabled GPUDirect – two significant additions that the new Kepler chips will bring to high performance computing. For most programmers, the first feature will have a more far-reaching impact on application development. Dynamic parallelism allows the GPU to spawn its own threads, rather than having to rely on the CPU host to do it. That means a whole host of codes that used to require too much CPU-GPU interaction to make for a feasible port, can now be transitioned to the Kepler GPUs without the constraint of the communication overhead.
To make that type of code development more comfortable, NVIDIA has come up with GPU callable libraries, whose routines can be called natively from the application code running on the graphics processor. Prior to this, all the standard libraries were callable from the host side only, which made sense since prior to dynamic parallelism, the CPU was in charge of the application's control flow. The design allows for plug-in APIs and callbacks, which enables developers to extend the capabilities of these routines even further.
NVIDIA is getting the ball rolling here by providing its own CUDA BLAS (Basic Linear Algebra Subroutines) package as a callable library. But the more significant impact is that it will allow ISVs and third-party developers to create these libraries as well, and build up a set of kernel packages, which can be shared more widely across the GPU computing ecosystem
Further, these callable libraries can be compiled separately, just as you would in a typical CPU build environment (Prior to this, all the code for a GPU app had to compiled together as monolithic source deck.) So you can build a GPU kernel from a number of source files and just link the individual objects at build time. This particular feature has no dependency on the Kepler GPUs and dynamic parallelism, so it's applicable to the Fermi generation GPUs as well.
Because you can compile each source file individually, developers can enjoy significantly faster turnaround during intensive software development. According to Ramey, one NVIDIA customer had an application that encapsulated around 47,000 lines of code, and if just a single line was changed, it took around a minute to recompile all the sources. With this capability, the customer's library recompilation now takes about four seconds.
The GPUDirect feature, which includes a hardware assist for RDMA, is also supported in the CUDA 5 software. It allows code that runs in the GPU to exchange data with other GPUs or any PCIe devices, without needing to coordinate it through the CPU host (although GPUDirect-aware software is also required for the PCIe device). That saves time for both the CPU and GPU.
With GPUDirect, InfiniBand host adapters and PCIe-connected sensors can take advantage of the RDMA acceleration by talking directly with the GPU. GE already has some of this technology working with some of its embedded systems outfitted with custom sensors that stream data into the graphics chip.
The final big addition in CUDA 5 is support for Linux and Mac OS development via an integration of NVIDIA's Nsight development environment for Linux with the open source Eclipse IDE. CUDA 4 offered a shrink-wrapped development environment for Windows via a Visual Studio integration, but Linux users were left to cobble something together themselves. With CUDA 5, compiling, debugging, performance analysis, and other dev tools are now integrated into the Eclipse interface, providing a much more user-friendly interface for Linux developers.
As with the CUDA toolkits that went before it, this fifth generation is backward compatible all the way to the first G80 CUDA chip, when NVIDIA started its GPU computing push in earnest. As such, this latest version can target over 450 million GPUs in the field today. And since CUDA is free for the taking from NVIDIA's developer site, there's not much of a downside to pulling in this latest upgrade.
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.
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.
May 10, 2013 |
Program provides cash awards up to $10,000 for the best open-source end-user applications deployed on 100G network.
May 09, 2013 |
The Japanese government has revealed its plans to best its previous K Computer efforts with what they hope will be the first exascale system...
May 08, 2013 |
For engineers looking to leverage high-performance computing, the accessibility of a cloud-based approach is a powerful draw, but there are costs that may not be readily apparent.
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.
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.
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.
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.