Re: [OMPI users] PGI 10.0 configure fails (OMPI 1.3.3)

2009-11-24 Thread chan

- "Scott Beardsley"  wrote:

> #include
> int main ()
> {
> struct foo {int a, b;}; size_t offset = offsetof(struct foo, b);
>   return 0;
> }
> 
> $ pgcc conftest.c
> PGC-S-0037-Syntax error: Recovery attempted by deleting keyword
> struct
> (conftest.c: 4)
> PGC-S-0039-Use of undeclared variable foo (conftest.c: 4)
> PGC-S-0039-Use of undeclared variable b (conftest.c: 4)
> PGC/x86-64 Linux 10.0-0: compilation completed with severe errors
> $
> 
> pgcc v9 and gcc seem to have no problem with that code.
> 

pgcc v9 has problem to compile the above test program:

/pgi-9.0-4/linux86-64/9.0-4/bin/pgcc -c ts_offsetof.c
PGC-S-0037-Syntax error: Recovery attempted by deleting keyword struct 
(ts_offsetof.c: 4)
PGC-S-0039-Use of undeclared variable foo (ts_offsetof.c: 4)
PGC-S-0039-Use of undeclared variable b (ts_offsetof.c: 4)
PGC/x86-64 Linux 9.0-4: compilation completed with severe errors

A.Chan





Re: [OMPI users] Compilig CG.W.8 benchmark

2010-01-12 Thread chan

To compile fortran application with MPE, you need Fortran to C wrapper
library, e.g. libmpe_f2cmpi.a or the one that comes with OpenMPI.  Your
link command should contain at least the following

mpif77 -o cg_log cg.f -lmpe_f2cmpi -llmpe -lmpe.

To simplify the process, the recommended way to enable MPE is to use
the MPI wrapper that comes with MPE, i.e. mpefc, (unless you are using
a very old version of MPE).  Assuming your MPE is built with OpenMPI,
your link line becomes

mpefc -mpilog -o cg_log cg.f.

If I recall correctly, the simplest way to insert mpefc in one of the latest
version of NAS parallel benchmark is in config/make.def.  Replace the Fortran
compiler in the file as

MPIF77 = mpefc -mpilog (or F77 = mpefc -mpilog depends on NPB version)

A.Chan

- "Pawan Acharya"  wrote:

> I am having trouble with trace-enabled comilation of CG.W.8 benchmark
> included in NAS Parallel Benchmark. As the makefile is dependent to
> other
> files in the common directory, so obviously independent compiling of
> the
> cg.f wouldn't work:
> mpif77 -o cg_log cg.f -llmpe -lmpe
> This is the makefile given with benchmark, Can I get any helpp in
> modifying
> this file for the trace-enabled compiling
> SHELL=/bin/sh
> BENCHMARK=cg
> BENCHMARKU=CG
> LLFLAG = -llmpe
> LFLAG = -lmpe
> 
> include ../config/make.def
> 
> OBJS = cg.o ${COMMON}/print_results.o  \
>${COMMON}/${RAND}.o ${COMMON}/timers.o
> 
> include ../sys/make.common
> 
> ${PROGRAM}: config ${OBJS}
> ${FLINK} ${FLINKFLAGS} -o ${PROGRAM} ${OBJS} ${FMPI_LIB}
> 
> cg.o:cg.f  mpinpb.h npbparams.h
> ${FCOMPILE} cg.f
> 
> 
> clean:
> - rm -f *.o *~
> - rm -f npbparams.h core
> 
> 
> -- 
> ..
> 
> Best Regards,
> Pawan Acharya
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] MPI_Init() and MPI_Init_thread()

2010-03-09 Thread chan

Using funneled will make your code more portable in the long run
as it is guaranteed by the MPI standard.  Using single, i.e. MPI_Init,
is working now for typical OpenMP+MPI program that MPI calls are outside
OpenMP sections.  But as MPI implementations implement more performance
optimized feature that distingushes single and funneled, then you need
to use funneled to use those implementations. 

A.Chan

- "Yuanyuan ZHANG"  wrote:

> Hi all,
> 
> I can understand the difference between SINGLE and FUNNELED, and why
> I
> should use FUNNELED now. Thank you!
> 
> Yuanyuan
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] Installing MPE on existing Open-MPI installation for C++ programs

2010-04-12 Thread chan

Try using "mpecc -mpicc=" to compile your C++ program.
"mpicc -mpilog" is only available in the MPICH (not MPICH2 which provides
mpicc -mpe=mpilog).  Non-MPICH(2) based implementation needs to use
mpecc instead to enable MPE.

A.Chan

- "Ridhi Dua"  wrote:

> Hello,
> I have successfully installed MPE for my existing Open-MPI
> installation and
> have been able compile using the compiler wrapper 'mpecc'.
> But, I have some C++ MPI programs which cannot be compiled using
> mpecc. How
> do I achieve this,or do I need to make changes to my MPE installation
> procedure? I used the following command for my current installation.
> 
> ./configure --prefix=/gpfs/fs3/home/xxx/mybin \
> MPI_CC=/sw/openmpi/bin/mpicc \
> --disable-f77 \
> --with-java=/usr/java/jdk1.6.0_13
> 
> (Also, I have managed to use mpecc, but not 'mpicc -mpilog hello.c' Is
> this
> assumption even correct for Open-MPI or is it an option only for MPICH
> )
> 
> Thank you.
> ~ ridZ
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] Fortran - MPI_WORLD_COMM

2010-06-22 Thread chan

MPI_COMM_WORLD is defined by a parameter statement, so it
is a fortran contant. The following f77 program fails to compile.

> cat ts_param.f 
  Program test
  integer mm
  parameter (mm = 9)
  common /cmblk/ mm
  end
> gfortran ts_param.f
ts_param.f:4.23:

  common /cmblk/ mm 
   1
Error: PARAMETER attribute conflicts with COMMON attribute in 'mm' at (1)
> ifort ts_param.f   
ts_param.f(4): error #6414: This PARAMETER constant name is invalid in this 
context.   [MM]
  common /cmblk/ mm
-^
compilation aborted for ts_param.f (code 1)

Don't think you can do that with either MPICH2 or OpenMPI.
Since MPI_COMM_WORLD is a constant, why do you want to put it
in a common block ?

A.Chan

- "Jeff Squyres"  wrote:

> On Jun 22, 2010, at 5:55 PM, Mihaly Mezei wrote:
> 
> > mpi0.f(2): error #6414: This PARAMETER constant name is invalid in
> this context.   [MPI_COMM_WORLD]
> >   common /MPI_DM/ MPI_COMM_WORLD,NUMNOD,MYRANK
> > --^
> > mpi0.f(21): error #6412: A dummy argument name is invalid in this
> context.   [MPI_COMM_WORLD]
> >   common /MPI_DM/ MPI_COMM_WORLD,NUMNOD,MYRANK
> > --^
> 
> Funky.  I'm not a fortran expert, but I didn't know what you couldn't
> put a parameter in a common block.  I guess that's a difference
> between OMPI and MPICH -- sorry!
> 
> > If I try to pass MPI_WORLD_COMM to a subrotine as one of the
> subroutine argument, it aborts at run time whe it comes to using it in
> an MPI_Bcast call
> > 
> > *** An error occurred in MPI_Bcast
> > *** on communicator MPI_COMM_WORLD
> > *** MPI_ERR_TYPE: invalid datatype
> 
> That shouldn't be.  But it does seem to imply that your passing a bad
> datatype, not a bad communicator.  Can you send a small code example
> that shows the problem?
> 
> -- 
> Jeff Squyres
> jsquy...@cisco.com
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


[O-MPI users] MPI_F_STATUS(ES)_IGNORE

2005-11-22 Thread Anthony Chan

Hi

Linking the following program with mpicc from openmpi-1.0 compiled
with gcc-4.0 on a IA32 linux box

*
#include 
#include "mpi.h"

int main() {

int argc; char **argv;

MPI_Fint *f_status;
   ;
MPI_Init(&argc, &argv);

f_status = MPI_F_STATUS_IGNORE;
f_status = MPI_F_STATUSES_IGNORE;

MPI_Finalize();

; return 0; }
**

with command "/bin/mpicc ts_MPI_F_STATUS_IGNORE.c" produces
unresolved references of MPI_F_STATUS(ES)_IGNORE (which are both defined
in mpi.h).

Here is ompi_info:

Open MPI: 1.0r8189Open MPI SVN revision: r8189
Open RTE: 1.0r8189
   Open RTE SVN revision: r8189
OPAL: 1.0r8189
   OPAL SVN revision: r8189
...
 Configured architecture: i686-pc-linux-gnu
  C bindings: yes
C++ bindings: yes
  Fortran77 bindings: yes (all)
  Fortran90 bindings: yes
  C compiler: /soft/apps/packages/gcc-4.0.0/bin/gcc-4.0
 C compiler absolute: /soft/apps/packages/gcc-4.0.0/bin/gcc-4.0
C++ compiler: /soft/apps/packages/gcc-4.0.0/bin/g++-4.0
   C++ compiler absolute: /soft/apps/packages/gcc-4.0.0/bin/g++-4.0
  Fortran77 compiler: /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
  Fortran77 compiler abs: /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
  Fortran90 compiler: /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
  Fortran90 compiler abs: /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
 C profiling: yes
   C++ profiling: yes
 Fortran77 profiling: yes
 Fortran90 profiling: yes
  C++ exceptions: no
  Thread support: posix (mpi: no, progress: no)
  Internal debug support: no
 MPI parameter check: runtime
Memory profiling support: no
Memory debugging support: no
 libltdl support: 1
...


A.Chan


Re: [O-MPI users] MPI_F_STATUS(ES)_IGNORE

2005-11-22 Thread Anthony Chan

Thanks for fixing this.  Will there be a patched release of openmpi
that will contain this fix anytime soon ?  (In the meantime, I could do a
anonymous read on the svn repository.)

A.Chan

On Tue, 22 Nov 2005, Jeff Squyres wrote:

