Heterogeneous Computing Coming to Lehigh
Pendulum swings
are a common trend in computer technology, for example
centralized computing to distributed and back. Another
example is homogeneous vs. heterogeneous processing.
At present the
pendulum swings toward heterogeneous computing -- computers
that use a variety of computational units. General Purpose
Graphics Processing Units (GPGPU) or 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 offload the processing required
for display operations from the Central Processing Units
(CPUs) of desktop computers.
This processing
load is particularly significant in the gaming world, where
the object is always to squeeze as many pixels (picture
elements) as possible onto a screen as quickly as possible
as a gamer flies down a race course in a sports car or
drives a tank on a battlefield. The High Performance
Computing (HPC) community realized that these graphics
co-processing cores could be harnessed to do scientific
research that can often require 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 to learn
how this type of hardware can help satisfy their
computational needs. The 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
employ the hardware in several ways: to load programs that
are GPU-aware already, such as MD packages like GROMACS or
LAMMPS; to access higher level mathematical subroutine
libraries for packages that are GPU-aware, like MATLAB from
MathWorks and Jacket from Accelereyes; and to program the
cores directly using programming language library extensions
in C/C++/Fortran with CUDA or OpenCL.
Questions on this hardware and on access may be directed to
Brandon Leeds (byleeds@lehigh.edu),
tel: 84905.
-- Brandon Leeds
Article posted September,
2010
Return to
Newsletter