Feature:Beowulf, Beyond the Hype
Beowulf beyond the Hype
A Quickstart to the Beowulf Concept
During the last weeks the Beowulf project got a lot of attention in the PC press and even on Slashdot. With Red Hat's Extreme Linux CD the relevant mailing lists show an increasing number of newbie questions. Unfortunately the informat ion Red Hat provides on their Extreme Linux web pages is less than informative and full of hype. This may result in disappointed users. It seems appropriate to make some comments an hardware and software and give some guidance for the v ery beginner.The name Beowulf stems from an old English tale and was the name of the first e xample of this class of computers. In fact a Beowulf is nothing else as a local computer network. You might say I have a small network in my flat (f.e. an old 486 connected to my newer machine), do I have a Beowulf? The answer is yes. Yo u do own already the hardware to start. Even if your connection is via PLIP/SLI P you can call your construction a Beowulf as soon as ping is successf ul. Forget all the hype about expensive special networking stuff like switches, Myrinet or SCI. For some tasks it is helpful but others won't benefit. A 10/10 0Mb connection seems to be sufficient for serious starting.
A Beowulf is not a solution for all of your speed problems. Building a Beowulf has not the same effect as f.e. the increasing of clock speed. With a Beowulf y ou won't see a speedup of your daily software and the class of software that is already adopted to Beowulfs can have very different speedups.
The hardware part is nothing more than connecting PCs with standard networking hardware. The main idea is to make your PCs to talk to each other. The most com mon solution is message passing. There are two main ways for doing message pass ing: PVM and MPI. The decision between them is mainly a matter of taste (see here for a comparing paper). I will foc us on PVM but keep in mind that MPI is as good. You can get that stuff here. The pvm3.x.x.tar.gz package has a long history and is rock solid stuff. Sinc e 1993 I did install it on half a dozen unices and never met a major problem. A fter unpacking and compiling play around (yes there is a "hello world" example) . After playing with the examples. You will see that the main commands are pvm_ send and pvm_receive and If you think that you do understand the examples start your own programming If you know what matrix multiplication is, try to impleme nt a parallel version. This is an instructive example. If you have problems you may ask for a debugging utility. Try to get xpvm-1.2.5.tar.gz from the above U RL. Its not a debugger but it visualises the behaviour of your parallel code. T he whole thing may take you two or three evenings. After that you know the basi cs of the Beowulf concept of making a pile of PCs looking as one machine.
Now you may have some questions:
Q: Sounds interesting, but I don't have a network at home. What can I do?
A: You have a network (the loopback device) in your Linux box. This means that
you can install PVM/MPI and play with it. Of course you won't see a speedup. :-(
Q: I have access to a computer pool but I'm only a common user.
A: You don't have to be "root". You can install PVM/MPI as a normal user and tr
ansform this pool in your personal Beowulf.
Q: I'm not a C programmer, but I use [Perl|Tcl|Python]?
A: There are interfaces available at the PVM home page (MPI??).
Q: Im not a programmer. Are there interesting applications?
A: Im sure there are plenty of applications that exploit the power of Beowulfs.
Most of the stuff lives in academic environment and this means that availabilit
y and quality differs. I use f.e. GAMESS a quantum chemistry program that uses MPI. Maybe one appl
ication need's to be specially mentioned. There are two Beowulf-ready patches f
or the famous POVray ray-tracing program. PV
MPOV is more flexible but less robust and FLY3 is robust but a little inflexible. If you use POVray very o
ften and play with the idea of buying a PII[34]00 MHz you may rethink this idea
if you checked the povbench res
ults at The fastest rendering was done with a messa
ge passing version of povray.
Q: If you state that building and using of Beowulfs is that easy why aren't the
re more Beowulfs?
A: I don't know why there aren't more, but I think this situation will change.
Q: I'm a little confused about the many packages that allows computing of Beowu
lfs?
A: Indeed there is a whole zoo of packages for programming networked workstatio
ns. For a first attempt you don't need them but some of them solve special prob
lems. For an overview about the important ones check out the "Linux Parallel Pr
ocessing HOWTO" by Hank Dietz.
Q: Is there a PVM/MPI version for Windows95?
A: Yes there are Win32 versions of PVM and MPI, but who cares. In fact every
(pseudo)multitasking operating system with network support can in principal be
used to build a Beowulf (f.e. there is Win
3.x port for PVM).
Q: Where can I get more Information?
A: As you may have seen from the above the message passing part is the stuff th
at is tricky. You find links to books and tutorial for parallel programming on
the PVM/MPI home pages. Hardware related information at introductory level you
will find in the
"Beowulf HOWTO" by Jacek Radajewski and Doug Eadline. A comprehensive overv
iew on hardware and software in the "Linux Parallel Programming HOWTO" by Hank Dietz.
Q: Do I need the Beowulf software packages from the Beowulf project at NASA?
A: If you use Linux, then you probably use one of the network driver developed
by Donald Becker. So the Beowulf project is already at your home and in this se
nse necessary. The rest of NASA's Beowulf software provided for the use with cl
usters helps you to manage a large cluster but it's not necessary and probably
not the first step to do and beyond the scope of a quickstart. Even the suits a
t NASA have realized that Beowulfs are a powerful tool, but the shutdown of the
Beowulf web pages is like preventing the production of cars by closing a horn
factory.
Q: If you can connect local PC's to look as one computer, why not coupling comp
uters via Internet to a supercomputer?
A: Standard message passing software uses communication protocols that are very
sensitive to packet loss. But there are activities in this area. Look for the
keywords "metacomputing" or "hypercomputing".
Michael Eilers
Feature:Beowulf, Beyond the Hype More Login
Feature:Beowulf, Beyond the Hype
Related Links Top of the: day, week, month.
Slashdot Top Deals