> Whoops!  We forgot to instantiate these -- thanks for catching that.
>
> I have just committed fixes to both the trunk and the v1.0 branch.
> This also prompted the addition of the following text in the README
> file:
>
> -
> - Open MPI will build bindings suitable for all common forms of
>Fortran 77 compiler symbol mangling on platforms that support it
>(e.g., Linux).  On platforms that do not support weak symbols (e.g.,
>OS X), Open MPI will build Fortran 77 bindings just for the compiler
>that Open MPI was configured with.
>
>Hence, on platforms that support it, if you configure Open MPI with
>a Fortran 77 compiler that uses one symbol mangling scheme, you can
>successfully compile and link MPI Fortran 77 applications with a
>Fortran 77 compiler that uses a different symbol mangling scheme.
>
>NOTE: For platforms that support the multi-Fortran-compiler bindings
>(i.e., weak symbols are supported), due to limitations in the MPI
>standard and in Fortran compilers, it is not possible to hide these
>differences in all cases.  Specifically, the following two cases may
>not be portable between different Fortran compilers:
>
>1. The C constants MPI_F_STATUS_IGNORE and MPI_F_STATUSES_IGNORE
>   will only compare properly to Fortran applications that were
>   created with Fortran compilers that that use the same
>   name-mangling scheme as the Fortran compiler that Open MPI was
>   configured with.
>
>2. Fortran compilers may have different values for the logical
>   .TRUE. constant.  As such, any MPI function that uses the fortran
>   LOGICAL type may only get .TRUE. values back that correspond to
>   the the .TRUE. value of the Fortran compiler that Open MPI was
>   configured with.
>
>You can use the ompi_info command to see the Fortran compiler that
>Open MPI was configured with.
> -
>
>
> On Nov 22, 2005, at 12:49 AM, Anthony Chan wrote:
>
> >
> > Hi
> >
> > Linking the following program with mpicc from openmpi-1.0 compiled
> > with gcc-4.0 on a IA32 linux box
> >
> > *
> > #include 
> > #include "mpi.h"
> >
> > int main() {
> >
> > int argc; char **argv;
> >
> > MPI_Fint *f_status;
> >;
> > MPI_Init(&argc, &argv);
> >
> > f_status = MPI_F_STATUS_IGNORE;
> > f_status = MPI_F_STATUSES_IGNORE;
> >
> > MPI_Finalize();
> >
> > ; return 0; }
> > **
> >
> > with command "/bin/mpicc ts_MPI_F_STATUS_IGNORE.c"
> > produces
> > unresolved references of MPI_F_STATUS(ES)_IGNORE (which are both
> > defined
> > in mpi.h).
> >
> > Here is ompi_info:
> >
> > Open MPI: 1.0r8189Open MPI SVN revision: r8189
> > Open RTE: 1.0r8189
> >Open RTE SVN revision: r8189
> > OPAL: 1.0r8189
> >OPAL SVN revision: r8189
> > ...
> >  Configured architecture: i686-pc-linux-gnu
> >   C bindings: yes
> > C++ bindings: yes
> >   Fortran77 bindings: yes (all)
> >   Fortran90 bindings: yes
> >   C compiler: /soft/apps/packages/gcc-4.0.0/bin/gcc-4.0
> >  C compiler absolute: /soft/apps/packages/gcc-4.0.0/bin/gcc-4.0
> > C++ compiler: /soft/apps/packages/gcc-4.0.0/bin/g++-4.0
> >C++ compiler absolute: /soft/apps/packages/gcc-4.0.0/bin/g++-4.0
> >   Fortran77 compiler:
> > /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
> >   Fortran77 compiler abs:
> > /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
> >   Fortran90 compiler:
> > /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
> >   Fortran90 compiler abs:
> > /soft/apps/packages/gcc-4.0.0/bin/gfortran-4.0
> >  C profiling: yes
> >C++ profiling: yes
> >  Fortran77 profiling: yes
> >  Fortran90 profiling: yes
> >   C++ exceptions: no
> >   Thread support: posix (mpi: no, progress: no)
> >   Internal debug support: no
> >  MPI parameter check: runtime
> > Memory profiling support: no
> > Memory debugging support: no
> >  libltdl support: 1
> > ...
> >
> >
> > A.Chan
> > ___
> > users mailing list
> > us...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
> >
>
> --
> {+} Jeff Squyres
> {+} The Open MPI Project
> {+} http://www.open-mpi.org/
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>


[O-MPI users] mpirun --prefix

2005-11-22 Thread Anthony Chan

This is not a bug just wonder if this can be improved.  I have been
running openmpi linked program with command

/bin/mpirun --prefix  \
 --host A  -np N a.out

My understanding is that --prefix allows extra search path in addition to
PATH and LD_LIBRARY_PATH, correct me if I am wrong.  Assuming that
openmpi's install directory structure is fixed, would it possible for
mpirun to search  automatically for libmpi.so &
friends so to avoid the redundant --prefix  to
mpirun ?

Thanks,
A.Chan



Re: [O-MPI users] Performance of all-to-all on Gbit Ethernet

2006-01-03 Thread Anthony Chan

On Tue, 3 Jan 2006, Carsten Kutzner wrote:

> On Tue, 3 Jan 2006, Graham E Fagg wrote:
>
> > Do you have any tools such as Vampir (or its Intel equivalent) available
> > to get a time line graph ? (even jumpshot of one of the bad cases such as
> > the 128/32 for 256 floats below would help).
>
> Hi Graham,
>
> I have attached an slog file of an all-to-all run for 1024 floats (ompi
> tuned alltoall). I could not get clog files for >32 processes - is this
> perhaps a limitation of MPE?

MPE/MPE2 logging (or clog/clog2) does not impose any limitation on the
number of processes.  Could you explain what difficulty or error
message you encountered when using >32 processes ?

BTW, the version of MPE that you are using seems old. You may want to
downaload the latest version of MPE from http://www.mcs.anl.gov/perfvis.

A.Chan

> So I decided to take the case 32 CPUs on
> 32 nodes which is performance-critical as well. From the run output you
> can see that 2 of the 5 tries yield a fast execution while the others
> are slow (see below).
>
> Carsten
>
>
>
> ckutzne@node001:~/mpe> mpirun -hostfile ./bhost1 -np 32 ./phas_mpe.x
> Alltoall Test on 32 CPUs. 5 repetitions.
> --- New category (first test not counted) ---
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.00690 seconds
> -
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.00320 seconds
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.26392 seconds !
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.26868 seconds !
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.26398 seconds !
> MPI: sending1024 floats (4096 bytes) to 32 processes (  1 times) 
> took ...0.00339 seconds
> Summary (5-run average, timer resolution 0.01):
>   1024 floats took 0.160632 (0.143644) seconds. Min: 0.003200  max: 
> 0.268681
> Writing logfile
> Finished writing logfile.
>
>


Re: [O-MPI users] Performance of all-to-all on Gbit Ethernet

2006-01-04 Thread Anthony Chan


On Wed, 4 Jan 2006, Carsten Kutzner wrote:

> On Tue, 3 Jan 2006, Anthony Chan wrote:
>
> > MPE/MPE2 logging (or clog/clog2) does not impose any limitation on the
> > number of processes.  Could you explain what difficulty or error
> > message you encountered when using >32 processes ?
>
> Either my program quits without writing the logfile (and without
> complaining) or it crashes in MPI_Finalize. I get the message
> "33 additional processes aborted (not shown)".

This is not MPE error message.  If the logging crashes in MPI_Finalize,
it usually means the merging of logging data from child nodes fails.
Since you didn't get any MPE error messages, so it means the cause of
the crash isn't expected by MPE.  Does anyone know if "33 additional
processes aborted (not shown)" is from OpenMPI ?

Since I don't know the real cause of the crash, this is what I would do:

1, Set MPE_TMPDIR or TMPDIR to bigger local filesystem to make sure that
   disk space is not an issue here.

2, Run /share/examples_logging/cpilog with >32 processes
   to see if you get the same error message.  If the same error occurs,
   it could be there is some other fundamental issue e.g. networking
   problem...

A.Chan

> Since this looks weird I think I will recompile with the newer MPE
> version you suggested. (When I do not link with MPE libraries my program
> runs fine.)
>
> Thanks,
>   Carsten
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>


Re: [O-MPI users] mpirun --prefix

2006-01-04 Thread Anthony Chan

Hi Jeff,

On Wed, 4 Jan 2006, Jeff Squyres wrote:

> Anthony --
>
> I'm really sorry; we just noticed this message today -- it got lost
> in the post-SC recovery/holiday craziness.  :-(

I understand. :)
>
> Your request is fairly reasonable, but I wouldn't want to make it the
> default behavior.  Specifically, I can envision some scenarios where
> it might be problematic (e.g., heterogeneous situations -- which we
> don't yet support, but definitely will someday).
>
> How about this -- an ISV asked me for a similar feature a little
> while ago: if mpirun is invoked with an absolute pathname, then use
> that base directory (minus the difference from $bindir) as an option
> to an implicit --prefix.
>
> (your suggestion may actually be parsed as exactly that, but I wasn't
> entirely sure)

Yes, that is what I meant. The change should make things easier for
typical MPI users.

Thanks,
A.Chan
>
>
> On Nov 22, 2005, at 12:20 PM, Anthony Chan wrote:
>
> >
> > This is not a bug just wonder if this can be improved.  I have been
> > running openmpi linked program with command
> >
> > /bin/mpirun --prefix  \
> >  --host A  -np N a.out
> >
> > My understanding is that --prefix allows extra search path in
> > addition to
> > PATH and LD_LIBRARY_PATH, correct me if I am wrong.  Assuming that
> > openmpi's install directory structure is fixed, would it possible for
> > mpirun to search  automatically for libmpi.so &
> > friends so to avoid the redundant --prefix  to
> > mpirun ?
> >
> > Thanks,
> > A.Chan
> >
> > ___
> > users mailing list
> > us...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>
> --
> {+} Jeff Squyres
> {+} The Open MPI Project
> {+} http://www.open-mpi.org/
>
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>


[OMPI users] Problem with connecting to 3 or more nodes

2015-01-16 Thread Chan, Elbert
Hi

I'm hoping that someone will be able to help me figure out a problem with 
connecting to multiple nodes with v1.8.4. 

Currently, I'm running into this issue:
$ mpirun --host host1 hostname
host1

$ mpirun --host host2,host3 hostname
host2
host3

Running this command on 1 or 2 nodes generates the expected result. However:
$ mpirun --host host1,host2,host3 hostname
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password,keyboard-interactive).
--
ORTE was unable to reliably start one or more daemons.
This usually is caused by:

* not finding the required libraries and/or binaries on
  one or more nodes. Please check your PATH and LD_LIBRARY_PATH
  settings, or configure OMPI with --enable-orterun-prefix-by-default

* lack of authority to execute on one or more specified nodes.
  Please verify your allocation and authorities.

* the inability to write startup files into /tmp (--tmpdir/orte_tmpdir_base).
  Please check with your sys admin to determine the correct location to use.

*  compilation of the orted with dynamic libraries when static are required
  (e.g., on Cray). Please check your configure cmd line and consider using
  one of the contrib/platform definitions for your system type.

* an inability to create a connection back to mpirun due to a
  lack of common network interfaces and/or no route found between
  them. Please check network connectivity (including firewalls
  and network routing requirements).
--

This is set up with passwordless logins with passphrases/ssh-agent. When I run 
passphraseless, I get the expected result. 

What am I doing wrong? What can I look at to see where my problem could be?

Elbert

--
****
Elbert Chan
Operating Systems Analyst
College of ECC
CSU, Chico
530-898-6481



Re: [OMPI users] parallel with parallel of wie2k code

2011-01-14 Thread Anthony Chan
Hi lagoun,

The error message looks like from MPICH2.  Actually, it seems the code
was linked with mpich2 library but was compiled with mpich-1 header file.

You should use MPI wrappers, i.e mpicc/mpif90..., provided by your chosen
MPI implementation.

A.Chan

