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.
When you lay an iMac on its face, it becomes a "blade" does it not?
I am free to install any OS.
Hopefully, I would be able to run some bioinformatics software on it starting with BLAST.
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..