Using MPI-2 (Gropp et al.) says MPI_SIZEOF() only supports numeric
intrinsic data types. So, I patched OpenMPI 1.4.2 to remove the
declarations of the undefined Logical and Character specific
procedures in ompi/mpi/f90/scripts/mpi-f90-interfaces.h.sh:
output_197 MPI_Sizeof ${rank} CH "c
OpenMPI 1.4.x and 1.5x fail to link a program that calls Subroutine
MPI_SIZEOF using the PGI 10.3 compilers:
$ cat junk.f90
Use MPI
Implicit None
Integer var, size, err
Call MPI_SIZEOF( var, size, err )
Write (*,*) 'Size of Integer var is ', size, ' bytes.'
I managed to compile OpenMPI 1.5rc5 on Linux x86_64 using the PGI 10.3
compilers. All validation tests passed. I have attached the
procedure I followed and the patches I applied to 1.5rc5. I did not
spend the time to find out how to fix configure to include -pthread in
the LIBS Makefile
The make of OpenMPI 1.5rc5 fails for PGI 10.3 in otfprofile:
Making all in otfprofile
make[9]: Entering directory `/usr/local/src/openmpi-1.5rc5/ompi/
contrib/vt/vt/extlib/otf/tools/otfprofile'
CXXotfprofile-otfprofile.o
"/opt/pgi/linux86-64/10.3/include/omp.h", line 41: error: expected
The fix I posted in http://www.open-mpi.org/community/lists/devel/2010/08/8311.php
for the Redefinition of symbol assert causes a link failure of
opal_wrapper. This is because there are assert() calls in opal/mca/
memory/ptmalloc2/arena.c, which is included in opal/mca/memory/
ptmalloc2/mall
To follow up on http://www.open-mpi.org/community/lists/devel/2010/08/8417.php
: OpenMPI 1.5rc5 fails in opal/tools/wrappers for PGI 10.3.
The problem appears to be a missing -lpthread in the definition of
most of the *LIBS variables in OpenMPI 1.5rc5 opal/tools/wrappers/
Makefile:
[root@hy
OpenMPI 1.5rc5 fails in opal/tools/wrappers for PGI 10.3 (see http://www.open-mpi.org/community/lists/devel/2010/08/8312.php)
:
Making all in tools/wrappers
make[2]: Entering directory `/usr/local/src/openmpi-1.5rc5/opal/
tools/wrappers'
CC opal_wrapper.o
CCLD opal_wrapper
../../../
I have access to PGI compilers 10.{3,4,5,8} on an Opteron/InifiniBand
cluster running Scientific Linux 5.4 (an RHEL derivative like the Centos
distro). I can try to reproduce Larry Baker's problems today with the
most recent 10.8 compiler. If there are other things I could/should be
trying to
OpenMPI 1.5rc5 make fails for the PGI 10.3 compilers:
make[2]: Entering directory `/home/baker/openmpi-1.5rc5/opal/tools/
wrappers'
CC opal_wrapper.o
CCLD opal_wrapper
../../../opal/.libs/libopen-pal.so: undefined reference to
`pthread_create'
../../../opal/.libs/libopen-pal.so: un
The PGI C compiler complains (issues a warning) for the redefinition
of the assert macro in opal/mca/memory/ptmalloc2/malloc.c:
Making all in mca/memory/ptmalloc2
make[2]: Entering directory `/home/baker/openmpi-1.5rc5/opal/mca/
memory/ptmalloc2'
CC opal_ptmalloc2_component.lo
CC
The PGI compiler unnecessarily complains (issues a warning) when 0
(which it should be automatically converting to the null pointer
constant) is an operand in a conditional expression. For example,
there are two instances (lines 444 and 459) in opal/mca/memory/
ptmalloc2/hooks.c:
444 and
The PGI C compiler complains (issues a warning) for the #pragma ident
in opal/runtime/opal_init.c:
PGC-W-0281-Pragma ignored - string expected after #pragma ident (../
opal/util/sys_limits.h: 58)
This is because the PCI C compiler does not (whereas, curiously, the
PGI C++ compiler does) s
Both the Intel and PGI compilers complain (issue a warning) about the
arguments to the LT_STRLEN() macro in opal/libltdl/ltdl.c:
ltdl.c(1268): warning #279: controlling expression is constant
archive_name = MALLOC (char, LT_STRLEN (name) + LT_STRLEN
(libext) + 2);
Both PGI C and C++ have issues with the inline assembly in OpenMPI.
configure includes the code below to disable the inline assembly test
for PGI C. The same code needs to be inserted for the C++ inline
assembly test as well.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC su
The PGI compiler version number parsing in the libtool.m4 files is
incorrect. It should be like the parser in configure, i.e., there
should be a period between "]]" and "*"
[baker@hydra openmpi-1.5rc5]$ grep '1-5' configure
*pgCC\ [1-5].* | *pgcpp\ [1-5].*)
[baker@hydra openmpi-
We still have one known possible regression:
https://svn.open-mpi.org/trac/ompi/ticket/2530
But we posted rc5 anyway (there's a bunch of stuff that has been pending for a
while that is now in). Please test!
http://www.open-mpi.org/software/ompi/v1.5/
--
Jeff Squyres
jsquy...@cisco.
16 matches
Mail list logo