free clustering software

Joined
Apr 4, 2003
Messages
836
in school, we're writing a very large genetic algorithm in c#.

we decided to utilize threads to speed the process up. we've got the concurrency issues figured out (thank you, .NET inventers!).... so we need a way to distribute the threads across many processors to speed things up. it will also help us immensly for the increased memory, believe me.

is there any free software to build a windows cluster? thanks.

edit: is this type of special computing included in the server software? the school has a volume license for server 2003
 
is this what i want?

edit: it appears as though this is only for 64 bit platforms... which we have only one... am i wrong? is there a useable 32 bit version?
 
Are you saying you want to use an SMP system (multiple processors, common system memory) or a multiple node cluster (separate systems communicating through a medium like Ethernet)? Your first post seemed clear about using a cluster, but your second linked to an SMP solution.

Taking a multithreaded app and porting it to run on a cluster is usually a big job. Threads share the same process space so it's easy for the threads to communicate and synchronize. You have to change those things to run on a cluster. For example, threads can use mutexes and condition variables to signal each other - neither of which work between nodes in a cluster. What primitives are you using to share data and sync between threads right now?

For parallelizing on a cluster you can try MPI, but it's a whole new API to learn and I don't know of an implementation for .NET or C#. I suppose you could compile it as unmanaged code and call it from your C# app. Maybe MS-MPI in Windows Compute Cluster Server has what you need.
 
Back
Top