Tesla GPU Accelerators Hit the Gas with GPU Boost
Nvidia is rolling out a new top-end GPU accelerator, called the Tesla K40, that has both more processing capacity and more memory than the current K20X accelerator that is popular in high-end clusters – particularly those that need double precision floating point math.
The upgrade is offering significant performance improvements through the activation of more cores on the GPU and also through a new GPU Boost mode that lets the CUDA cores overclock.
It has been common practice to have a mid-life upgrade in the Tesla line as yields improve in the processes that Nvidia’s chip fabrication partner, Taiwan Semiconductor Manufacturing Corp, uses to etch the GPU chips. At some point, the yields are high enough that more of the CUDA cores on the chip can be turned on, which is usually not possible at the beginning of the product cycle. For instance, the original “Fermi” Tesla M2070 coprocessors, which debuted at SC09 in November 2009, had a GPU that had 512 CUDA, but only 448 of them were activated. They ran at 1.15 GHz. In May 2011, when the yields were better and the chip making processes at TSMC were refined, all of the 512 cores were fired up in the Tesla M2090 GPU coprocessor and clock speeds were edged up to 1.3 GHz.
The Tesla K40 is a similar kind of mid-life upgrade for the “Kepler” family of GPUs that are focused at the high end where both single-precision and double-precision floating point performance matter. With the Kepler design, Nvidia added a lot more CUDA cores to the GPU chip and cut the clock speeds in half compared to the Fermi chips, and this allowed for the GPU to do a lot more work and still stay within the 225 watt to 235 watt thermal envelope that a discrete GPU coprocessor card has to live within.
As you can see from the table below, the top-end Tesla K20X GPU accelerator that debuted in November 2012 at SC12 had 2,688 cores running at 732 MHz; it also had 6 GB of GDDR5 graphics memory for the GPU to use as it does its data crunching. It plugged into a PCI-Express 2.0 slot and delivered performance of 3.93 teraflops at single precision and 1.31 teraflops at double precision.
With the K40 GPU accelerator, the number of CUDA cores is increased to 2,880 (up 7.1 percent), the clock speed is nudged up to 745 MHz (up 1.8 percent), and the GDDR5 memory is 12 GB (double of the K20X card). The memory bandwidth is the K40 is, at 288 GB/sec, is 15.2 percent higher than in the K20X. The end result is that the base Tesla K40 can hit 4.29 teraflops at single precision and 1.43 teraflops at double precision, which is a 9.2 percent performance bump for both.
The K40 card plugs into a PCI-Express 3.0 x16 slot, which can handle roughly twice the I/O bandwidth as the prior PCI-Express 2.0 x16 slot used with the K20X. PCI-Express 3.0 slots are supported on the past “Sandy Bridge” and current “Ivy Bridge” Xeon E5 processors from Intel; AMD has not yet delivered an Opteron processor that supports PCI-Express 3.0, and this is one reason why its prospects in high performance computing have dimmed in recent years.
But that is not all you get. With the new GPU Boost mode, all of the cores can ratchet up their speed to either 810 MHz or 875 MHz to push the floating point performance higher at those times that the server enclosure in which the Tesla cards are slotted has the thermal headroom to let them run a little hotter.
Sumit Gupta, general manager of the Tesla Accelerated Computing business unit at Nvidia, tells HPCwire that the Tesla GPUs have very sophisticated mechanisms to keep the GPU from overheating, but the algorithms behind these throttles assume a worst-case scenario, even when the GPU is not actually burning that much electricity and generating that much heat. Unlike Turbo Boost on X86 server processors, which only lets one core accelerate to a much higher speed when other cores are relatively idle, the GPU boost feature ramps up the clocks on all of the CUDA cores to speed up their work. While Turbo Boost is automatic, GPU Boost has to be invoked, and this is done on purpose. “In a cluster, you need uniform performance across the nodes, and doing it this way is better than having each GPU invoke boosting itself.”
It is not clear how much of the performance boost with the Tesla K40 card is due to the doubling of the GDDR5 memory. But what is clear is that this expanded memory makes the Tesla K40 more applicable to certain workloads than its predecessors. Larger memories are needed for fluid dynamics, seismic analysis, and rendering workloads, just to name three.
“The datasets on some applications are so large that we have actually been limited in many ways in some markets because of the size of the memory,” explains Gupta. “This opens us up to most of the market now.”
So how much extra performance does the K40 provide compared to the K20X? The answer, as usual, is that it depends on the code. But here are some test results that Nvidia ran on some popular applications to give you an idea:
The incremental gains in moving from the K20X to the K40 are what you would expect from the feeds and speeds above, but what is immediately obvious is that GPU Boost really gooses the performance of applications. Anywhere from 20 to 40 percent, according to that chart, compared to the baseline K20X GPU.
Nvidia is shipping the Tesla K40 GPU coprocessors now, and expects for its server partners to embed them inside of their machines in the coming months. ASUS, Bull, Cray, Dell, Eurotech, Hewlett-Packard, IBM, Inspur, SGI, Sugon, Supermicro, and Tyan are all planning to use the K40 in their systems, and the zippy Tesla cards will also be available through Nvidia resellers. Nvidia does not provide pricing for any of its Tesla coprocessors because it does not sell them directly to consumers.
A number of supercomputer facilities are already getting their hands on the new Tesla K40 cards, including CSC Finland, the Texas Advanced Computing Center, CEA France, and Swinburne University of Technology. Gupta says that TACC will be deploying the K40 coprocessors in its “Maverick” visualization and data analytics system and expects to have it operational by January of next year.