[Beowulf] Newbie Question
mark.westwood at ohmsurveys.com
Mon Feb 7 06:39:42 PST 2005
Here's my contribution to your decision about which language you program
in for your cluster:
Suppose that you know Java well, but not C. Suppose that it will take
you 6 months to learn C well enough to be able to write your programs in
it. In those 6 months you can do an awful lot of computing in Java. If
your project is intended to last, say, 9 months, then you might decide
that you will program in Java because you will get more computing done
that way than by learning a new language.
If your project will last much longer then you might decide that
learning C will be of benefit, because each program will be faster in C
than in Java. If you're doing some calculations then I'd suggest that
you allow C to be 5 times faster than Java on average for cluster-type
computing. Some will tell you that it is more than 10 times as fast
(and it is for some types of computation), others that it is no faster
(which is true for some types of computation).
Another issue (or problem if you look at things that way ) with Java is
that the implementations of MPI for Java are non-standard and not as
widely used as the implementations for C. You might find it difficult,
therefore, to get good support from groups such as this one, for a Java
/ MPI program.
To sum up:
If you can write good Java programs to solve your problems on your
cluster then you should prefer that to writing bad C (or Fortran)
programs. If you find that your Java program is not fast enough then
you might think about rewriting parts of it in C (or another compiled
language) to achieve specific performance improvements.
Hope this helps
Monang Setyawan wrote:
> Hi. I'm a newbie in this parallel computing thing.
> (sorry for my bad english, I'm Indonesian)
> My current project is a software that analyze DNA/Protein sequence
> data that needs high performance aspect on it. I plan to deploy this
> software on network of workstations (mm, may be just about 10 PCs on
> the network). Am I in wrong place now?
> I am going to use message passing paradigm (MPI) to write the
> software. I've read that there are several choice of MPI
> implementation. The problem is, I'm bad in both C or Fortran (I
> usually use Java as my favorite language). Some source said that Java
> (or it's MPI wrapper or pure MPI implementation) isn't good enough to
> implement a parallel computing solution. Is that right?
> My third question is, is there any pdf/ps/one file version of
> "Engineering a Beowulf-style Compute Cluster''?
> Thanks in advance.
The Technology Centre
Offshore Technology Park
+44 (0)870 429 6586
More information about the Beowulf