The sight of supercomputers in every home and office may
soon become a reality thanks to video games such as Grand Theft
Auto. High-end 3D games need the fastest graphics chips to run
well. This has driven graphics cards makers to build ever-faster
cards, and performance from the graphics processor on these cards
is hundreds of times faster than the processor in a standard
PC.
When people think of a supercomputer, they imagine boxes like
the Cray - machines engineered
with cutting-edge science to perform computational tasks as fast as
possble. While a PC may take wekks, months, even years to run a
task, Supercomputers use their vast processing power to perform
calculations in minutes.
This means that for around £3,000 scientists will soon be able
to buy supercomputers for their desks. Experts say within three
years businesses and home users will be able to do the same.
Graphics chips are being adapted to share the work of the
central processing unit to deliver supercomputing power. This
allows a single PC to run tasks far more quickly than the combined
computing power of a group of PC servers.
The development of sophisticated graphics chips and software
development tools for vastly parallel programming, the same cards
that power video games, has allowed this breakthrough in computing
performance. Nividia has introduced
CUDA
("Compute Unified Device Architecture"), a C-Compiler and set
of development tools that allow programmers to use the C
programming language to code algorithms for execution on Nvidia
graphics processing units (GPUs).
Kees Joost BatenBurg, a researcher of the University of Antwerp,
is using graphics chips to build a supercomputer which creates 3D
models of internal organs.
"Modelling has a major disadvantage: the construction time. Even
on our small cluster of four quad core PCs (16 processors)
construction of a 3D model can take days. Not good if you're trying
to perform a diagnosis." Rather than buy more PCs to speed up the
cluster, BatenBurg has used the processing power of a graphics card
from Nvidia to accelerate rendering time.
The university has built a supercomputer called Fastra to
perform large-scale scientific computations. Fastra contains four
Nvidia 9800GX2 graphics cards, that each contain two Graphics
Processing Units (GPUs), giving a total of eigth graphics
processors. By using these eight GPUs in parallel, the lab can
obtain supercomputer performance - equal to a cluster of hundreds
of PCs within a single PC, according to BatenBurg.
The Nvidia
9800GX2 graphics processing unit uses more than 128 smaller
processors that can work in parallel with the main CPU processor,
which usually has between two and four processors. This can make
your PC 40 times faster, said BatenBurg.
"Having eight graphics processors work in parallel allows this
system to perform as fast as 350 modern CPU cores for our
tomography
tasks, reducing the reconstruction times from several weeks (on a
normal PC) to hours," he said.
Fastra is made completely from consumer hardware, the same type
of cards computer enthusiasts buy off-the-shelf from PC retailers.
It is built from four Nvidia 9800GX2 graphics cards - more than
1,000 small processors working together. The hardware has cost the
university less than E4,000. This replaces a 512 processor cluster
machine which would have originally cost E3.5m.
As Fastra is not a general purpose computer, its power heavily
depends on the particular application it is used for. The research
group has focused on the 3D tomography computations. For these
computations, which can easily take weeks on a normal PC, Fastra
performs as fast as more than 300 Intel CPU cores (Core Duo,
running at 2.4GHz), giving the results in under an hour.
"Our local supercomputer cluster consisting of 512 Opteron
cores, which cost millions of euros when constructed in 2005, is
actually outpaced by Fastra in some cases," said BatenBurg.
"GPU computing - doing general computations using graphics
hardware - is a very powerful technique," said. "We believe with
Fastra, we have created the world's fastest computer to perform our
calculations at the least cost," said BatenBurg.
The biggest problem was to find both a motherboard and a case
able to store four 9800GX2s.
"This turned out to be a bit more problematic than previously
anticipated. Most "normal" large cases only offer up to seven
expansion slots." said Batenburg. Since every GX2 requires two of
those, the lab would have been one short. The search eventually
ended in Taiwan with a case from LIAN-LI. The motherboard was
required to have at least 4 PCI-Express expansion slots, but also
in such a way as to allow every graphics card to occupy double slot
spacing. No SLI-supporting motherboard could offer us this.
The researchers selected Windows XP-64 as the operating system
for Fastra. "There were two reasons for choosing this platform:
first, we needed a 64-bit operating system, in order to utilize 8GB
of RAM. Second, we expected fewer driver issues on Windows compared
to Linux."
For development, the researchers used
Microsoft Visual Studio 2008. The core functionality for the
CPU code is written in C++ (Visual C++), while Matlab is often used
as a front-end for rapid prototyping. All GPU code is developed
using the Nvidia CUDA framework, a C-like programming language that
allows for efficient programming of the NVIDIA GPUs.