- Original Message -
> These don't look like error messages from Open MPI; it's quite
> possible that you accidentally mixed multiple MPI implementations when
> compiling and/or running your application.
> 
> 
> On Jan 14, 2011, at 6:35 AM, lagoun brahim wrote:
> 
> > dear user's
> > i have compiled the wien2k code with openmpi 1.4
> > (ifort11.1+icc2011+icpc+mkl libraries10.2) in smp machines (quad)
> > with open suse 10.3 64bits
> > but when i run the parallel version i have the following error
> > message
> > run_lapw -p -cc 0.01
> >  LAPW0 END
> > Fatal error in MPI_Comm_size: Invalid communicator, error stack:
> > MPI_Comm_size(111): MPI_Comm_size(comm=0x5b, size=0x8fe10c) failed
> > MPI_Comm_size(69).: Invalid communicator
> > Fatal error in MPI_Comm_size: Invalid communicator, error stack:
> > MPI_Comm_size(111): MPI_Comm_size(comm=0x5b, size=0x8fe10c) failed
> > MPI_Comm_size(69).: Invalid communicator
> > Fatal error in MPI_Comm_size: Invalid communicator, error stack:
> > MPI_Comm_size(111): MPI_Comm_size(comm=0x5b, size=0x8fe10c) failed
> > MPI_Comm_size(69).: Invalid communicator
> > Fatal error in MPI_Comm_size: Invalid communicator, error stack:
> > MPI_Comm_size(111): MPI_Comm_size(comm=0x5b, size=0x8fe10c) failed
> > MPI_Comm_size(69).: Invalid communicator
> > cat: No match.
> >
> > >   stop error
> > i don't now where is the probleme
> > i need your help please
> > and thanks in advance
> >
> > ___
> > users mailing list
> > us...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
> 
> 
> --
> Jeff Squyres
> jsquy...@cisco.com
> For corporate legal information go to:
> http://www.cisco.com/web/about/doing_business/legal/cri/
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] OpenMPI causing WRF to crash

2011-08-04 Thread Anthony Chan

If you want to debug this on BGP, you could set BG_COREDUMPONERROR=1
and look at the backtrace in the light weight core files
(you probably need to recompile everything with -g).

A.Chan

- Original Message -
> Hi Dmitry,
> Thanks for a prompt and fairly detailed response. I have also
> forwarded
> the email to wrf community in the hope that somebody would have some
> straight forward solution. I will try to debug the error as suggested
> by
> you if I would not have much luck from the wrf forum.
> 
> Cheers,
> ---
> 
> Basit A. Khan, Ph.D.
> Postdoctoral Fellow
> Division of Physical Sciences & Engineering
> Office# 3204, Level 3, Building 1,
> King Abdullah University of Science & Technology
> 4700 King Abdullah Blvd, Box 2753, Thuwal 23955 ­6900,
> Kingdom of Saudi Arabia.
> 
> Office: +966(0)2 808 0276, Mobile: +966(0)5 9538 7592
> E-mail: basitali.k...@kaust.edu.sa
> Skype name: basit.a.khan
> 
> 
> 
> 
> On 8/3/11 2:46 PM, "Dmitry N. Mikushin"  wrote:
> 
> >5 apparently means one of the WRF's MPI processes has been
> >unexpectedly terminated, maybe by program decision. No matter, if it
> >is OpenMPI-specifi
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users



Re: [OMPI users] [Fwd: MPI question/problem] including code attachments

2007-06-21 Thread Anthony Chan

Hi George,

Just out of curiosity, what version of OpenMPI that you used works fine
with Jeff's program (after adding MPI_Finalize)?  The program aborts with
either mpich2-1.0.5p4 or OpenMPI-1.2.3 on a AMD x86_64 box(Ubuntu 7.04)
because MPI_Comm_rank() is called with MPI_COMM_NULL.

With OpenMPI:
> ~/openmpi/install_linux64_123_gcc4_thd/bin/mpiexec -n 2 a.out
...
[octagon.mcs.anl.gov:23279] *** An error occurred in MPI_Comm_rank
[octagon.mcs.anl.gov:23279] *** on communicator MPI_COMM_WORLD
[octagon.mcs.anl.gov:23279] *** MPI_ERR_COMM: invalid communicator
[octagon.mcs.anl.gov:23279] *** MPI_ERRORS_ARE_FATAL (goodbye)

OpenMPI hangs at abort that I need to kill the mpiexec process by hand.
You can reproduce the hang with the following test program with
OpenMPI-1.2.3.

/homes/chan/tmp/tmp6> cat test_comm_rank.c
#include 
#include "mpi.h"

int main( int argc, char *argv[] )
{
int myrank;

MPI_Init( &argc, &argv );
MPI_Comm_rank( MPI_COMM_NULL, &myrank );
printf( "myrank = %d\n", myrank );
MPI_Finalize();
return 0;
}

Since mpiexec hangs, so it may be a bug somewhere in 1.2.3 release.

A.Chan



On Wed, 20 Jun 2007, George Bosilca wrote:

> Jeff,
>
> With the proper MPI_Finalize added at the end of the main function,
> your program orks fine with the current version of Open MPI up to 32
> processors. Here is the output I got for 4 processors:
>
> I am 2 of 4 WORLD procesors
> I am 3 of 4 WORLD procesors
> I am 0 of 4 WORLD procesors
> I am 1 of 4 WORLD procesors
> Initial inttemp 1
> Initial inttemp 0
> final inttemp 0,0
> 0, WORLD barrier leaving routine
> final inttemp 1,0
> 1, WORLD barrier leaving routine
> Initial inttemp 2
> final inttemp 2,0
> 2, WORLD barrier leaving routine
> SERVER Got a DONE flag
> Initial inttemp 3
> final inttemp 3,0
> 3, WORLD barrier leaving routine
>
> This output seems to indicate that the program is running to
> completion and it does what you expect it to do.
>
> Btw, what version of Open MPI are you using and on what kind of
> hardware ?
>
>george.
>
> On Jun 20, 2007, at 6:31 PM, Jeffrey L. Tilson wrote:
>
> > Hi,
> > ANL suggested I post this question to you. This is my second
> > posting..but now with the proper attachments.
> >
> > From: Jeffrey Tilson 
> > Date: June 20, 2007 5:17:50 PM PDT
> > To: mpich2-ma...@mcs.anl.gov, Jeffrey Tilson 
> > Subject: MPI question/problem
> >
> >
> > Hello All,
> > This will probably turn out to be my fault as I haven't used MPI in
> > a few years.
> >
> > I am attempting to use an MPI implementation of a "nxtval" (see the
> > MPI book). I am using the client-server scenario. The MPI book
> > specifies the three functions required. Two are collective and one
> > is not. Only the  two collectives are tested in the supplied code.
> > All three of the MPI functions are reproduced in the attached code,
> > however.  I wrote a tiny application to create and free a counter
> > object and it fails.
> >
> > I need to know if this is a bug in the MPI book and a
> > misunderstanding on my part.
> >
> > The complete code is attached. I was using openMPI/intel to compile
> > and run.
> >
> > The error I get is:
> >
> >> [compute-0-1.local:22637] *** An error occurred in MPI_Comm_rank
> >> [compute-0-1.local:22637] *** on communicator MPI_COMM_WORLD
> >> [compute-0-1.local:22637] *** MPI_ERR_COMM: invalid communicator
> >> [compute-0-1.local:22637] *** MPI_ERRORS_ARE_FATAL (goodbye)
> >> mpirun noticed that job rank 0 with PID 22635 on node
> >> "compute-0-1.local" exited on signal 15.
> >
> > I've attempted to google my way to understanding but with little
> > success. If someone could point me to
> > a sample application that actually uses these functions, I would
> > appreciate it.
> >
> > Sorry if this is the wrong list, it is not an MPICH question and I
> > wasn't sure where to turn.
> >
> > Thanks,
> > --jeff
> >
> > --
> > --
> >
> > /* A beginning piece of code to perform large-scale web
> > construction.  */
> > #include 
> > #include 
> > #include 
> > #include "mpi.h"
> >
> > typedef struct {
> > char description[1024];
> > double startwtime;
> > double endwtime;
> > double difftime;
> > } Timer;
> >
> > /* prototypes */
> > int MPE_Counter_nxtval(MPI_Comm , int *);
> > int MPE_Counter_free( MPI_Comm *, MPI_Comm * );
> >

Re: [OMPI users] [Fwd: MPI question/problem] including code attachments

2007-06-21 Thread Anthony Chan

Forgot to mention, to get Jeff's program to work, I modified
MPE_Counter_free() to check for MPI_COMM_NULL, i.e.

if ( *counter_comm != MPI_COMM_NULL ) {/* new line */
MPI_Comm_rank( *counter_comm, &myid );
...
MPI_Comm_free( counter_comm );
}  /* new line */

With above modification and MPI_Finalize in the main(). I was able to run
the program with OpenMPI (as well as mpich2).  Hope this helps.

A.Chan

On Thu, 21 Jun 2007, Anthony Chan wrote:

>
> Hi George,
>
> Just out of curiosity, what version of OpenMPI that you used works fine
> with Jeff's program (after adding MPI_Finalize)?  The program aborts with
> either mpich2-1.0.5p4 or OpenMPI-1.2.3 on a AMD x86_64 box(Ubuntu 7.04)
> because MPI_Comm_rank() is called with MPI_COMM_NULL.
>
> With OpenMPI:
> > ~/openmpi/install_linux64_123_gcc4_thd/bin/mpiexec -n 2 a.out
> ...
> [octagon.mcs.anl.gov:23279] *** An error occurred in MPI_Comm_rank
> [octagon.mcs.anl.gov:23279] *** on communicator MPI_COMM_WORLD
> [octagon.mcs.anl.gov:23279] *** MPI_ERR_COMM: invalid communicator
> [octagon.mcs.anl.gov:23279] *** MPI_ERRORS_ARE_FATAL (goodbye)
>
> OpenMPI hangs at abort that I need to kill the mpiexec process by hand.
> You can reproduce the hang with the following test program with
> OpenMPI-1.2.3.
>
> /homes/chan/tmp/tmp6> cat test_comm_rank.c
> #include 
> #include "mpi.h"
>
> int main( int argc, char *argv[] )
> {
> int myrank;
>
> MPI_Init( &argc, &argv );
> MPI_Comm_rank( MPI_COMM_NULL, &myrank );
> printf( "myrank = %d\n", myrank );
> MPI_Finalize();
> return 0;
> }
>
> Since mpiexec hangs, so it may be a bug somewhere in 1.2.3 release.
>
> A.Chan
>
>
>
> On Wed, 20 Jun 2007, George Bosilca wrote:
>
> > Jeff,
> >
> > With the proper MPI_Finalize added at the end of the main function,
> > your program orks fine with the current version of Open MPI up to 32
> > processors. Here is the output I got for 4 processors:
> >
> > I am 2 of 4 WORLD procesors
> > I am 3 of 4 WORLD procesors
> > I am 0 of 4 WORLD procesors
> > I am 1 of 4 WORLD procesors
> > Initial inttemp 1
> > Initial inttemp 0
> > final inttemp 0,0
> > 0, WORLD barrier leaving routine
> > final inttemp 1,0
> > 1, WORLD barrier leaving routine
> > Initial inttemp 2
> > final inttemp 2,0
> > 2, WORLD barrier leaving routine
> > SERVER Got a DONE flag
> > Initial inttemp 3
> > final inttemp 3,0
> > 3, WORLD barrier leaving routine
> >
> > This output seems to indicate that the program is running to
> > completion and it does what you expect it to do.
> >
> > Btw, what version of Open MPI are you using and on what kind of
> > hardware ?
> >
> >george.
> >
> > On Jun 20, 2007, at 6:31 PM, Jeffrey L. Tilson wrote:
> >
> > > Hi,
> > > ANL suggested I post this question to you. This is my second
> > > posting..but now with the proper attachments.
> > >
> > > From: Jeffrey Tilson 
> > > Date: June 20, 2007 5:17:50 PM PDT
> > > To: mpich2-ma...@mcs.anl.gov, Jeffrey Tilson 
> > > Subject: MPI question/problem
> > >
> > >
> > > Hello All,
> > > This will probably turn out to be my fault as I haven't used MPI in
> > > a few years.
> > >
> > > I am attempting to use an MPI implementation of a "nxtval" (see the
> > > MPI book). I am using the client-server scenario. The MPI book
> > > specifies the three functions required. Two are collective and one
> > > is not. Only the  two collectives are tested in the supplied code.
> > > All three of the MPI functions are reproduced in the attached code,
> > > however.  I wrote a tiny application to create and free a counter
> > > object and it fails.
> > >
> > > I need to know if this is a bug in the MPI book and a
> > > misunderstanding on my part.
> > >
> > > The complete code is attached. I was using openMPI/intel to compile
> > > and run.
> > >
> > > The error I get is:
> > >
> > >> [compute-0-1.local:22637] *** An error occurred in MPI_Comm_rank
> > >> [compute-0-1.local:22637] *** on communicator MPI_COMM_WORLD
> > >> [compute-0-1.local:22637] *** MPI_ERR_COMM: invalid communicator
> > >> [compute-0-1.local:22637] *** MPI_ERRORS_ARE_FATAL (goodbye)
> > >> mpirun noticed that job rank 0 with PID 22635 on node
> > >> "compute-0-1.local" e

