The latest issue of the EPCC News from the supercomputing contingent at the University of Edinburgh devoted a lot of digital ink to general-purpose GPU computing. The issue includes some historical background on the technology, a handful of GPGPU software projects at EPCC, and an announcement of a new GPU hardware resource.
The first article outlines a brief history of the graphics processor, tracing the evolution of the technology from the Commodore Amiga of the 1980s to the petaflopping Tianhe-1A system of TOP500 fame. Essentially it’s a story of how fixed-function hardware geared for processing pixels transformed into a data-parallel architecture that could be programmed for general-purpose computation.
The issue also highlights three scientific applications that have been ported to GPUs, including a Ludwig fluid dynamics package used for hydrodynamic modeling, a Chimaera wavefront algorithm, and a set of audio processing codes. All used NVIDIA Tesla gear and employed CUDA as the programming model.
The GPU-accelerated Ludwig code delivered a performance increase of 3x-4x compared to a CPU-only implementation with 12-core AMD Opterons. For the wave front algorithm, speedups in the range of 5x–10x were obtained for single precision (with work on the double precision version ongoing). The audio processing codes also outperformed CPU implementations — both MATLAB and C.
Also in the EPCC issue was an announcement of a new HECToR GPU testbed that is being made available to selected users who want to explore GPGPU development. The testbed consists of a standalone cluster encompassing four GPU-equipped nodes: two nodes with 4 NVIDIA C2050 Tesla cards; one with two C2050s plus two C2070 GPUs; and the last node with one C2050 and an AMD FireStream 9270 GPU. All nodes are equipped quad-core Intel CPUs and are connected via InfiniBand. Just to make things more interesting, the system also includes a head node powered with an AMD Opteron.
GPGPU development software provided includes CUDA, OpenCL, PGI’s Accelerator Fortran/C/C++ compiler and the Allinea DDT Debugger. In addition, the university will try to make existing GPU-ported codes — in particular, AMBER, DLPOLY, GAMESS, LAMMPS, NAMD and GROMACS — available to users.
All the interest in GPU computing at EPCC could be good news for Cray, who was recently tasked to upgrade the center’s HECToR XE6 supercomputer with the upcoming AMD “Interlagos” Opteron 6200 CPUs. If the GPU work at EPCC generates some enthusiasm among users, an XK6 upgrade might not be far behind.