FAQs
Is Baby-B for me?
Baby-B is designed for two types of computer users and for all those who fall somewhere in between.
Type 1. Computers are a necessary evil. You have programs that should
be running on bigger and faster computers, but you are avoiding the
hassle of learning how to use these computers and their unfriendly
interfaces, or maybe your just waiting for faster desktop computers to
come out. For you Baby-B is the cost efficient solution. It comes with
a simple interface and some examples that lets you use two styles of
parallel computation - naturally parallel and virtual single machine.
We also offer software that teaches you how to interface Octave
(similar to MATLAB (tm)) and an MPI program.
Type 2. You program in your sleep. Maybe you have never used a Beowulf
or other parallel system and want to find out what's all about (MPI
capable systems include the big iron systems at the national energy
labs and MPI is available for IBM's Blue Gene systems). Or, maybe you
already program with MPI. Then you are searching for an fast debugging
system because you know how critical it is to keep your mind focused
while developing software and you know that frequent and thorough
testing is important.
What kind of security protects Baby-B?
MPI communication
occurs most effectively with minimal security between processors. If
you did not already know this, you may now be more concerned than ever
about your system.
In this era of computer software flaws, stolen credit card information,
security exploits and fleets of security-compromised computers
disabling major companies, it is essential to be worried about the
security of every computer purchased. The most secure system is one
that cannot be turned on, but that renders it useless.
Security is ultimately in the hands of the owner. Informed
Simplifications tries to help the owner secure the system in many ways.
We install Linux on our systems, and it has an good security record.
Additionally, we encourage secure remote access and file transfer
methods. The non-secure Linux/Unix program 'mail' is disabled. The
Mozilla Foundation's browser (Firefox) and mail reader (Thunderbird)
are installed as the only options for those tasks. Both programs are
regularly updated, known to have good security and check the web
automatically for updates. As a final step, a router with a built in
firewall isolates and protects the system from the Internet and
WAN. Remote logins must go through the router and a user can only
log into one of the machines remotely.
The user should be warned that browser security depends on Firefox
vulnerabilities and how the computer is used. The Baby-B's are designed
for research computations. However, according to web gossip , Firefox
and Thunderbird are superior with regard to security and upadates
compared to the Microsoft products. We urge you to stay up to date with
Firefox security upgrades. Likewise, if you use mail reader
Thunderbird, then here too you must stay up to date with security
upgrades.
Use strong passwords, change all default passwords, keep Linux up to
date, strengthen your firewall settings. If you don't need access to
the machine, unplug it from the Internet/WAN or turn it off. Lock your
doors when you leave. Security that inhibits use is itself useless, so
above all, be sensible.
What is a Beowulf computer?
Todays cost effective supercomputers are in the Beowulf class.
In general a supercomputer can be defined as a machine with multiple
processors and high speed communication between these processors.
In the early days of supercomputers, vector and matrix processing
machines (e.g. Crays) were dominant. These computers targeted a
small market and contained highly specialize, custom components.
Not surprisingly, these machines were very expensive.
The ubiquity of desktop computation has lead to the availability of
inexpensive, high performance desktop computers. By connecting
desktop machines with networking hardware (Ethernet or better) and
coordination software, it is possible to create exceptional performance
at relatively low cost.
Beowulf supercomputers are scalable, expandable and fault
tolerant (the failure of one processor does not cripple the whole
machine). We sell a small Beowulf that is good for software
development or small scale supercomputing. Beowulf supercomputers
with enormous numbers of processors and/or extremely high speed
networks are available, so Beowulf class supercomputers are excellent
supercomputers for an astounding range of applications.
What is the future of MPI and Beowulf computers?
For the next several years, the MPI standard and Beowulf clusters will continue to dominate supercomputing. More specialized systems such as that offered by Orion and by IBM will find their own number of users. Whether or not their price per performance will match Beowulf systems is a matter of conjecture. The big advantage of these moderately specialized systems seems to be their lower power consumption per CPU. In any event, all these systems run MPI.
What is "embarrassingly parallel"?
The term
'Embarrassingly Parallel ' refers to the most obvious and foolproof way
to execute a serial program in parallel; execute multiple copies of the
program at the same time without any modification of the code or
programming style. No communication will occur between these
processes.
It is akin to the following situation: Let us assume that you
have a large pile of different blocks that must be moved from point A
to point B. One worker can transport the entire pile, one block
at a time. Five workers can complete the task five times as fast,
and they have no need to communicate with each other about the task at
hand. With any number of workers above zero, each induvidual
block is 'processed' by one worker. To relate the example back to
scientific computing, each block would be like a discrete chuck of data
or a unique set of simulation parameters. Now, if the blocks were
so large that more than one worker was required to move a single block,
the workers would need to communicate and embarassingly parallel
processesing of the blocks would be impossible. For a scientific
application, when the data to be processed or the simulation size
requested by the parameters exceeds the amount of available RAM, more
advanced parallel processing techniques are required.
What is "naturally parallel"?
Naturally parallel another phrase meaning embarrassingly parallel.
What is a "queuing program"?
It is a program to enable and control sharing of a large supercomputer.
A large supercomputer can often run more than one supercomputing
program at a time. Most users do not need, or do not desire, to
use the entire machine at once. Usually, many users would like to
use the machine at the same time. Sharing the system is the
easiest way to accomodate the needs of all users.
Usually, one submits a text file describing the execution of the
program to the queuing program. For example we will assume
that Albert has submited a file to a shared supercomputer. After
some time elapses, and a sufficient number of processors in the cluster
become available, the queuing program will execute Albert's program
with the instructions and data he provided and then the queueing
program will notify Albert when his program ends. Most queuing
programs behave differently depending on their specific installation,
so it is hard to provide more specifcs.
The Sun Grid Engine (SGE), the Portable Batch System (PBS) and
PBSPro are the most common queuing programs on Beowulf
supercomputers.
What is a shared supercomputer?
Most supercomputers have many different users because most of the users do not need to use the entire machine to realize the benefits of parallel computation. An induvidual program executes on only part of the supercomputer, while other programs execute on the rest of it.
How can supercomputers help me?
The execution time for almost any type of computationally intensive work can be dramatically shortened with a properly designed parallel program and a supercomputer. For example, results from data analysis, visualization or simulation can all be acquired in less time with the aid of a supercomputer. Supercomputing also allows a program to grow beyond the limitations of RAM or processor speed imposed by a single computer.
What is MPI?
MPI stands for
“Message Passing Interface”. The MPI standard
specifies how processes may be distributed across a supercomputer and
how those processes communicate and coordinate their parallel
processing. The specification has been implanted by many
different groups, but Argonne National Laboratories's MPICH and Indiana
University's LAM/MPI are most common.