Heterogeneous Computing Coming to Lehigh

Once again the pendulum swings in computer technology - centralized or distributed, standalone or virtualized, homogeneous or heterogeneous processing. This time the swing is towards heterogeneous computing (computers that use a variety of computational units) and is entertaining a new name for vector or co-processors - General Purpose Graphics Processing Units or GPGPU, or just GPU. GPUs are hundreds or even thousands of small computational cores that are great at doing small, mathematical calculations very quickly. GPUs were originally designed to off-load the processing required for display operations from the Central Processing Units (CPUs) from desktop computers. This processing load became very significant especially in the gaming world where pressure is always on squeezing the most pixels (picture elements) one can onto the screen as fast as possible while flying down a race course in a sports car or driving a tank on a battlefield. The High Performance Computing (HPC) community realized it could harness these graphics co-processing cores to do scientific research that often requires millions of arithmetic operations in large matrix manipulations in fields like molecular dynamics (MD - think molecules vibrating) and medical image processing.

Library and Technology Services and the HPC Steering Committee have purchased a test-bed server for researchers on campus to gain experience with GPU computing and how this type of hardware can help satisfy their computational needs. This six core, Intel Xeon (X5650 Westmere 2.66 GHz) CPU based server, with 24 GB of DDR3 memory, comes with 2 nVidia "Fermi" Tesla C2050 GPUs. Each one of those GPUs has 3 GB of GDDR5 memory and supports single and double precision floating point operations (with a Peak Performance rated at 515 GFLOPS double precision floating point and 1.03 TFLOPS single precision floating point performance) across 448 cores. The machine can be expanded in the future to accommodate another CPU, 2 more GPUs, and twice as much RAM. Access to this Linux-based server will be open to users with Enhanced Level 2 HPC accounts . These users may utilize the hardware in several ways: load programs that are GPU-aware already, such as MD packages like GROMACS or LAMMPS; use higher level mathematical subroutine libraries for packages that are GPU- aware, like MATLAB from MathWorks and Jacket from Accelereyes; or program the cores directly using programming language library extensions in C/C++/Fortran with CUDA or OpenCL.

Anyone with any questions on this hardware or how you might access it may contact Brandon Leeds at (byleeds@lehigh.edu) or call on campus at extension 8-4905.

Posted on: October 26th, 2010