Re: [OMPI users] [Fwd: MPI question/problem] including code attachments

2007-06-21 Thread Anthony Chan

It seems the hang only occurs when OpenMPI is built with
--enable-mpi-threads --enable-progress-threads.  [My OpenMPI builds use
gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)].  Probably
--enable-mpi-threads is the relevant option to cause the hang.
Also, control-c at the terminal that launches mpiexec can't kill the
process.  Even an incorrect launch command like the following freezes the
terminal

~/openmpi/install_linux64_123_gcc4_thd/bin/mpiexec test_comm_rank.c
--
Failed to find the following executable:

Host:   octagon.mcs.anl.gov
Executable: test_comm_rank.c

Cannot continue.
--

This has to be killed by hand on a separate terminal.  I can reproduce
these problems with OpenMPI 1.2.1 release.  Hope this helps.

A.Chan

On Thu, 21 Jun 2007, Anthony Chan wrote:

> With OpenMPI:
> > ~/openmpi/install_linux64_123_gcc4_thd/bin/mpiexec -n 2 a.out
> ...
> [octagon.mcs.anl.gov:23279] *** An error occurred in MPI_Comm_rank
> [octagon.mcs.anl.gov:23279] *** on communicator MPI_COMM_WORLD
> [octagon.mcs.anl.gov:23279] *** MPI_ERR_COMM: invalid communicator
> [octagon.mcs.anl.gov:23279] *** MPI_ERRORS_ARE_FATAL (goodbye)
>
> OpenMPI hangs at abort that I need to kill the mpiexec process by hand.
> You can reproduce the hang with the following test program with
> OpenMPI-1.2.3.
>
> /homes/chan/tmp/tmp6> cat test_comm_rank.c
> #include 
> #include "mpi.h"
>
> int main( int argc, char *argv[] )
> {
> int myrank;
>
> MPI_Init( &argc, &argv );
> MPI_Comm_rank( MPI_COMM_NULL, &myrank );
> printf( "myrank = %d\n", myrank );
> MPI_Finalize();
> return 0;
> }
>
> Since mpiexec hangs, so it may be a bug somewhere in 1.2.3 release.
>
> A.Chan
>
>
>
> On Wed, 20 Jun 2007, George Bosilca wrote:
>
> > Jeff,
> >
> > With the proper MPI_Finalize added at the end of the main function,
> > your program orks fine with the current version of Open MPI up to 32
> > processors. Here is the output I got for 4 processors:
> >
> > I am 2 of 4 WORLD procesors
> > I am 3 of 4 WORLD procesors
> > I am 0 of 4 WORLD procesors
> > I am 1 of 4 WORLD procesors
> > Initial inttemp 1
> > Initial inttemp 0
> > final inttemp 0,0
> > 0, WORLD barrier leaving routine
> > final inttemp 1,0
> > 1, WORLD barrier leaving routine
> > Initial inttemp 2
> > final inttemp 2,0
> > 2, WORLD barrier leaving routine
> > SERVER Got a DONE flag
> > Initial inttemp 3
> > final inttemp 3,0
> > 3, WORLD barrier leaving routine
> >
> > This output seems to indicate that the program is running to
> > completion and it does what you expect it to do.
> >
> > Btw, what version of Open MPI are you using and on what kind of
> > hardware ?
> >
> >george.
> >
> > On Jun 20, 2007, at 6:31 PM, Jeffrey L. Tilson wrote:
> >
> > > Hi,
> > > ANL suggested I post this question to you. This is my second
> > > posting..but now with the proper attachments.
> > >
> > > From: Jeffrey Tilson 
> > > Date: June 20, 2007 5:17:50 PM PDT
> > > To: mpich2-ma...@mcs.anl.gov, Jeffrey Tilson 
> > > Subject: MPI question/problem
> > >
> > >
> > > Hello All,
> > > This will probably turn out to be my fault as I haven't used MPI in
> > > a few years.
> > >
> > > I am attempting to use an MPI implementation of a "nxtval" (see the
> > > MPI book). I am using the client-server scenario. The MPI book
> > > specifies the three functions required. Two are collective and one
> > > is not. Only the  two collectives are tested in the supplied code.
> > > All three of the MPI functions are reproduced in the attached code,
> > > however.  I wrote a tiny application to create and free a counter
> > > object and it fails.
> > >
> > > I need to know if this is a bug in the MPI book and a
> > > misunderstanding on my part.
> > >
> > > The complete code is attached. I was using openMPI/intel to compile
> > > and run.
> > >
> > > The error I get is:
> > >
> > >> [compute-0-1.local:22637] *** An error occurred in MPI_Comm_rank
> > >> [compute-0-1.local:22637] *** on communicator MPI_COMM_WORLD
> > >> [compute-0-1.local:22637] *** MPI_ERR_COMM: invalid communicator
> > >> [compute-0-1.local:22637] *** MPI_ERRORS_ARE_FATAL (goodbye)
> > >> mpirun noticed t

Re: [OMPI users] [Fwd: MPI question/problem] including code attachments

2007-06-21 Thread Anthony Chan

What test you are refering to ?

config.log contains the test results of the features that configure is
looking for.  Failure of some thread test does not mean OpenMPI can't
support threads.  In fact, I was able to run a simple/correct
MPI_THREAD_MULTIPLE program uses pthread with openmpi-1.2.3 and the
program finishes normally on this multicore Ubuntu box.

A.Chan

On Thu, 21 Jun 2007, [ISO-8859-1] ?ke Sandgren wrote:

> On Thu, 2007-06-21 at 13:27 -0500, Anthony Chan wrote:
> > It seems the hang only occurs when OpenMPI is built with
> > --enable-mpi-threads --enable-progress-threads.  [My OpenMPI builds use
> > gcc (GCC) 4.1.2 (Ubuntu 4.1.2-0ubuntu4)].  Probably
> > --enable-mpi-threads is the relevant option to cause the hang.
>
> Have you looked at the config.log file for the thread test. When i built
> ompi on Ubuntu that test was broken.
>
> --
> Ake Sandgren, HPC2N, Umea University, S-90187 Umea, Sweden
> Internet: a...@hpc2n.umu.se   Phone: +46 90 7866134 Fax: +46 90 7866126
> Mobile: +46 70 7716134 WWW: http://www.hpc2n.umu.se
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>


Re: [OMPI users] MPE

2008-05-07 Thread Anthony Chan

MPE is not part of OMPI.  You can download MPE from
http://www.mcs.anl.gov/perfvis (the latest is the beta at
ftp://ftp.mcs.anl.gov/pub/mpi/mpe/beta/mpe2-1.0.7rc3.tar.gz)
Then follow the INSTALL and install MPE for OMPI.

A.Chan

- "Alberto Giannetti"  wrote:

> Is MPE part of OMPI? I can't find any reference in the FAQ.
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


[OMPI users] Terminating processes started by MPI_Comm_spawn

2008-07-01 Thread Keith Chan
Hi all,

Say I've created a number of child processes using MPI_Comm_spawn:

int num_workers = 5;
MPI_Comm workers;
MPI_Comm_spawn("./worker", MPI_ARGV_NULL, num_workers, MPI_INFO_NULL, 0,
MPI_COMM_SELF, &workers, MPI_ERRCODES_IGNORE);

If for some reason I needed to terminate the worker child processes prematurely,
how should I go about doing that?  I tried:

MPI_Abort(workers, 1);

... but the worker processes were still happily executing away, even though
theey should have been SIGTERM-ed.

Can anyone share some insight into what I might be doing wrong?  I'm currently
using Open MPI version 1.2.5.

Cheers,
Keith.


Re: [OMPI users] Performance: MPICH2 vs OpenMPI

2008-10-09 Thread Anthony Chan

- "Brian Dobbins"  wrote:

> OpenMPI : 120m 6s
> MPICH2 : 67m 44s
> 
> That seems to indicate that something else is going on -- with -np 1,
> there should be no MPI communication, right? I wonder if the memory
> allocator performance is coming into play here.

If the app sends message to its own rank, it could still go through MPI stack
even with -np 1, i.e. it involves at least 1 memcpy() for point-to-point calls.

> I'd be more inclined to double-check how the Gromacs app is being
> compiled in the first place - I wouldn't think the OpenMPI memory
> allocator would make anywhere near that much difference. Sangamesh, do
> you know what command line was used to compile both of these? Someone
> correct me if I'm wrong, but if MPICH2 embeds optimization flags in
> the 'mpicc' command and OpenMPI does not, then if he's not specifying
> any optimization flags in the compilation of Gromacs, MPICH2 will pass
> its embedded ones on to the Gromacs compile and be faster. I'm rusty
> on my GCC, too, though - does it default to an O2 level, or does it
> default to no optimizations?

MPICH2 does pass CFLAGS specified in configure step to mpicc and friends.
If users don't want CFLAGS to be passed to mpicc, they should set
MPICH2LIB_CFLAGS instead. The reason behind passing CFLAGS to mpicc 
is that CFLAGS may contain flag like -m64 or -m32 which is needed in
mpicc to make sure object files compatible with MPICH2 libraries.

