mladwig at comcast.net
Fri May 24 18:21:03 PDT 2002
Hi. I am new to this stuff and am working through Robert Brown's very helpful
"Engineering a Beowulf-style Compute Cluster", and decided to take his advice
to "ask on the beowulf list before tackling a new parallelization project".
But if this question isn't appropriate here or there is a better place to
ask...please let me know.
A brief description: I started with an algorithm that does something very
slowly. Each individual calculation takes about 1.1 seconds on a 1Ghz P3.
Every work unit is made up of at best 100k and at worst 3M calculations to
complete; average is 400k. Several work units have to be completed before a
set of results becomes meaningful.
I have redesigned the algorithm so that a controller spawns off a block of
threads, each of which takes as input a common 1.5MB memory block and a
unique 50KB memory block. The threads do not communicate between themselves.
After each thread completes it's calculation, it reports results, requests
another unique 50k block, and performs another calculation. The controller
unit is typically able to detect early completion of a given work unit based
on the results from every 2000 calculations. Intensive work on impoving
early completion is ongoing!
As you can imagine, at this stage I'm just trying to get close to a starting
point in terms of cluster and algorithm design. Any help would be greatly
More information about the Beowulf