Alex,

You need MPI_Comm_disconnect at least.
I am not sure if this is 100% correct nor working.

If you are using third party apps, why dont you do something like
system("env -i qsub ...")
with the right options to make qsub blocking or you manually wait for the end 
of the job ?

That looks like a much cleaner and simpler approach to me.

Cheers,

Gilles

"Alex A. Schmidt" <a...@ufsm.br> wrote:
>Hello Gilles,
>
>Ok, I believe I have a simple toy app running as I think it should:
>'n' parent processes running under mpi_comm_world, each one
>
>spawning its own 'm' child processes (each child group work 
>together nicely, returning the expected result for an mpi_allreduce call).
>
>Now, as I mentioned before, the apps I want to run in the spawned 
>
>processes are third party mpi apps and I don't think it will be possible 
>to exchange messages with them from my app. So, I do I tell 
>when the spawned processes have finnished running? All I have to work
>
>with is the intercommunicator returned from the mpi_comm_spawn call...
>
>
>Alex
>
>
>
>
>
>2014-12-12 2:42 GMT-02:00 Alex A. Schmidt <a...@ufsm.br>:
>
>Gilles,
>
>Well, yes, I guess....
>
>I'll do tests with the real third party apps and let you know.
>
>These are huge quantum chemistry codes (dftb+, siesta and Gaussian)
>
>which greatly benefits from a parallel environment. My code is just
>a front end to use those, but since we have a lot of data to process
>
>it also benefits from a parallel environment. 
>
>
>Alex
>
> 
>
>
>2014-12-12 2:30 GMT-02:00 Gilles Gouaillardet <gilles.gouaillar...@iferc.org>:
>
>Alex,
>
>just to make sure ...
>this is the behavior you expected, right ?
>
>Cheers,
>
>Gilles
>
>
>
>On 2014/12/12 13:27, Alex A. Schmidt wrote:
>
>Gilles, Ok, very nice! When I excute do rank=1,3 call 
>MPI_Comm_spawn('hello_world',' 
>',5,MPI_INFO_NULL,rank,MPI_COMM_WORLD,my_intercomm,MPI_ERRCODES_IGNORE,status) 
>enddo I do get 15 instances of the 'hello_world' app running: 5 for each 
>parent rank 1, 2 and 3. Thanks a lot, Gilles. Best regargs, Alex 2014-12-12 
>1:32 GMT-02:00 Gilles Gouaillardet <gilles.gouaillar...@iferc.org 
>
>: Alex, just ask MPI_Comm_spawn to start (up to) 5 tasks via the maxprocs 
>parameter : int MPI_Comm_spawn(char *command, char *argv[], int maxprocs, 
>MPI_Info info, int root, MPI_Comm comm, MPI_Comm *intercomm, int 
>array_of_errcodes[]) INPUT PARAMETERS maxprocs - maximum number of processes 
>to start (integer, significant only at root) Cheers, Gilles On 2014/12/12 
>12:23, Alex A. Schmidt wrote: Hello Gilles, Thanks for your reply. The "env -i 
>PATH=..." stuff seems to work!!! call system("sh -c 'env -i 
>PATH=/usr/lib64/openmpi/bin:/bin mpirun -n 2 hello_world' ") did produce the 
>expected result with a simple openmi "hello_world" code I wrote. I might be 
>harder though with the real third party app I have in mind. And I realize 
>getting passed over a job scheduler with this approach might not work at 
>all... I have looked at the MPI_Comm_spawn call but I failed to understand how 
>it could help here. For instance, can I use it to launch an mpi app with the 
>option "-n 5" ? Alex 2014-12-12 0:36 GMT-02:00 Gilles Gouaillardet 
><gilles.gouaillar...@iferc.org
>
>: Alex, can you try something like call system(sh -c 'env -i /.../mpirun -np 2 
>/.../app_name') -i start with an empty environment that being said, you might 
>need to set a few environment variables manually : env -i PATH=/bin ... and 
>that being also said, this "trick" could be just a bad idea : you might be 
>using a scheduler, and if you empty the environment, the scheduler will not be 
>aware of the "inside" run. on top of that, invoking system might fail 
>depending on the interconnect you use. Bottom line, i believe Ralph's reply is 
>still valid, even if five years have passed : changing your workflow, or using 
>MPI_Comm_spawn is a much better approach. Cheers, Gilles On 2014/12/12 11:22, 
>Alex A. Schmidt wrote: Dear OpenMPI users, Regarding to this previous 
>post<http://www.open-mpi.org/community/lists/users/2009/06/9560.php> 
><http://www.open-mpi.org/community/lists/users/2009/06/9560.php> 
><http://www.open-mpi.org/community/lists/users/2009/06/9560.php> 
><http://www.open-mpi.org/community/lists/users/2009/06/9560.php> from 2009, I 
>wonder if the reply from Ralph Castain is still valid. My need is similar but 
>quite simpler: to make a system call from an openmpi fortran application to 
>run a third party openmpi application. I don't need to exchange mpi messages 
>with the application. I just need to read the resulting output file generated 
>by it. I have tried to do the following system call from my fortran openmpi 
>code: call system("sh -c 'mpirun -n 2 app_name") but I get 
>********************************************************** Open MPI does not 
>support recursive calls of mpirun 
>********************************************************** Is there a way to 
>make this work? Best regards, Alex 
>_______________________________________________ users mailing 
>listus...@open-mpi.org Subscription: 
>http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/12/25966.php 
>_______________________________________________ users mailing 
>listus...@open-mpi.org Subscription: 
>http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this 
>post:http://www.open-mpi.org/community/lists/users/2014/12/25967.php 
>_______________________________________________ users mailing 
>listus...@open-mpi.org Subscription: 
>http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/12/25968.php 
>_______________________________________________ users mailing list 
>us...@open-mpi.org Subscription: 
>http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/12/25969.php 
>
>
>
>_______________________________________________ users mailing list 
>us...@open-mpi.org Subscription: 
>http://www.open-mpi.org/mailman/listinfo.cgi/users Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/12/25970.php 
>
>
>
>_______________________________________________
>users mailing list
>us...@open-mpi.org
>Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>Link to this post: 
>http://www.open-mpi.org/community/lists/users/2014/12/25971.php
>

Reply via email to