Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: [OMPI devel] VT "platform" selection needs documentation
From: Paul H. Hargrove (PHHargrove_at_[hidden])
Date: 2010-08-25 14:49:59


I wanted to test builds of OpenMPI 1.5rc5 and 1.4.3rc1 on Linux/PPC64.
As it happens the only such hast I currently have access to is the
front-end for a BG/P. It was NOT my intention to build Open MPI (or
VapirTrace) for the BG/P, but VT's configure logic decided I was on a
BG/P and so built using the front-end compiler with the compute-node
headers (which was a messy situation).

The autoconf for VT uses a macro ACVT_PLATFORM, located in
    openmpi-1.4.3rc1/ompi/contrib/vt/vt/m4/acinclude.pform.m4
    openmpi-1.5rc5/ompi/contrib/vt/vt/config/m4/acinclude.pform.m4

In 1.4.3rc4, that macro includes the following logic run if --platform
is not specified:

                        linux*)
                                AS_IF([test "$host_cpu" = "ia64" -a -f
/etc/sgi-release],
                                [PLATFORM=altix],
                                [AS_IF([test "$host_cpu" = "powerpc64"
-a -d /bgl/BlueLight],
                                 [PLATFORM=bgl],
                                 [AS_IF([test "$host_cpu" = "x86_64" -a
-d /opt/xt-boot],
                                  [PLATFORM=crayxt],
                                  [PLATFORM=linux])])])
                                ;;

In 1.5rc5 that has expanded to detect more platforms, including the BG/P
where I was working:

                case $host_os in
                        linux*)
                                AS_IF([test "$host_cpu" = "ia64" -a -f
/etc/sgi-release],
                                [PLATFORM=altix],
                                [AS_IF([test "$host_cpu" = "powerpc64"
-a -d /bgl/BlueLight],
                                 [PLATFORM=bgl],
                                 [AS_IF([test "$host_cpu" = "powerpc64"
-a -d /bgsys],
                                  [PLATFORM=bgp],
                                  [AS_IF([test "$host_cpu" = "x86_64" -a
-d /opt/xt-boot],
                                   [PLATFORM=crayxt],
                                   [AS_IF([test "$host_cpu" = "mips64"
-a -d /opt/sicortex],
                                    [PLATFORM=sicortex],
                                    [PLATFORM=linux])])])])])
                                ;;

So the issue I have is that if building on the front-end for any of
these specialized systems, I will get a VT build for the "back-end"
unless I explicitly pass --platform=linux. By itself that sounds OK,
though something about this in ompi/contrib/vt/vt/INSTALL would be nice.

The NEXT problem comes from the fact that Open MPI's top-level configure
has the OMPI_LOAD_PLATFORM macro which expects
--with-platform=<filename>. Thus there appears to be a conflict between
the VT INSTALL documentation and the OMPI configure script.

I am not a newbie, so I DID find the desired solution:
--with-contrib-vt-flags=--platform=linux
However, the only documentation I could find for --with-contrib-vt-flags
in the source tree (as in "grep -R with-contrib-vt-flags") is the output
of "configure --help". I did eventually also find the related FAQ
entry: http://www.open-mpi.org/faq/?category=vampirtrace#vt_options
but that was only AFTER I knew of the problem passing --platform.

So, 3 requests of the VT folks:

1) Document the fact that compilation on a "front-end" of various
systems (Altix, BGP, BGL, SiCortex and CrayXT) will default to building
for the "back-end" system if one doesn't explicitly set platform=linux.
This would be good in the VT INSTALL, and in the VT-related FAQ page for
OpenMPI.

2) Document --with-contrib-vt-flags in the Open MPI README, the VT
INSTALL, or in both places.

3) Consider for the BGL, BGP and CrayXT cases checking in ACVT_PLATFORM
whether back-end compiler is being used. I know that is not possible
for the Altix and SiCortex.

-Paul

-- 
Paul H. Hargrove                          PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900