how to use 2 computers in a network for processing...?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Dreea
    New Member
    • Aug 2007
    • 37

    how to use 2 computers in a network for processing...?

    Hello

    I am trying to write an application that uses 2 computers in a network to perform image processing. I found on the internet the MPI.NET for communicating between processes on different computers, but this requires for me to have a compute cluster and to install the Microsoft Windows Compute Cluster Server , so I would like to use a different approach if possible...

    Please tell me if there is any way of achieving the parallel execution of an application on different computers on a network..

    Thank you
  • Rob S
    New Member
    • Jan 2011
    • 14

    #2
    MPI using .net on a simulated cluster

    Hi,
    I had the exact same question a few months ago. I have 3 XP machines that are on my home network and I really wanted them to all work together as a standard cluster would.
    There is no real built in "cluster" support for XP. The only way to do it is hack around the problem.
    Here is how i approached it.

    1 Im not a networking wiz but you need to make sure that you have the same Login/Password Admin account setup on all your boxes.

    2 I believe clusters have a built in executable called clusrun which allows you to run a program on every node at the same time. I found this set of programs called PSTools made by sysinternals. Very very handy but not allowed for commerciaol use.

    3 The next step is to install the Microsoft HPC SDK and the Compute Cluster SDK on EVERY machine in your cluster.

    4 As a programmer you now have to decide which flavor of MPI you would like to work with and then install that SDK on EVERY machine as well. I chose MPI.NET created by some guys at indiana.edu. There are several others based on what language you are proficient in.

    5 Once you have all this setup write a simple hello world program

    6 This is where it gets exciting. To run this program on one node and make it appear as though you are using several nodes you would use a command similar to:

    mpiexec -n 4 myprogram.exe

    where the number 4 is the number of "processes" on your local machine.
    Now, if you want to do the same thing on all the machines you just setup then you have to make sure a program called smpd.exe is running on each of those machine. This program comes with the HPC SDK and should be available on the command line by simply typing "smpd -d". Once smpd is running on every mahcine you can use a command like this:

    mpiexec -hosts 3 node1 3 node2 3 node3 3 myprogram.exe

    This is how the command usually looks but it may vary. This command essentially tells MPI to that you have 3 processing hosts or nodes and that each node will have use 3 processes. Kinda like assigning a job to 3 managers that each have 3 workers under their supervision.

    Thats it. It can get a little sticky when it comes to permissions and security setting on each box but once you get the hang of it it is truly awesome.
    Hit me back if you have any questions and sorry if this reply is too lengthy.
    Take it easy.
    Rob S

    NOTE: On XP you will need to do 2 additional things to make sure MPI works.
    1 There is a hotfix available for smpd.exe which you need to google and install
    2 In the Local security editor on XP you need to make sure that one setting is changed in the Local security policy.
    Go to: Start-> Control Panel-> Administrative Tools-> Local Security Policy-> Local Policies-> Security Options->Network Access:Sharing and securitymodel for local account.
    Change that setting to "Classic"
    Attached Files

    Comment

    • Dreea
      New Member
      • Aug 2007
      • 37

      #3
      Thank you Rob for your answer... it's been a while since I posted this :)

      Comment

      • Rob S
        New Member
        • Jan 2011
        • 14

        #4
        yeah i noticed that after i had finished typing the whole thing out. haha.
        Take it easy.
        Rob

        Comment

        Working...