

IMac Cluster? - audyyy

My boss keeps asking me to take a bunch of iMac intel/G5s and turn them into some sort of cluster.  Despite the fact that I know this won't lead to anything useful (I already have access to a cluster), I would still like to try it.<p>When you lay an iMac on its face, it becomes a "blade" does it not?<p>I am free to install any OS.<p>Hopefully, I would be able to run some bioinformatics software on it starting with BLAST.
======
svenigalla
You might get more responses if you posted in Stackoverflow. But here is what
I wanted to share:

You can keep the OS X as is. Load current JVM on all of them and connect them
to a network.

Then write a program that uses Hazelcast (<http://www.hazelcast.com/>) that
gives you a pseudo-distributed JVM cluster. It actually gives distributed Maps
and Queues.

Then mount a bunch of Jetlang (<http://code.google.com/p/jetlang/>) Fibers
into the distributed Map. The Jetlang fibers provide thread-less concurrency.

Then develop a simple function-independent task framework, to which you can
pass a function and a parameter map as two arguments, which calls a Callable
and returns an Object.

Now create a bunch of tasks, mount them into fibers and mount the fibers into
the distributed map.

Finally write a simple countdown latch based task runner, you can safely run
four per core, and run them on each mac, sit and watch.

Be careful, you can easily destroy a few database servers..

------
rbanffy
You can hang them on a wall and create a very interesting display.

Apart from that, I find using older, slower computers an interesting exercise.
What appears instantaneous on my netbook takes an observable time on my iMac
G3. That usually allows me to guesstimate what was used to implement the
function and to get a feel of the bottlenecks in the app. It's useful if you
don't feel like profiling the app.

~~~
one010101
I like the wall-hanging idea!