I assume default installation here means no CFLAGS is specified, in that
case MPICH2's mpicc will not contain any optimization flag (this is true
in 1.0.7 or later, earlier versions of MPICH2 had various inconsistent
way of handling compiler flags between compiling the libraries and those
used in compiler wrappers.)  If Gromacs is compiled  with mpicc, 
"mpicc -show -c" will show if any optimization flag is used.  Without "-c",
the -show alone displays the link command.  To check what mpich2 libraries
are compiled of, use $bindir/mpich2version.

If I recall correctly, gcc defaults to "-g -O2". Not sure if the newer version
of gcc changes that.

A.Chan

> 
> Since the benchmark is readily available, I'll try running it later
> today.. didn't get a chance last night.
> 
> Cheers,
> - Brian
> 
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] profile the performance of a MPI code: how much traffic is being generated?

2009-09-29 Thread Anthony Chan

Rahul,

- "Rahul Nabar"  wrote:

> Post mortem profilers would be the next best option I assume.
> I was trying to compile MPE but gave up. Too many errors. Trying to
> decide if I should prod on or look at another tool.

What errors did you see when compiling MPE for OpenMPI ?
Can you send me the configure and make outputs as seen on
your terminal ?  ALso, what version of MPE are you using
with OpenMPI ?

A.Chan


Re: [OMPI users] profile the performance of a MPI code: how much traffic is being generated?

2009-09-30 Thread Anthony Chan

It seems icc or icpc does not know about the option -mp, so
"mpiCC -g -O2 -mp simple_mpi.c" complains about -mp.


> mpicc -g -O2 -mp simple_mpi.c
cc1: error: unrecognized command line option "-mp"

> mpicxx -g -O2 -mp simple_mpi.c
cc1plus: error: unrecognized command line option "-mp"

I used mpich2's compiler wrapper built with intel compiler
for testing (since the error comes from the native compiler
so it does not matter what MPI implementation is used)
Also, CC should be set to mpicc not mpiCC (which is
C++ MPI compiler wrapper)  Anyway, I suggest you try
configure MPE as follows:

./configure CC=icc F77=ifort 
MPI_CC=/usr/local/ompi-ifort/bin/mpicc
MPI_F77=/usr/local/ompi-ifort/bin/mpif77
--prefix=..

mpe2-1.0.6p1 isn't the latest.  The latest mpe2 is bundled
with mpich2, currently at 1.1.1p1, and just use mpich2/src/mpe2

Let me know how it goes.

A.Chan

- "Rahul Nabar"  wrote:

> On Tue, Sep 29, 2009 at 1:33 PM, Anthony Chan 
> wrote:
> >
> > Rahul,
> >
> 
> >
> > What errors did you see when compiling MPE for OpenMPI ?
> > Can you send me the configure and make outputs as seen on
> > your terminal ?  ALso, what version of MPE are you using
> > with OpenMPI ?
> 
> Version: mpe2-1.0.6p1
> 
> ./configure FC=ifort CC=icc CXX=icpc F77=ifort CFLAGS="-g -O2 -mp"
> FFLAGS="-mp -recursive" CXXFLAGS="-g -O2" CPPFLAGS=-DpgiFortran
> MPI_CC=/usr/local/ompi-ifort/bin/mpiCC
> MPI_F77=/usr/local/ompi-ifort/bin/mpif77
> MPI_LIBS=/usr/local/ompi-ifort/lib/
> Configuring MPE Profiling System with 'FC=ifort' 'CC=icc' 'CXX=icpc'
> 'F77=ifort' 'CFLAGS=-g -O2 -mp' 'FFLAGS=-mp -recursive' 'CXXFLAGS=-g
> -O2' 'CPPFLAGS=-DpgiFortran' 'MPI_CC=/usr/local/ompi-ifort/bin/mpiCC'
> 'MPI_F77=/usr/local/ompi-ifort/bin/mpif77'
> 'MPI_LIBS=/usr/local/ompi-ifort/lib/'
> checking for current directory name... /src/mpe2-1.0.6p1
> checking gnumake... yes using --no-print-directory
> checking BSD 4.4 make... no - whew
> checking OSF V3 make... no
> checking for virtual path format... VPATH
> User supplied MPI implmentation (Good Luck!)
> checking for gcc... icc
> checking for C compiler default output file name... a.out
> checking whether the C compiler works... yes
> checking whether we are cross compiling... no
> checking for suffix of executables...
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... yes
> checking whether icc accepts -g... yes
> checking for icc option to accept ANSI C... none needed
> checking whether MPI_CC has been set ...
> /usr/local/ompi-ifort/bin/mpiCC
> checking whether we are using the GNU Fortran 77 compiler... no
> checking whether ifort accepts -g... yes
> checking whether MPI_F77 has been set ...
> /usr/local/ompi-ifort/bin/mpif77
> checking for the linkage of the supplied MPI C definitions ... no
> configure: error:  Cannot link with basic MPI C program!
> Check your MPI include paths, MPI libraries and MPI CC
> compiler
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users



Re: [OMPI users] MPI_Init() and MPI_Init_thread()

2010-03-04 Thread Anthony Chan

- "Yuanyuan ZHANG"  wrote:


> For an OpenMP/MPI hybrid program, if I only want to make MPI calls
> using the main thread, ie., only in between parallel sections, can I just
> use SINGLE or MPI_Init? 

If your MPI calls is NOT within OpenMP directives, MPI does not even
know you are using threads.  So calling MPI_Init is good enough.

A.Chan


Re: [OMPI users] Fortran - MPI_WORLD_COMM

2010-06-22 Thread Anthony Chan

I don't think you can declare a function with a fortran parameter:

subroutine testsubr(MPI_COMM_WORLD,ireadok)

1) If you've already included mpif.h with in testsubr(),
   you don't need the 1st argument above. 
2) If you don't have mpif.h in testsubr(), the 1st argument
   could be MPI_comm.  In that case, replace MPI_COMM_WORLD
   in MPI_Bcast by MPI_comm.

This is basic fortran programming issue, you may want to consult
some fortran programming book.

A.Chan

- "Mihaly Mezei"  wrote:

> Hi,
> 
> The previous example I posted shows that using a different integer
> does not work, Attached is a case where I tired to pass the
> MPI_COMM_WORLD to the subroutine as one of it arguments, resulting in
> an invalid datatype error.
> 
> Mihaly Mezei
> 
> Department of Structural and Chemical Biology, Mount Sinai School of
> Medicine
> Voice:  (212) 659-5475   Fax: (212) 849-2456
> WWW (MSSM home):
> http://www.mountsinai.org/Find%20A%20Faculty/profile.do?id=07251497192632
> WWW (Lab home - software, publications): http://inka.mssm.edu/~mezei
> WWW (Department): http://atlas.physbio.mssm.edu


Re: [OMPI users] MPE logging GUI

2010-07-19 Thread Anthony Chan

Just curious, is there any reason you are looking for another
tool to view slog2 file ?

A.Chan

- "Stefan Kuhne"  wrote:

> Hello,
> 
> does anybody know another tool as jumpstart to view a MPE logging
> file?
> 
> Regards,
> Stefan Kuhne
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


[OMPI users] Suggestion to add one thing to look/check for when running OpenMPI program

2019-01-08 Thread Ewen Chan
To Whom It May Concern:

Hello. I'm new here and I got here via OpenFOAM.

In the FAQ regarding running OpenMPI programs, specifically where someone might 
be able to run their OpenMPI program on a local node, but not a remote node, I 
would like to add the following for people to check:

Make sure that you can ssh between all of the notes, permutatively.

This often requires setting up passwordless ssh access so if you have two 
nodes, make sure that you can ssh into each other from each other without any 
issues.

I just had it happen where I forgot to perform this check and so it was trying 
to ennumerate the ECDSA key to ~/.ssh/known_hosts and that prompt was 
preventing OpenFOAM from running on my multi-node cluster.

Thank you.

Sincerely,

Ewen Chan
___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Re: [OMPI users] Suggestion to add one thing to look/check for when running OpenMPI program

2019-01-09 Thread Ewen Chan
Jeff:

You're welcome.

Not a problem.

I was trying to email somebody more directly about this with this recommended 
change only because I just encountered this problem, where a bit of time, 
trying to figure out why OpenFOAM on OpenMPI, trying to get it running across 
the nodes wasn't working.

Then I was like "wait a minute. Let me see if can remotely log into each other" 
and that's when I found this and figured out it was the problem. Once the keys 
were ennumerated, OpenFOAM was able to run without any further OpenMPI related 
issues.

Thanks.

Sincerely,
Ewen


From: users  on behalf of Jeff Squyres 
(jsquyres) via users 
Sent: January 9, 2019 1:12 PM
To: Open MPI User's List
Cc: Jeff Squyres (jsquyres)
Subject: Re: [OMPI users] Suggestion to add one thing to look/check for when 
running OpenMPI program

Good suggestion; thank you!


> On Jan 8, 2019, at 9:44 PM, Ewen Chan  wrote:
>
> To Whom It May Concern:
>
> Hello. I'm new here and I got here via OpenFOAM.
>
> In the FAQ regarding running OpenMPI programs, specifically where someone 
> might be able to run their OpenMPI program on a local node, but not a remote 
> node, I would like to add the following for people to check:
>
> Make sure that you can ssh between all of the notes, permutatively.
>
> This often requires setting up passwordless ssh access so if you have two 
> nodes, make sure that you can ssh into each other from each other without any 
> issues.
>
> I just had it happen where I forgot to perform this check and so it was 
> trying to ennumerate the ECDSA key to ~/.ssh/known_hosts and that prompt was 
> preventing OpenFOAM from running on my multi-node cluster.
>
> Thank you.
>
> Sincerely,
>
> Ewen Chan
> ___
> users mailing list
> users@lists.open-mpi.org
> https://lists.open-mpi.org/mailman/listinfo/users


--
Jeff Squyres
jsquy...@cisco.com

___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users
___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Re: [OMPI users] Issue with Profiling Fortran code

2008-12-05 Thread Anthony Chan

Hope I didn't misunderstand your question.  If you implement
your profiling library in C where you do your real instrumentation,
you don't need to implement the fortran layer, you can simply link
with Fortran to C MPI wrapper library -lmpi_f77. i.e.

/bin/mpif77 -o foo foo.f -L/lib -lmpi_f77 -lYourProfClib

where libYourProfClib.a is your profiling tool written in C. 
If you don't want to intercept the MPI call twice for fortran program,
you need to implment fortran layer.  In that case, I would think you
can just call C version of PMPI_xxx directly from your fortran layer, e.g.

void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
printf("mpi_comm_rank call successfully intercepted\n");
*info = PMPI_Comm_rank(comm,rank);
}

A.Chan

- "Nick Wright"  wrote:

