A Beowulf cluster is a computer cluster of what are normally identical, commodity-grade computers networked into a small local area network with libraries and programs installed which allow processing to be shared among them.
The result is a high-performance parallel computing cluster from inexpensive personal computer hardware.
The name Beowulf originally referred to a specific computer built in 1994 by Thomas Sterling and Donald Becker at NASA. The name "Beowulf" comes from the main character in the Old English epic poem Beowulf, which Sterling chose because the poem describes its eponymous hero as having "thirty men's heft of grasp in the gripe of his hand".
No particular piece of software defines a cluster as a Beowulf. Beowulf clusters normally run a Unix-like operating system, such as BSD,Linux, or Solaris, normally built from free and open source software. Commonly used parallel processing libraries include Message Passing Interface (MPI) and Parallel Virtual Machine (PVM). Both of these permit the programmer to divide a task among a group of networked computers, and collect the results of processing. Examples of MPI software include Open MPI or MPICH. There are additional MPI implementations available.
As of 2014 Beowulf systems operate worldwide, chiefly in support of scientific computing.
Development
Beowulf is a multi-computer architecture which can be used for parallel computations. It is a system which usually consists of one server node, and one or more client nodes connected via Ethernet or some other network. It is a system built using commodity hardware components, like any PC capable of running a Unix-like operating system, with standard Ethernet adapters, and switches. It does not contain any custom hardware components and is trivially reproducible. Beowulf also uses commodity software like the FreeBSD, Linux or Solaris operating system, Parallel Virtual Machine (PVM) and Message Passing Interface (MPI). The server node controls the whole cluster and serves files to the client nodes. It is also the cluster's console and gateway to the outside world. Large Beowulf machines might have more than one server node, and possibly other nodes dedicated to particular tasks, for example consoles or monitoring stations. In most cases client nodes in a Beowulf system are dumb, the dumber the better. Nodes are configured and controlled by the server node, and do only what they are told to do. In a disk-less client configuration, a client node doesn't even know its IP address or name until the server tells it.A description of the Beowulf cluster, from the original "how-to", which was published by Jacek Radajewski and Douglas Eadline under the Linux Documentation Project in 1998.
Operating systems
MOSIX, geared toward computationally intensive, IO-low, applicationsAs of 2014 a number of Linux distributions, and at least one BSD, are designed for building Beowulf clusters. These include:
- ClusterKnoppix, based on Knoppix
- Kerrighed
- Rocks Cluster Distribution
- Scyld
- DragonFly BSD
- Quantian, a live DVD with scientific applications, based on Knoppix and ClusterKnoppix
- KestrelHPC
- ABC GNU/Linux based on Ubuntu
- Kentucky Linux Athlon Testbed
A cluster can be set up by using Knoppix bootable CDs in combination with Open Mosix. The computers will automatically link together, without need for complex configurations, to form a Beowulf cluster using all CPUs and RAM in the cluster. A Beowulf cluster is scalable to a nearly unlimited number of computers, limited only by the overhead of the network.
Provisioning of operating systems and other software for a Beowulf Cluster can be automated using software, Open Source Cluster Application Resources (OSCAR) for example. OSCAR installs on top of a standard installation of a supported Linux distribution on a cluster's head node.
No comments:
Post a Comment