SCL Cluster Cookbook|
Inexpensive versions of UNIX are the operating system of choice for clusters of PCs and workstations. Windows NT, while perhaps being an easier operating system to administrate, tends to not perform as well as Linux, FreeBSD, or NetBSD. Most of the software for use on clusters (such as MPICH and PVM) run best on UNIX. Finally, the price of the free UNIX operating systems is unbeatable.
Linux is far and away the most popular UNIX operating system for PCs. A large hacker following tends to create drivers for new hardware as soon as it is available, and numerous distributions of the Linux kernel with UNIX utilities are available. Linux TCP/IP performance has been an issue for Ames Laboratory's clusters, with undesired performance dropouts at moderately-sized message sizes in the 2.0.x kernels. A re-write of the TCP stack that corrects the dropouts is in the 2.1.x development kernels, but our laboratory is concerned about the lower overall performance with the 2.1.90 kernel.
Most Linux distributions include pre-compiled add-on packages that are easily installed. Many vendors support Linux, including the Portland Group which offers FORTRAN compilers for Linux that understand HPF dialects of Fortran.
Extreme Linux has now been packaged by Red Hat Software just for parallel processing clusters. The Beowulf Project has a number of add-ons for Linux that support clusters. See their Beowulf Software page for details.
The Metacomputing Research project at the David Sarnoff Research Center is one of the known clustering projects to make use of FreeBSD, as well as Linux.
Some see the vast amount of unused compute cycles in PC's on desktops as a potential for distributed parallel computing. Individuals such as Al Geist of the Computer Science and Mathematics Division of Oak Ridge National Laboratory are interested using Windows95 systems for cluster computing, since many organizations have lots of Windows95 desktop computers with plenty of spare CPU cycles.