> Hi
> 
> I am trying to use the PMPI interface with OPENMPI to profile a
> fortran 
> program.
> 
> I have tried with 1.28 and 1.3rc1 with --enable-mpi-profile switched
> on.
> 
> The problem seems to be that if one eg. intercepts to call to 
> mpi_comm_rank_ (the fortran hook) then calls pmpi_comm_rank_ this then
> 
> calls MPI_Comm_rank (the C hook) not PMPI_Comm_rank as it should.
> 
> So if one wants to create a library that can profile C and Fortran
> codes 
> at the same time one ends up intercepting the mpi call twice. Which is
> 
> not desirable and not what should happen (and indeed doesn't happen in
> 
> other MPI implementations).
> 
> A simple example to illustrate is below. If somebody knows of a fix to
> 
> avoid this issue that would be great !
> 
> Thanks
> 
> Nick.
> 
> pmpi_test.c: mpicc pmpi_test.c -c
> 
> #include
> #include "mpi.h"
> void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
>printf("mpi_comm_rank call successfully intercepted\n");
>pmpi_comm_rank_(comm,rank,info);
> }
> int MPI_Comm_rank(MPI_Comm comm, int *rank) {
>printf("MPI_comm_rank call successfully intercepted\n");
>PMPI_Comm_rank(comm,rank);
> }
> 
> hello_mpi.f: mpif77 hello_mpi.f pmpi_test.o
> 
>program hello
> implicit none
> include 'mpif.h'
> integer ierr
> integer myid,nprocs
> character*24 fdate,host
> call MPI_Init( ierr )
>myid=0
>call mpi_comm_rank(MPI_COMM_WORLD, myid, ierr )
>call mpi_comm_size(MPI_COMM_WORLD , nprocs, ierr )
>call getenv('HOST',host)
>write (*,*) 'Hello World from proc',myid,' out of',nprocs,host
>call mpi_finalize(ierr)
>end
> 
> 
> 
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users


Re: [OMPI users] Issue with Profiling Fortran code

2008-12-05 Thread Anthony Chan
Hi Nick,

- "Nick Wright"  wrote:

> Hi Antony
> 
> That will work yes, but its not portable to other MPI's that do 
> implement the profiling layer correctly unfortunately.

I guess I must have missed something here.  What is not portable ?

> 
> I guess we will just need to detect that we are using openmpi when our
> 
> tool is configured and add some macros to deal with that accordingly.
> Is 
> there an easy way to do this built into openmpi?

MPE by default provides a fortran to C wrapper library, that way user
does not have to know about the MPI implementation's fortran to C layer.
MPE user can specify the fortran to C layer that implementation have
during MPE configure.

Since MPI implementation's fortran to C library does not change often,
so writing a configure test to check for libmpi_f77.*, libfmpich.*,
or libfmpi.* should get you covered for most platforms.

A.Chan
> 
> Thanks
> 
> Nick.
> 
> Anthony Chan wrote:
> > Hope I didn't misunderstand your question.  If you implement
> > your profiling library in C where you do your real instrumentation,
> > you don't need to implement the fortran layer, you can simply link
> > with Fortran to C MPI wrapper library -lmpi_f77. i.e.
> > 
> > /bin/mpif77 -o foo foo.f -L/lib -lmpi_f77
> -lYourProfClib
> > 
> > where libYourProfClib.a is your profiling tool written in C. 
> > If you don't want to intercept the MPI call twice for fortran
> program,
> > you need to implment fortran layer.  In that case, I would think
> you
> > can just call C version of PMPI_xxx directly from your fortran
> layer, e.g.
> > 
> > void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
> > printf("mpi_comm_rank call successfully intercepted\n");
> > *info = PMPI_Comm_rank(comm,rank);
> > }
> > 
> > A.Chan
> > 
> > - "Nick Wright"  wrote:
> > 
> >> Hi
> >>
> >> I am trying to use the PMPI interface with OPENMPI to profile a
> >> fortran 
> >> program.
> >>
> >> I have tried with 1.28 and 1.3rc1 with --enable-mpi-profile
> switched
> >> on.
> >>
> >> The problem seems to be that if one eg. intercepts to call to 
> >> mpi_comm_rank_ (the fortran hook) then calls pmpi_comm_rank_ this
> then
> >>
> >> calls MPI_Comm_rank (the C hook) not PMPI_Comm_rank as it should.
> >>
> >> So if one wants to create a library that can profile C and Fortran
> >> codes 
> >> at the same time one ends up intercepting the mpi call twice. Which
> is
> >>
> >> not desirable and not what should happen (and indeed doesn't happen
> in
> >>
> >> other MPI implementations).
> >>
> >> A simple example to illustrate is below. If somebody knows of a fix
> to
> >>
> >> avoid this issue that would be great !
> >>
> >> Thanks
> >>
> >> Nick.
> >>
> >> pmpi_test.c: mpicc pmpi_test.c -c
> >>
> >> #include
> >> #include "mpi.h"
> >> void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
> >>printf("mpi_comm_rank call successfully intercepted\n");
> >>pmpi_comm_rank_(comm,rank,info);
> >> }
> >> int MPI_Comm_rank(MPI_Comm comm, int *rank) {
> >>printf("MPI_comm_rank call successfully intercepted\n");
> >>PMPI_Comm_rank(comm,rank);
> >> }
> >>
> >> hello_mpi.f: mpif77 hello_mpi.f pmpi_test.o
> >>
> >>program hello
> >> implicit none
> >> include 'mpif.h'
> >> integer ierr
> >> integer myid,nprocs
> >> character*24 fdate,host
> >> call MPI_Init( ierr )
> >>myid=0
> >>call mpi_comm_rank(MPI_COMM_WORLD, myid, ierr )
> >>call mpi_comm_size(MPI_COMM_WORLD , nprocs, ierr )
> >>call getenv('HOST',host)
> >>write (*,*) 'Hello World from proc',myid,' out
> of',nprocs,host
> >>call mpi_finalize(ierr)
> >>end
> >>
> >>
> >>
> >> ___
> >> 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


Re: [OMPI users] Issue with Profiling Fortran code

2008-12-05 Thread Anthony Chan
Hi Nick,

- "Nick Wright"  wrote:

> For the first case you describe, as OPENMPI is now, the call sequence
> 
> from fortran is
> 
> mpi_comm_rank -> MPI_Comm_rank -> PMPI_Comm_rank
> 
> For the second case, as MPICH is now, its
> 
> mpi_comm_rank -> PMPI_Comm_rank
> 

AFAIK, all known/popular MPI implemention's fortran binding 
layer is implemented with C MPI functions, including
MPICH2 and OpenMPI.   If MPICH2's fortran layer was implemented 
the way you said, typical profiling tools including MPE will
fail to work with fortran applications.

e.g. check mpich2-xxx/src/binding/f77/sendf.c.

A.Chan

> So for the first case if I have a pure fortran/C++ code I have to 
> profile at the C interface.
> 
> So is the patch now retracted ?
> 
> Nick.
> 
> > I think you have an incorrect deffinition of "correctly" :). 
> According 
> > to the MPI standard, an MPI implementation is free to either layer 
> > language bindings (and only allow profiling at the lowest layer)  or
> not
> > layer the language bindings (and require profiling libraries
> intercept 
> > each language).  The only requirement is that the implementation 
> > document what it has done.
> > 
> > Since everyone is pretty clear on what Open MPI has done, I don't
> think 
> > you can claim Open MPI is doing it "incorrectly".  Different from
> MPICH 
> > is not necessarily incorrect.  (BTW, LAM/MPI handles profiling the
> same 
> > way as Open MPI).
> > 
> > Brian
> > 
> > On Fri, 5 Dec 2008, Nick Wright wrote:
> > 
> >> Hi Antony
> >>
> >> That will work yes, but its not portable to other MPI's that do 
> >> implement the profiling layer correctly unfortunately.
> >>
> >> I guess we will just need to detect that we are using openmpi when
> our 
> >> tool is configured and add some macros to deal with that
> accordingly. 
> >> Is there an easy way to do this built into openmpi?
> >>
> >> Thanks
> >>
> >> Nick.
> >>
> >> Anthony Chan wrote:
> >>> Hope I didn't misunderstand your question.  If you implement
> >>> your profiling library in C where you do your real
> instrumentation,
> >>> you don't need to implement the fortran layer, you can simply
> link
> >>> with Fortran to C MPI wrapper library -lmpi_f77. i.e.
> >>>
> >>> /bin/mpif77 -o foo foo.f -L/lib -lmpi_f77
> -lYourProfClib
> >>>
> >>> where libYourProfClib.a is your profiling tool written in C. If
> you 
> >>> don't want to intercept the MPI call twice for fortran program,
> >>> you need to implment fortran layer.  In that case, I would think
> you
> >>> can just call C version of PMPI_xxx directly from your fortran
> layer, 
> >>> e.g.
> >>>
> >>> void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
> >>> printf("mpi_comm_rank call successfully intercepted\n");
> >>> *info = PMPI_Comm_rank(comm,rank);
> >>> }
> >>>
> >>> A.Chan
> >>>
> >>> - "Nick Wright"  wrote:
> >>>
> >>>> Hi
> >>>>
> >>>> I am trying to use the PMPI interface with OPENMPI to profile a
> >>>> fortran program.
> >>>>
> >>>> I have tried with 1.28 and 1.3rc1 with --enable-mpi-profile
> switched
> >>>> on.
> >>>>
> >>>> The problem seems to be that if one eg. intercepts to call to 
> >>>> mpi_comm_rank_ (the fortran hook) then calls pmpi_comm_rank_ this
> then
> >>>>
> >>>> calls MPI_Comm_rank (the C hook) not PMPI_Comm_rank as it
> should.
> >>>>
> >>>> So if one wants to create a library that can profile C and
> Fortran
> >>>> codes at the same time one ends up intercepting the mpi call
> twice. 
> >>>> Which is
> >>>>
> >>>> not desirable and not what should happen (and indeed doesn't
> happen in
> >>>>
> >>>> other MPI implementations).
> >>>>
> >>>> A simple example to illustrate is below. If somebody knows of a
> fix to
> >>>>
> >>>> avoid this issue that would be great !
> >>>>
> >>>> Thanks
> >>>>
> >>>> Nick.
> >>>>
> >>>> pmpi_test.c: mpicc pmpi_test.c -c
>

Re: [OMPI users] Issue with Profiling Fortran code

2008-12-05 Thread Anthony Chan
Hi George,

- "George Bosilca"  wrote:

> On Dec 5, 2008, at 03:16 , Anthony Chan wrote:
> 
> > void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
> >printf("mpi_comm_rank call successfully intercepted\n");
> >*info = PMPI_Comm_rank(comm,rank);
> > }
> 
> Unfortunately this example is not correct. The real Fortran prototype 
> 
> for the MPI_Comm_rank function is
> void mpi_comm_rank_(MPI_Fint *comm, MPI_Fint *rank, MPI_Fint *ierr).

