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.
Jun 19, 2013 |
Supercomputer architectures have evolved considerably over the last 20 years, particularly in the number of processors that are linked together. One aspect of HPC architecture that hasn't changed is the MPI programming model.
Jun 18, 2013 |
The world's largest supercomputers, like Tianhe-2, are great at traditional, compute-intensive HPC workloads, such as simulating atomic decay or modeling tornados. But data-intensive applications--such as mining big data sets for connections--is a different sort of workload, and runs best on a different sort of computer.
Jun 18, 2013 |
Researchers are finding innovative uses for Gordon, the 285 teraflop supercomputer housed at the San Diego Supercomputer Center (SDSC) that has a unique Flash-based storage system. Since going online, researchers have put the incredibly fast I/O to use on a wide variety of workloads, ranging from chemistry to political science.
Jun 17, 2013 |
The advent of low-power mobile processors and cloud delivery models is changing the economics of computing. But just as an economy car is good at different things than a full size truck, an HPC workload still has certain computing demands that neither the fastest smartphone nor the most elastic cloud cluster can fulfill.
Jun 14, 2013 |
For all the progress we've made in IT over the last 50 years, there's one area of life that has steadfastly eluded the grasp of computers: understanding human language. Now, researchers at the Texas Advanced Computing Center (TACC) are utilizing a Hadoop cluster on its Longhorn supercomputer to move the state of the art of language processing a little bit further.
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.
Join HPCwire Editor Nicole Hemsoth and Dr. David Bader from Georgia Tech as they take center stage on opening night at Atlanta's first Big Data Kick Off Week, filmed in front of a live audience. Nicole and David look at the evolution of HPC, today's big data challenges, discuss real world solutions, and reveal their predictions. Exactly what does the future holds for HPC?
Join our webinar to learn how IT managers can migrate to a more resilient, flexible and scalable solution that grows with the data center. Mellanox VMS is future-proof, efficient and brings significant CAPEX and OPEX savings. The VMS is available today.