Newsgroups: comp.parallel.mpi
From: nevin@alex.osc.edu (Nicholas Nevin)
Subject: Re: Can't redirect stdout under LAM/MPI ?
Organization: Ohio State University, Computer and Information Science
Date: 08 Mar 1996 08:23:31 -0500
Message-ID: <vn2zq9rafcc.fsf@alex.osc.edu>


In article <4hngbi$pjc@bertrand.ccs.carleton.ca> pkc@scs.carleton.ca
(Peter Choynowski) writes:

> I have tried with no luck to get printfs to work on nodes 1-XX, and was 
> hoping for some input.  I tried mpirun -f  and mpirun -o /tmp/xxxx but
> I don't get any of my printf output.

In the interests of scalability (and speed starting applications),
LAM does not construct a TCP connection from every process back to the
user's terminal like MPICH does on clusters (imagine how tedious this
would be on a cluster of 256 workstations).  I would not assume that
every implementation can printf from every process.  There is an
MPI attribute that roughly deals with this: MPI_IO.

You can achieve the desired effect in LAM by using our scalable
remote I/O package.  Preprend your stream functions with a t, as
in tprintf.  See tstdio(3).
Note that this can very easily be done via
#define printf tprintf

-o affects LAM remote stdout, not UNIX stdout.  See mpirun(1), lam(7) 
and tstdio(3).

---nick.

-=-
Nick Nevin				nevin@alex.osc.edu
Ohio Supercomputer Center		http://www.osc.edu/lam.html