Yes, you are right.  I was being sloppy (it was late, so just cut/paste
from Nick's code), the correct code should be

void mpi_comm_rank_(MPI_Fint *comm, MPI_Fint *rank, MPI_Fint *info) {
   printf("mpi_comm_rank call successfully intercepted\n");
*info = PMPI_Comm_rank(MPI_Comm_f2c(*comm),*rank);
}


A.Chan
> 
> As you might notice there is no MPI_Comm (and believe me for Open MPI 
> 
> MPI_Comm is different than MPI_Fint), and there is no guarantee that 
> 
> the C int is the same as the Fortran int (looks weird but true).  
> Therefore, several conversions are required in order to be able to go 
> 
> from the Fortran layer into the C one.
> 
> As a result, a tool should never cross the language boundary by  
> itself. Instead it should call the pmpi function as provided by the  
> MPI library. This doesn't really fix the issue that started this email
>  
> thread, but at least clarify it a little bit.
> 
>george.
> 
> >
> > A.Chan
> >
> > - "Nick Wright"  wrote:
> >
> >> Hi
> >>
> >> I am trying to use the PMPI interface with OPENMPI to profile a
> >> fortran
> >> program.
> >>
> >> I have tried with 1.28 and 1.3rc1 with --enable-mpi-profile
> switched
> >> on.
> >>
> >> The problem seems to be that if one eg. intercepts to call to
> >> mpi_comm_rank_ (the fortran hook) then calls pmpi_comm_rank_ this 
> 
> >> then
> >>
> >> calls MPI_Comm_rank (the C hook) not PMPI_Comm_rank as it should.
> >>
> >> So if one wants to create a library that can profile C and Fortran
> >> codes
> >> at the same time one ends up intercepting the mpi call twice. Which
>  
> >> is
> >>
> >> not desirable and not what should happen (and indeed doesn't happen
>  
> >> in
> >>
> >> other MPI implementations).
> >>
> >> A simple example to illustrate is below. If somebody knows of a fix
>  
> >> to
> >>
> >> avoid this issue that would be great !
> >>
> >> Thanks
> >>
> >> Nick.
> >>
> >> pmpi_test.c: mpicc pmpi_test.c -c
> >>
> >> #include
> >> #include "mpi.h"
> >> void mpi_comm_rank_(MPI_Comm *comm, int *rank, int *info) {
> >>   printf("mpi_comm_rank call successfully intercepted\n");
> >>   pmpi_comm_rank_(comm,rank,info);
> >> }
> >> int MPI_Comm_rank(MPI_Comm comm, int *rank) {
> >>   printf("MPI_comm_rank call successfully intercepted\n");
> >>   PMPI_Comm_rank(comm,rank);
> >> }
> >>
> >> hello_mpi.f: mpif77 hello_mpi.f pmpi_test.o
> >>
> >>   program hello
> >>implicit none
> >>include 'mpif.h'
> >>integer ierr
> >>integer myid,nprocs
> >>character*24 fdate,host
> >>call MPI_Init( ierr )
> >>   myid=0
> >>   call mpi_comm_rank(MPI_COMM_WORLD, myid, ierr )
> >>   call mpi_comm_size(MPI_COMM_WORLD , nprocs, ierr )
> >>   call getenv('HOST',host)
> >>   write (*,*) 'Hello World from proc',myid,' out
> of',nprocs,host
> >>   call mpi_finalize(ierr)
> >>   end
> >>
> >>
> >>
> >> ___
> >> 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


Re: [OMPI users] OpenMPE build failure

2006-12-05 Thread Anthony Chan


On Tue, 5 Dec 2006, Ryan Thompson wrote:

> I'm attempting to build MPE without success. When I try to make it, I
> recieve the error:
>
> trace_input.c:23:23: error: trace_API.h: No such file or directory

I just built the related mpe2's subpackage, slog2sdk, on a AMD64 (Ubuntu
6.06.1) with gcc-4.0 and I don't see the strange errors that you
observed...   I put the latest mpe2 on our ftp server:

ftp://ftp.mcs.anl.gov/pub/mpi/mpe/beta/mpe2-1.0.5b2.tar.gz

which contains various bugfixes over mpe2-1.0.4. I have tested
mpe2-1.0.5b2 with the openmpi-1.1.2 on an IA32 linux box, everything seems
working fine.

> Where is this file supposed to come from?
>
> Here are my configure arguments...
>
> JAVA="/opt/sun-jdk-1.5.0.08"
>
> ./configure --prefix=/opt/mpe \
> --sharedstatedir=/var/mpe \
> --localstatedir=/com/mpe \
> --enable-misc=yes \
> --enable-logging=yes \
> --enable-f77=no \
> --enable-wrappers=yes \
> --enable-slog2=build \
> --enable-collchk=no \
> --enable-graphics=no \
> --with-mpicc="/opt/openmpi/bin/mpicc" \
> --with-mpiinc="-I/opt/openmpi/include" \
> --with-mpilibs="-L/opt/openmpi/lib" \
> --includedir=$JAVA/include \
> --with-java=$JAVA
>

mpe2 does not use sharedstatedir and localstatedir, so you don't need
to specify --sharedstatedir and --localstatedir.  The only configure
option I see problem is --includedir=$JAVA/include which will force
mpe2 to install mpe include files to /opt/sun-jdk-1.5.0.08/include.
I believe it is a mistake.

FYI: here is my configure command to build mpe2 for openmpi:

mkdir 
cd 
/configure CC=
 F77=
 MPI_CC=/bin/mpicc
 MPI_F77=/bin/mpif90
 --with-java=/opt/sun-jdk-1.5.0.08
 --prefix=/opt/mpe
 MPERUN="/bin/mpiexec -n 4"
make
make install
make installcheck-all

If you don't need fortran support, don't use F77 and MPI_F77 and add
--disable-f77.  The configure option MPERUN="..." and
"make installcheck-all" enable a series of tests for the typical features
of MPE2.  Let me know if you see any problem.  If you do, send me the
configure output as seen on your screen (not config.log), i.e. c.txt from
the following command

With csh-like shell
configure  |& tee c.txt

or

With bourne-like shell
configure ... | tee c.txt 2>&1

A.Chan


Re: [OMPI users] OpenMPE build failure

2006-12-06 Thread Anthony Chan


On Wed, 6 Dec 2006, Ryan Thompson wrote:

> Hi Anthony,
>
> I made some progress, however, I still get the same trace_API.h
> error, although I'm not certain if it is important.

trace_sample is a sample TRACE-API implementation for SLOG2, e.g. for
people who write their own trace and to generate their own SLOG2 files.
trace_rlog is MPICH2's internal logging format (standalone MPE does not
distinguish which MPI implementation you are using).  If you don't need
them, add --disable-rlog and --disable-sample to your configure command.

> It appears that the binaries are built regardless and the
> installcheck-all appears to pass on all tests.

I don't see any errors in any of the output files that you sent me.
Everything appears to finish successfully.  Did you pipe both standard
output and standard error to the files ?

>
> As requested, I've attached a gzip'd tarball of my configure, make,
> make install, & make installcheck-all.
>
> Also, here are my configure arguments, as they appear in my 'do-
> configure' shell script...
>
> # MPE do.sh
>
> JAVA="/opt/sun-jdk-1.5.0.08"
> MPERUN="/opt/openmpi/bin/mpiexec -n 4"
>
> ./configure --prefix=/opt/openmpi \
>  --enable-logging=yes \
>  --disable-f77 \
>  --enable-slog2=build \
>  --enable-collchk=no \
>  --enable-graphics=no \
>  --with-mpicc="/opt/openmpi/bin/mpicc" \
>  --with-mpiinc="-I/opt/openmpi/include" \
>  --with-mpilibs="-L/opt/openmpi/lib" \
>  --with-java=$JAVA

A.Chan


Re: [OMPI users] compiling mpptest using OpenMPI

2007-02-15 Thread Anthony Chan

As long as mpicc is working, try configuring mpptest as

mpptest/configure MPICC=/bin/mpicc

or

mpptest/configure  --with-mpich=

A.Chan

On Thu, 15 Feb 2007, Eric Thibodeau wrote:

> Hi Jeff,
>
>   Thanks for your response, I eventually figured it out, here is the
> only way I got mpptest to compile:
>
> export LD_LIBRARY_PATH="$HOME/openmpi_`uname -m`/lib"
> CC="$HOME/openmpi_`uname -m`/bin/mpicc" ./configure 
> --with-mpi="$HOME/openmpi_`uname -m`"
>
> And, yes I know I should use the mpicc wrapper and all (I do RTFM :P ) but
> mpptest is less than cooperative and hasn't been updated lately AFAIK.
>
> I'll keep you posted on some results as I get some results out (testing
> TCP/IP as well as the HyperTransport on a Tyan Beast). Up to now, LAM-MPI
> seems less efficient at async communications and shows no improovments
> with persistant communications under TCP/IP. OpenMPI, on the other hand,
> seems more efficient using persistant communications when in a
> HyperTransport (shmem) environment... I know I am crossing many test
> boudaries but I will post some PNGs of my results (as well as how I got to
> them ;)
>
> Eric
>
> On Thu, 15 Feb 2007, Jeff Squyres wrote:
>
> > I think you want to add $HOME/openmpi_`uname -m`/lib to your
> > LD_LIBRARY_PATH.  This should allow executables created by mpicc (or
> > any derivation thereof, such as extracting flags via showme) to find
> > the Right shared libraries.
> >
> > Let us know if that works for you.
> >
> > FWIW, we do recommend using the wrapper compilers over extracting the
> > flags via --showme whenever possible (it's just simpler and should do
> > what you need).
> >
> >
> > On Feb 15, 2007, at 3:38 PM, Eric Thibodeau wrote:
> >
> > > Hello all,
> > >
> > >
> > > I have been attempting to compile mpptest on my nodes in vain. Here
> > > is my current setup:
> > >
> > >
> > > Openmpi is in "$HOME/openmpi_`uname -m`" which translates to "/
> > > export/home/eric/openmpi_i686/". I tried the following approaches
> > > (you can see some of these were out of desperation):
> > >
> > >
> > > CFLAGS=`mpicc --showme:compile` LDFLAGS=`mpicc --showme:link` ./
> > > configure
> > >
> > >
> > > Configure fails on:
> > >
> > > checking whether the C compiler works... configure: error: cannot
> > > run C compiled programs.
> > >
> > >
> > > The log shows that:
> > >
> > > ./a.out: error while loading shared libraries: liborte.so.0: cannot
> > > open shared object file: No such file or directory
> > >
> > >
> > >
> > > CC="/export/home/eric/openmpi_i686/bin/mpicc" ./configure --with-
> > > mpi=$HOME/openmpi_`uname -m`
> > >
> > > Same problems as above...
> > >
> > >
> > > LDFLAGS="$HOME/openmpi_`uname -m`/lib" ./configure --with-mpi=$HOME/
> > > openmpi_`uname -m`
> > >
> > >
> > > Configure fails on:
> > >
> > > checking for C compiler default output file name... configure:
> > > error: C compiler cannot create executables
> > >
> > >
> > > And...finally (not that all of this was done in the presented order):
> > >
> > > ./configure --with-mpi=$HOME/openmpi_`uname -m`
> > >
> > >
> > > Which ends with:
> > >
> > >
> > > checking for library containing MPI_Init... no
> > >
> > > configure: error: Could not find MPI library
> > >
> > >
> > > Anyone can help me with this one...?
> > >
> > >
> > > Note that LAM-MPI is also installed on these systems...
> > >
> > >
> > > Eric Thibodeau
> > >
> > >
> > > ___
> > > 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
>
>


