|Feature:Beowulf, Beyond the Hype|
from the stuff-to-read dept.
Michael Eilers has written a sort of introduction to Beowulf, what it does, what it doesn't do, and why we should care. It really is a sort of quickie distributed computing FAQ that many of you might enjoy. So hit the link below and find out.
The following is a feature by Slashdot Reader Michael Eilers
Beowulf beyond the Hype
A Quickstart to the Beowulf ConceptDuring 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. < a href="http://www-mddsp.enel.ucalgary.ca/People/adilger/povray/pvmpov.html">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 PII00 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
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".
Slashdot has posted several stories covering the news from the terrorist attacks on September 11, 2001. Here they are, in sequence:
World Trade Towers and Pentagon Attacked, 9:12 AM 2001-09-11 (all times EDT)
Update: 2001-09-13 12:00 by michael:
Old programmers never die, they just become managers.