Hmmm....it works fine for me. Note that orte-iof must be executed from
the same node as mpirun. Also, ensure that rank=0 is actually the MPI
rank that is printing something! Otherwise, nothing will come out.
It should also be noted that it does take time for you to execute orte-
iof, and that orte-iof will not capture any output that precedes its
connection with mpirun. Thus, if the output comes out before orte-iof
sets up the connection to mpirun, that output will not show up on orte-
iof's screen.
Just as an FYI: you can have mpirun tell you its pid automatically
with --report-pid so you don't have to do a ps to find it.
If you want to write your own, you will need to configure your build --
with-devel-headers. Your program will then need to have the same list
of includes as shown in that example code.
Ralph
On Jan 22, 2009, at 7:26 AM, jody wrote:
Hi
I downloaded 1.3 the day its release was announced :)
I now wanted to try it, so i pieced it together from orte-iof --help:
- started an mpirun with 4 process
- opened a new terminal
- did ps to find the mpirun's pid
- then: orte-iof --pid 8449 --rank 0 --stdout
but nothing happens...
So did i misunderstand its usage?
I quickly glanced at the code - i guess
orte_iof.pull(&target_proc, stream, 1)
is the heart of the matter. But i was unable to fnd where this
orte-iof struct fas actually defined. COUld you give me a hint?
Thanks
Jody
On Thu, Jan 22, 2009 at 2:33 PM, Ralph Castain <r...@lanl.gov> wrote:
If you are willing/able to upgrade to 1.3, you will find a new
utility
called "ompi-iof" (or "orte-iof") that allows you to capture the
output
from any specified rank or combination of ranks. Note that the
output is
copied to the tool, so it will also still arrive at the output of
mpirun.
If you want to build your own version of that utility, you can use
this tool
as an example of how to do it - the source is at orte/tools/orte-
iof. Feel
free to ask questions.
If you need to do this with a prior release....well, I'm afraid it
won't
work. :-)
Ralph
On Jan 22, 2009, at 1:58 AM, jody wrote:
Hi
I have a small cluster consisting of 9 computers (8x2 CPUs, 1x4
CPUs).
I would like to be able to observe the output of the processes
separately during an mpirun.
What i currently do is to apply the mpirun to a shell script which
opens a xterm for each process,
which then starts the actual application.
This works, but is a bit complicated, e.g. finding the window you're
interested in among 19 others.
So i was wondering is there a possibility to capture the processes'
outputs separately, so
i can make an application in which i can switch between the
different
processor outputs?
I could imagine that could be done by wrapper applications which
redirect the output over a TCP
socket to a server application.
But perhaps there is an easier way, or something like this alread
does
exist?
Thank You
Jody
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users
_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users