Mathias:

I built on AIX on POWER pltform using the following build script and it worked:

#!/bin/sh
export OBJECT_MODE=64

export CC=xlc_r
export CXX=xlC_r
export F77=xlf_r
export FC=xlf90_r

export CFLAGS="-qthreaded -O3 -qmaxmem=-1 -qarch=pwr5x -qtune=pwr5 -q64 -DHAVE_SYS_TYPES_H=1"
export CXXFLAGS="-qthreaded -O3 -qmaxmem=-1 -qarch=pwr5x -qtune=pwr5 -q64"
export FFLAGS="-qthreaded -O3 -qmaxmem=-1 -qarch=pwr5x -qtune=pwr5 -q64"
export FCFLAGS="-qthreaded -O3 -qmaxmem=-1 -qarch=pwr5x -qtune=pwr5 -q64"

./configure --prefix=/vol/swamy/OpenMPI/AIX --disable-shared --enable-static LDFLAGS="-Wl,-brtl" --with-loadleveler=/usr/lpp/LoadL/full

Please give a try. My build is under
/vol/swamy/OpenMPI/AIX.

Thanks
Swamy

Dr. Swamy N. Kandadai
IBM Senior Certified Executive IT Specialist
HPC Benchmark Center
System & Technology Group, Poughkeepsie, NY
Phone:( 845) 433 -8429 (8-293) Fax:(845)432-9789
swamy@us.ibm.com
http://w3.ibm.com/sales/systems/benchmarks





Inactive hide details for Mathias PUETZ <mpuetz@de.ibm.com>Mathias PUETZ <mpuetz@de.ibm.com>


          Mathias PUETZ <mpuetz@de.ibm.com>
          Sent by: users-bounces@open-mpi.org

          02/23/2008 10:05 AM
          Please respond to
          Open MPI Users <users@open-mpi.org>


To

users@open-mpi.org

cc


Subject

[OMPI users] OpenMPI 1.2.5 configure bug for POWERPC64 target


Hi,

I attempted to build OpenMPI-1.2.5 on a POWER5/AIX 5.3 platform.
I know this isn't officially supported, but I report the bug anyway
(otherwise it'll never get chance to be supported, right ?).

I started configure with

./configure CC="xlc -q64" CXX="xlc++ -q64" F77="xlf -q64" FC="xlf90 -q64" NM="nm -X64" AR="ar -X64" --disable-shared --enable-static --prefix=/usr/local/openmpi

to build with IBM XL compilers in 64 bit mode (-q64).

Configure completed to the end, however it printed the following status about atomic operations in the config.log file:

configure:26189: checking for pre-built assembly file
configure:26206: result: no (not in asm-data)
configure:26214: checking whether possible to generate assembly file
configure:26219: perl /vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/generate-asm.pl POWERPC64 aix-.csect .text[PR]-.globl-:-.-\
L--0-0-0-1-0 /vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/base /vol/ctt/mpuetz/openmpi-1.2.5/opal/asm/generated/atomic-local.\
s >conftest.out 2>&1
configure:26222: $? = 2
Could not open .text[PR]-.globl-:-.-L--0-0-0-1-0/POWERPC64.asm: No such file or directory
configure:26232: result: failed
configure:26234: WARNING: Could not build atomic operations assembly file.
configure:26236: WARNING: There will be no atomic operations for this build.
configure:26254: checking for atomic assembly filename
configure:26257: result: none

Thus configure fails to find the ./opal/asm/generated/atomic-powerpc64-aix.s file
which is definitely present. In the end OpenMPI fails to build because of missing
atomic functions in the opal library.

I inspected the configure script for the test in "configure:26206: result: no (not in asm-data)"
which is obviously failing:

if grep "$ompi_cv_asm_arch" "${top_ompi_srcdir}/opal/asm/asm-data.txt" | $FGREP "$ompi_cv_asm_format" >conftest.out\
2>&1 ; then
ompi_cv_asm_file="`cut -f3 conftest.out`"
if test ! "$ompi_cv_asm_file" = "" ; then
ompi_cv_asm_file="atomic-${ompi_cv_asm_file}.s"
if test -f "${top_ompi_srcdir}/opal/asm/generated/${ompi_cv_asm_file}" ; then
{ echo "$as_me:$LINENO: result: yes ($ompi_cv_asm_file)" >&5
echo "${ECHO_T}yes ($ompi_cv_asm_file)" >&6; }
else
{ echo "$as_me:$LINENO: result: no ($ompi_cv_asm_file not found)" >&5
echo "${ECHO_T}no ($ompi_cv_asm_file not found)" >&6; }
ompi_cv_asm_file=""
fi
fi
else
{ echo "$as_me:$LINENO: result: no (not in asm-data)" >&5
echo "${ECHO_T}no (not in asm-data)" >&6; }
fi

ompi_cv_asm_arch has the value "POWERPC64".
The value determined earlier for ompi_cv_asm_format = "aix-.csect .text[PR]-.globl-:-.-L--0-0-0-1-0".
This asm_format is not found in the standard asm-data.txt file which reads for POWERPC64:

aix-.csect .text[PR]-.globl-:-.-L--0-1-0-1-0

By a single 1 that stands for align_log.

Then configure continues to make an attempt to generate an assembly file on the fly,
This test is buggy in a single line:

ompi_try='$PERL $top_ompi_srcdir/opal/asm/generate-asm.pl $ompi_cv_asm_arch $ompi_cv_asm_format $top_ompi_srcdir/opal/asm/base $top_o\
mpi_builddir/opal/asm/generated/$ompi_cv_asm_file >conftest.out 2>&1'

where $ompi_cv_asm_format should be enclosed in double quotes "",
because the format string may contain a blanks (at least in the AIX case it does),
Hence all tests fail, no atomic asm source code is generated and the whole build fails.

1. Could you please fix the bug above in the configure script ?

2. Could someone explain, why configure might determine a different ompi_cv_asm_format
than stated in the asm-data.txt database ?
Maybe the meaning of the cryptic assmebler format string is explained somewhere.
If so, could someone point me to the explanation ?

Viele Grüsse / Best regards,
Mathias Pütz

Deep Computing - Strategic Growth Business
IBM Systems & Technology Group

e-mail: mpuetz@de.ibm.com
mobile: + 49-(0)160-7120602
fax: + 49-(0)6131-84-6660

Anschrift:
IBM Deutschland GmbH
Department B513
Hechtsheimer Str. 2 / Building 12
55131 Mainz
Germany

IBM Deutschland GmbH
Vorsitzender des Aufsichtsrats: Hans Ulrich Maerki
Geschäftsführung: Martin Jetter (Vorsitzender), Christian Diedrich, Christoph Grandpierre, Matthias Hartmann, Thomas Fell, Michael Diemer
Sitz der Gesellschaft: Stuttgart
Registergericht: Amtsgericht Stuttgart, HRB 14562 WEEE-Reg.-Nr. DE 99369940_______________________________________________
users mailing list
users@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users