| BCCD
Project developers:Paul Gray and Kristina Wanous
FAQs
LINKS
|
The BCCD was
created to facilitate instruction of parallel computing aspects
and paradigms. Part of the difficulty instructors face is lack of
dedicated resources to explore distributed computing aspects lack
of time to preconfigure and test the supporting environment. The BCCD image
addresses this problem by providing a non-destructive overlay way
to run a full-fledged parallel computing environment on just about any
workstation-class system...We're happy to say that this now includes the MAC too!
Recent News Items:
- New beta images for the PowerPC chip (for the Mac), see BCCD-2.2-Beta images.
- New interim release image for the i386-platform is the 2.2.1c2 with updated kernel and clustering utilities.
- NEW! The newest BCCD images support PAPI, the Performance Application Programming Interface.
- NEW! The newest BCCD images support PerfCtr, the interface to hardware performance counters.
- Upgraded PVFS support, with PVFS 1.2.0 and the new-style mounting support tools for 2.4 kernels.
What
is the BCCD?
The BCCD is
a bootable CD image that boots up into a pre-configured distributed
computing environment. It was built and motivated by the BBC
project at LinuxCare, which has subsequently spawned off into the
lnx-bbc project [of which, I'm
an active contributer and package maintainer].
A LAM/MPICH/PVM/GCC version of the BCCD is readilly available (see
the link below). Feedback on what tools are needed for educational
purposes would be greatly appreciated.
A LOT!
Here's a summary:
- A 2.4 series
Linux kernel (2.4.25)
- gcc, g77,
and a whole slew of development tools
- Cluster
Command and Control (C3) tools
- mpich,
lam-mpi and
pvm in every box.
- X 4.2!
- openMosix
with openmosixview and userland tools.
- Full openPBS
Scheduler support.
- Improved
systems support.
- ssh-based
VM's
- octave, gnuplot,
Mozilla's Firebird, and about 1400 userland utlities.
- network configuration
and debugging utilities.
The BCCD does
share similarities with a few diskless solutions for clustering,
such as the Warewulf project,
the thin-OSCAR approach, Cluster
Knoppix (only an openMosix system, no MPI/LAM/PVM build tools,
...), and so on. This is definitely the trend in HPC. But the main
differences are that the BCCD will always fit in your pocket, be
highly customizable for specific institutions' needs, and will always
be geared toward education and not dedicated clusters.
The "gar"
build system also sets the BCCD apart from other projects. "gar"
is a mix between BSD's "ports" system, Linux from scratch,
and gentoo Linux. With gar, you can build an entire BCCD image from
net-fetched sources in about two hours (assuming you have a primed
ccache!).
The BCCD is
also distinctly different from NPACI-Rocks,
OSCAR, Cluster
in a box or other type of mass-imaging clustering project for
two reasons:
- It's a non-destructive
overlay on top of the current hardware. Once a system
is rebooted, it reverts back to its original state. It is
intended to be booted "over top" of a currently-configured
Windows/Linux/BSD/etc. system.
- It's focus
in on educational aspects of High-Performance Computing
(HPC) instead of the HPC core. Students will have a much
better appreciation and understanding of how to tweak an MTU setting
or wire the topology across a cluster if they understand how a
distributed computation is laid out! Emphasis is placed
upon building, configuring, and running distributed applications.
Based upon the
motivations above, the intended use of the BCCD is to be able to
walk into an open laboratory of Pentium-based computer systems,
boot up the CD, and instantly have a pre-configured distributed
computing laboratory.
INSTRUCTIONS:
- burn it to
a CD
- put it in
your cd tray
- reboot
- follow on-screen
instructions.
- Repeat steps
0-3 for all machines that you'd like to have in your lab or cluster.
This image boots
up into a self-contained, "non-destructive" environment
that allows the user to build virtual machines from other systems
that are similarly booted, not to mention build and run all types
of pvm programs. A DHCP server eases the task of setting up a network,
and a working DNS is needed to have the clustering environments
to run right. (What's that you say? You don't have a DNS server
or a DHCP server? No Problem! The BCCD has both to help you out.)
A wide breadth
of hardware is supported at this time. More hardware is being
added periodically. To see if your hardware is supported, see the
requirements text at the boot-up screen.
Another requirement is either to be an instructor or
to have an instructor at your disposal to guide you once
you're running the distributed computing environment. If you
don't know what to do once it's booted up, you'll need someone to
walk you through how to bootstrap a virtual machine, how to compile
MPI and PVM programs, how to introduce jobs to the system -- basically
all of the things that were motivations for building the image.
Get the stable
2.2 images, or the NEW 2.2.2 TESTING versions of the bccd
here. If you have comments, features request, or if the link is
down (aargh!) please e-mail me.
If you get permission problems or link not found errors, please let
me know!
Some postscript- and pdf-style documentation is available via the
repository links above.
Here is a Web-based documentation for
Booting up the BCCD .
|
Featured Screenshots

|