Linux clusters for genetic algorithms

Kevin D. Clark kclark at CetaceanNetworks.com
Wed Mar 5 17:52:47 EST 2003


Michael Costolo <mcostolo at yahoo.com> writes:

> Preliminarily, we believe we can reasonably afford to build a 10
> node/10 processor cluster using AMD XP1700+ chips (~1.4 GHz), each
> having 1 GB of RAM (on the motherboard).  Is this too small of a
> cluster to bother with?

Some types of problems are more amenable to being run on a
power-of-two number of processors.  You might want to keep this in
mind.

Also, if you're serious about this, you almost certainly want to make
sure that your cluster is interconnected by a high-quality switch (a
switch that has a high blocking probability will absolutely kill your
performance).

> We already have a fair amount of C code written for single processor
> computers.  My understanding is that this code would need to be
> "parallelized" in order to run on a cluster.  Can this be done with
> a parellelizing compiler or must we re-write the code to work with
> PVM or MPI (for example)?

I've never heard of a parallelizing C compiler that works/scales well.
But I'd be very interested in hearing of anything that works.

If I am right, then this leaves hand-rewriting the code, keeping all
of the data-dependencies in mind, etc.  A job like this takes some
experience, but isn't impossible.


I like MPI, BTW, and specifically, I've had nothing but good
experiences with MPICH.

> Does any one have any experience or suggestions they might be
> willing to offer?  (My colleage mentioned having to rework code for
> multiple processors in the past and apparently it was rather time
> consuming.)

Like I said, this takes a bit of skill, and I'd be lying if I said
that it wasn't time-consuming.  If your data-dependencies aren't too
hairy, then you will have an easier time than if not.

> Can anyone suggest good reference material for building such
> machines?  (I know someone had a do-not-buy Linux cluster book
> suggestion earlier).

I can get MPICH running on nearly any set of Unix machines with a
minimum of effort.  The environment is nice to work in, and I don't
think that it would be difficult for you to set up.

Heck, I simulate large parallel computers on a single Linux box all
the time -- there's no reason why you couldn't try this out for
yourself right now, without buying any new hardware.

Regards,

--kevin
-- 
Kevin D. Clark / Cetacean Networks / Portsmouth, N.H. (USA)
cetaceannetworks.com!kclark (GnuPG ID: B280F24E)
alumni.unh.edu!kdc




More information about the gnhlug-discuss mailing list