DANGER ! This page is 3 or 4 years out of date and is no longer
applicable for the state of the art in Linux. This page reviews the
situation as it stood circa 1995 and 1996.
MP and Clustering for Linux and Related Info
High-performance computing can be broken into two market segments:
Commercial and Scientific. This distinction is important, because the
two segments have their own special requirements, needs and
applications.
Commercial computing usually focuses on
large databases, large application servers, high-performance transaction
processing, accounting, process flow and management systems,
database mining. Commercial computing tends to be integer intensive,
disk and i/o intensive.
Scientific computing focuses on simulation of large,
complex dynamical, physical systems, and on data visualization.
Scientific applications tend to be floating-point intensive, and
place a premium on high-bandwidth interprocess communications.
Some industries, e.g. petroleum exploration, handle large
quantities of data *and* need lots of CPU power.
The hardware and software needed for each application may seem
superficially similar, but in detail becomes wildly divergent.
That said, there is some overlap in general support. Things like
SMP (Symmetric Multi-Processing or Shared Memory Multi Processing)
and multi-threading fall into the General Computing category.
The work that was done by the
Linux SMP project to enable
Intel MPS (version 1.1 and 1.4) compatible hardware
is now a mainstream part of the 2.x kernel distributions.
Some additional status can be found at
Erich
Boleyn's Status Page.
The
Parallel-Processing HOWTO pages provide a thorough introduction to
the technical terms and concepts, as well as
the status of Linux parallel processing (for both SMP and clusters).
A variety of threads packages, many of which can be scheduled over SMP,
are available. These and other basic questions about threads are
answered in the Linux Threads FAQ.
High Speed Networking
Building a solid cluster requires high-speed networking.
Compu-Shack offers a
FDDI card. For those who can't read the German web page, click
on the word "linux" to get the drivers.
Myricom offers the Myrinet series
of affordable giga-bit network gear. Of particular interest is the
list of
customer projects employing Myrinet technology.
Several high-availability, redundant-disk, SMP-enabled databases
seem to be available for Linux. One is from
Solid Technology,
another from
Software AG.
See the Database Page
for details. I have not been able to verify if the SMP and
redundant-disk and clustering features are supported on Linux.
pWEB
The
pWEB Parallel Web Server Harness will distribute URL requests
to multiple servers based on load and/or URL, for load balancing or
I/O balancing. The harness can be used with most web servers.
Inktomi
Inktomi is a
massively-parallel web search engine.
The
Beowulf
project at Nasa attempts to scale Linux into the giga-bit per second
range. The work seems to focus on bonding together fast Ethernet cards,
and running distributed processing systems such as
PVM (Parallel Virtual machine) or RPC's.
They hope to develop NVM (networked virtual memory -- distributed
shared memory -- distributed over the net), and
MPI (Message Passing Interface Standard).
DANGER ! This page is 3 or 4 years out of date and is no longer
applicable for the state of the art in Linux. This page reviews the
situation as it stood circa 1995 and 1996.
Last updated 22 May 1997 by Linas Vepstas
(linas@linas.org)
Copyright (c) 1996,1997 Linas Vepstas.
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.1;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts. A copy of the license is included at the URL
http://www.linas.org/fdl.html,
the web page titled
"GNU Free Documentation License".