HPC Application Support for GPU Computing — November 2015

EXECUTIVE SUMMARY

SPONSORED RESEARCH REPORT

Since 2007, when GPU computing was introduced to High Performance Computing (HPC) users, the technology has advanced rapidly. Demand for computational
GPUs has been driven largely by HPC practitioners looking for greater performance and improved energy efficiencies. The former has been a fundamental
driver in the HPC market since its inception, while the latter is a more recent demand that has come about as a result of the breakdown of Dennard
scaling. Thanks to GPUs’ throughput-optimized design and considerable floating point capability, GPU computing has been demonstrated to provide substantial
speed improvements over unoptimized x86 architectures, in the range of 2x to 10x, to HPC application codes in which vector or SIMD parallelism is applicable.
In these cases, GPU acceleration also generally exhibits strong performance per watt characteristics. GPU technology has found acceptance in the HPC
market, with nearly half of all new HPC systems deploying some level of the technology.[1]

 

The growth of GPU adoption for HPC has been driven almost entirely by NVIDIA, which has invested heavily in building a robust software ecosystem to support
its hardware. Specifically, the company has developed a set of parallel programming APIs, libraries, and associated software development tools to support
application development on its CUDA (Compute Unified Device Architecture) GPU platform. NVIDIA has also established over 20 GPU centers of excellence around
the world, as well as a global network of GPU research and educations centers encompassing hundreds of academic institutions. Those efforts have supported
the acceleration of software tool development for general-purpose GPU programming, in addition to aiding the porting of open-source HPC codes to GPUs.
The company has also collaborated with ISVs to help accelerate commercial HPC applications and libraries. Today, hundreds of such codes are now available,
promising speed-ups of anywhere from 10 to 20 percent up to more than 1,000-fold. For the most commonly accelerated codes, performance increases are usually
in the 2x to 10x range.

 

In this report, Intersect360 Research has identified the commonly used HPC applications that currently have GPU acceleration incorporated. According to
the latest HPC User Site Census data and additional research, of the 50 most popular application packages mentioned by HPC users, 34 offer GPU support
(including two under current development), including 9 of the top 10. We believe GPU computing has reached a tipping point in the HPC market that will
encourage continued increased in application optimization.



[1] HPCUser Site Census: Processors. Intersect360 Research, October 2015.

FOR THIS SPONSORED REPORT, THE FULL REPORT CAN BE ACCESSED BY CLICKING THE LINK FOR THE EXECUTIVE SUMMARY.