Closed
Description
Related to but slightly different than https://svn.open-mpi.org/trac/ompi/ticket/1050:
When we COMM_SPAWN, where does stdin for the child process come from? I think that there should be [at least] 4 options (selectable via MPI_Info keys):
- Get stdin from the HNP. Note that this is a bit weird: any stdin from the HNP will be sent to '''both''' the parent job ''and'' the child job.
- Get the stdout from the single parent process who called orte_spawn. This would be like standard unix pipes, a la "foo | bar", where foo's output is sent to the input of bar.
- Get the stdout from the entire parent job who called orte_spawn. This is similar to the previous option, but note that ''all'' stdout from the entire job will be sent to the stdin in the child.
- Have stdin tied to /dev/null. This is effectively what happens in OMPI <=v1.2, so I think that this should be the default.
Note that I didn't mention ''where'' in the child job the stdin flows -- it could be just to vpid 0, or it could be to one or more other processes, or ... I think that's what ticket https://svn.open-mpi.org/trac/ompi/ticket/1050 is about, and is a slightly different issue than this ticket.