Re: [OMPI users] how to identify openmpi in configure script

2007-06-05 Thread Anthony Chan

Never tried this myself, but this test could work

AC_COMPILE_IFELSE( [
AC_LANG_PROGRAM( [
#include "mpi.h"
], [
#if defined( OPEN_MPI )
return 0;
#else
#error
#endif
 ] )
], [
mpi_is_openmpi=yes
], [
mpi_is_openmpi=no
] )

A.Chan


On Tue, 5 Jun 2007, Lie-Quan Lee wrote:

> I am a project written in C/C++ but used 3rd-party libraries written in
> Fortran. In the linking stage, I use mpic++ andl need to put -lmpi_f90
> -lmpi_f77 into the link flags.
> I am wondering if anyone has already had a way to identify openmpi in
> configure script using autoconf macro. By identifying openmpi in the
> configure, I will be able to handle those libraries. Thanks.
>
> --
> Best regards,
> Rich Lee
> Stanford Linear Accelerator Center
>


Re: [OMPI users] how to identify openmpi in configure script

2007-06-08 Thread Anthony Chan


On Fri, 8 Jun 2007, Jeff Squyres wrote:

> Would it be helpful if we provided some way to link in all the MPI
> language bindings?
>
> Examples off the top of my head (haven't thought any of these through):
>
> - mpicxx_all ...
> - setenv OMPI_WRAPPER_WANT_ALL_LANGUAGE_BINDINGS
>mpicxx ...
> - mpicxx -ompi:all_languages ...
>

Maybe this wrapper should be called "mpild" or "mpilinker".

A.Chan

>
> On Jun 6, 2007, at 12:05 PM, Lie-Quan Lee wrote:
>
> > Hi Jeff,
> >
> > Thanks for willing to put more thought on it. Here is my simplified
> > story. I have an accelerator physics code, Omega3P that is to perform
> > complex eigenmode analysis. The algorithm for solving eigensystems
> > makes use of a 3rd-party  sparse direct solver called MUMPS (http://
> > graal.ens-lyon.fr/MUMPS/). Omega3P is written in C++ with MPI. MUMPS
> > is written in Fortran 95 with MPI fortran binding. And MUMPS requires
> > ScaLAPACK and BLACS. (sometime the vendor provides a scientific
> > library that includes BLACS and ScaLAPACK).  They are both written in
> > Fortran 77 with MPI Fortran binding.
> >
> > I often need to compile them in various computer platforms with
> > different compilers for variety of reasons.
> > As I mentioned before, I use C++ compiler to link the final
> > executable. That will require MPI Fortran libraries and general
> > Fortran libraries.
> >
> > What I did to solve the above problem is, I have a configure script
> > in which I will detect the compiler and the platform, based on that I
> > will add compiler and platform specific flags for the Fortran related
> > stuff (libraries and library path). This does well until it hit next
> > new platform/compiler...
> >
> > Some compilers made the above job slightly easier. For example in
> > Pathscale compiler collection, it provides -lpathfortran for all what
> > I need to link the executable using c++ compiler with fortran
> > compiled libraries. So is IBM visual age compiler set if the wraper
> > compilers (mpcc_r, mpf90_r) are used. The library name (-lxlf90_r) is
> > different, though.
> >
> >
> > best regards,
> > Rich Lee
> >
> >
> > On Jun 6, 2007, at 4:16 AM, Jeff Squyres wrote:
> >
> >> On Jun 5, 2007, at 11:17 PM, Lie-Quan Lee wrote:
> >>
> >>> it is a quite of headache for each compiler/platform to deal with
> >>> mixed language
> >>> issues.  I have to compile my application on IBM visual age
> >>> compiler,
> >>> Pathscale, Cray X1E compiler,
> >>> intel/openmpi, intel/mpich, PGI compiler ...
> >>> And of course, openmpi 1.1 is different on this comparing with
> >>> openmpi 1.2.2 (-lmpi_f77 is new to 1.2.2 version). :-)
> >>
> >>> You are right. MPI forum most like will not take care of this. I
> >>> just
> >>> made a wish ... :-)
> >>
> >> Understood; I know it's a pain.  :-(
> >>
> >> What I want to understand, however, is what you need to do.  It seems
> >> like your needs are a bit different than those of the mainstream --
> >> is there a way that we can support you directly instead of forcing
> >> you to a) identify openmpi, b) call mpi --showme:link to get the
> >> relevant flags, and c) stitch them together in the manner that you
> >> need?
> >>
> >> We take great pains to ensure that the mpi wrapper compilers
> >> "just work" for all the common cases in order to avoid all the "you
> >> must identify which MPI you are using" kinds of games.  Your case
> >> sounds somewhat unusual, but perhaps there's a way we can get the
> >> information to you in a more direct manner...?
> >>
> >> --
> >> Jeff Squyres
> >> Cisco Systems
> >>
> >> ___
> >> 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
>
>
> --
> Jeff Squyres
> Cisco Systems
>
> ___
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>


[OMPI users] Question about OpenMPI paths

2019-07-25 Thread Ewen Chan via users
To Whom It May Concern:

I am trying to run Converge CFD by Converge Science using OpenMPI in CentOS 
7.6.1810 x86_64 and I am getting the error:

bash: orted: command not found

I've already read the FAQ: 
https://www.open-mpi.org/faq/?category=running#adding-ompi-to-path

Here's my system setup, environment variables, etc.

OpenMPI version 1.10.7

Path to mpirun: /usr/lib64/openmpi/bin
Path to openmpi libs: /usr/lib64/openmpi/lib

$ cat ~/.bashrc
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.bash_profile
...
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.profile
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH


$ cat /etc/profile
...
PATH=$PATH:...:/usr/lib64/openmpi/bin
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
export LD_LIBRARY_PATH

$ cat /home/user/cluster/node003_16_node004_16.txt
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node004
node004
node004
node004
node004
node004
node004
node004
___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

[OMPI users] bash: orted: command not found -- ran through the FAQ already

2019-07-25 Thread Ewen Chan via users
To Whom It May Concern:

I'm trying to run Converge CFD by Converge Science using OpenMPI and I am 
getting the error:

bash: orted: command not found

I've already read and executed the FAQ about adding OpenMPI to my PATH and 
LD_LIBRARY_PATH 
(https://www.open-mpi.org/faq/?category=running#adding-ompi-to-path).

Here's my configuration:

OS: CentOS 7.6.1810 x86_64 (it's a fresh install. I installed it last night.)
OpenMPI version: 1.10.7 (that was the version that was available in the CentOS 
install repo)
path to mpirun: /usr/lib64/openmpi/bin
path to lib: /usr/lib64/openmpi/lib

$ cat ~/.bashrc
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.bash_profile
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.profile
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat /etc/profile
...
PATH=$PATH:...:/usr/lib64/openmpi/bin
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
export LD_LIBRARY_PATH

SI8_premix_PFI_SAGE$ cat node003_16_node004_16.txt
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004
node004

command that I am trying to run that results in the error:

SI8_premix_PFI_SAGE$ time -p mpirun -hostfile node003_16_node004_16.txt 
/opt/converge_2.4.0/l_x86_64/bin/converge...ompi 2>&1 | tee run.log

However, if I run where I explicitly give the absolute path to the mpirun, then 
it works:

SI8_premix_PFI_SAGE$ time -p /usr/lib64/openmpi/bin/mpirun -hostfile 
node003_16_node004_16.txt /opt/converge_2.4.0/l_x86_64/bin/converge...ompi 2>&1 
| tee run.log

I also tried exporting the PATH and LD_LIBRARY_PATH to the slave node and that 
didn't seem to work (results in the same error):

SI8_premix_PFI_SAGE$ time -p mpirun -x PATH -x LD_LIBRARY_PATH -hostfile 
node003_16_node004_16.txt /opt/converge_2.4.0/l_x86_64/bin/converge...ompi 2>&1 
| tee run.log

I think that I'm using bash shell (I think that's the default for CentOS 
users), but to be sure, I created the .profile anyways.

passwordless ssh has been properly configured, so that's not an issue (and I've 
tested that permutatively).

The two nodes can ping each other, back and forth, also permutatively as well.

I'm at a loss as to why I need to specify the absolute path to mpirun despite 
having everything else set up and to me, it looks like that I've set everything 
else up correctly.

Your help is greatly appreciated.

Thank you.

Sincerely,

Ewen Chan
___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

Re: [OMPI users] Question about OpenMPI paths

2019-07-25 Thread Ewen Chan via users
All:

Whoops.

My apologies to everybody. Accidentally pressed the wrong combination of 
buttons on the keyboard and sent this email out prematurely.

Please disregard.

Thank you.

Sincerely,
Ewen


From: users  on behalf of Ewen Chan via users 

Sent: July 25, 2019 10:19 AM
To: users@lists.open-mpi.org 
Cc: Ewen Chan 
Subject: [OMPI users] Question about OpenMPI paths

To Whom It May Concern:

I am trying to run Converge CFD by Converge Science using OpenMPI in CentOS 
7.6.1810 x86_64 and I am getting the error:

bash: orted: command not found

I've already read the FAQ: 
https://www.open-mpi.org/faq/?category=running#adding-ompi-to-path

Here's my system setup, environment variables, etc.

OpenMPI version 1.10.7

Path to mpirun: /usr/lib64/openmpi/bin
Path to openmpi libs: /usr/lib64/openmpi/lib

$ cat ~/.bashrc
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.bash_profile
...
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

$ cat ~/.profile
PATH=$PATH
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH


$ cat /etc/profile
...
PATH=$PATH:...:/usr/lib64/openmpi/bin
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64/openmpi/lib
export LD_LIBRARY_PATH

$ cat /home/user/cluster/node003_16_node004_16.txt
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node003
node004
node004
node004
node004
node004
node004
node004
node004
___
users mailing list
users@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/users

[OMPI users] Is there a workaround available to get around fork() where I don't have access to the program's source code?

2020-10-21 Thread Ewen Chan via users
To Whom It May Concern:

I have a program that I am running that has the MPI call fork() and when I run 
the program, I get the following warning:

--
An MPI process has executed an operation involving a call to the
"fork()" system call to create a child process.  Open MPI is currently
operating in a condition that could result in memory corruption or
other system errors; your MPI job may hang, crash, or produce silent
data corruption.  The use of fork() (or system() or other calls that
create child processes) is strongly discouraged.

The process that invoked fork was:

  Local host:  aes0 (PID 16225)
  MPI_COMM_WORLD rank: 0

If you are *absolutely sure* that your application will successfully
and correctly survive a call to fork(), you may disable this warning
by setting the mpi_warn_on_fork MCA parameter to 0.
--

I don't have access to the source code for this program and when I run it, I do 
get a segmentation fault.

Is there a way for me to work/get around this if I don't have access to the 
source code?

Thank you.

Sincerely,
Ewen