Hi,

When I run a spawn program over rsh/ssh, I notice that each time the
child program gets spawned, it will need to establish a new rsh/ssh
connection to the remote node to launch orted on that node, even the
parent executable and the orted are running on that node.

So I wonder if there is any way that we can use the parent orted to
launch the child program if they happen to be on the same node?

I try to compare to the spawn program to the scenario where I run multiple executables in one mpirun command. For this run, I only establish one connection to the remote node only, and both executables shared the same remote connection.

% ./mpirun -np 2 -host burl-ct-v440-5 -prefix `pwd`/.. sleep 12 : -np 2
sleep 10
Password:

15015 /workspace/paklui/ompi/trunk/builds/sparc32-g/bin/../bin/orted
--bootprox
  15017 sleep 12
  15019 sleep 12
  15021 sleep 10
  15023 sleep 10

The reason that I want to find out if it is possible for orted to launch child executable(s) without having to establish a new connection, is because the number of times that I can run 'qrsh' in SGE (or N1GE) is actually depended on the number of slots that the user initially allocated. That the slot number corresponds to the number of CPUs on a node. Each slot allows one 'qrsh' connection.

The issue is when I try to run a spawn job on a single node, or a cluster of many 1-cpu nodes under SGE. The number of times that the program can spawn is limited by 'qrsh', that it forbids the child program to connect to the same node where the parent executable's orted might be already running there.

I am curious to see if I can find some solution to the problem here. I am also looking to see if there are some tricks in SGE to get around this issue, but workaround I can see aren't pretty though. So I welcome your questions, comments or suggestions on this.

--

Thanks,

- Pak Lui
pak....@sun.com

Reply via email to