Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] compiler_args in wrapper-data.txt files with Portland Group Compilers
From: Brian W. Barrett (brbarret_at_[hidden])
Date: 2009-02-24 11:35:23


Hi Wayne -

Sorry for the delay. I'm the author of that code, and am currently trying
to finish my dissertation, so I've been a bit behind.

Anyway, at present, the compiler_args field only works on a single token.
So you can't have something looking for -tp p7. I thought about how to do
this, but never got a chance to add it to the code base. I'm not sure
when/if that feature will be added. If you have some time, the code lives
in opal/tools/wrappers/opal_wrapper.c, if you want to have a look.

Good luck,

Brian

On Mon, 23 Feb 2009, Wayne Gilmore wrote:

> I sent this to the users mailing list buy maybe this is a better place for
> it. Can anyone help with this??
>
> I'm trying to use the compiler_args field in the wrappers script to deal
> with 32 bit compiles on our cluster.
>
> I'm using Portland Group compilers and use the following for 32 bit
> builds: -tp p7
>
> I've created a separate stanza in the wrapper but I am not able to use
> the whole option "-tp p7" for the compiler_args. It only works if I do
> compiler_args=p7
>
> Is there a way to provide compiler_args with arguments that contain a
> space?
>
> This would eliminate cases where 'p7' would appear elsewhere in the
> compile line and be falsely recognized as a 32 bit build.
>
> Here is some additional information from my build:
>
> For a regular 64 bit build:
> (no problems here, works fine)
>
> katana:~ % mpicc --showme
> pgcc -D_REENTRANT
> -I/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include
> -Wl,-rpath
> -Wl,/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib
> -L/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib
> -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil
> -lpthread -ldl
>
> For a 32 bit build when compiler_args is set to "-tp p7" in the wrapper:
> (note that in this case is does not pick up the lib32 and include32 dirs)
>
> katana:share/openmpi % mpicc -tp p7 --showme
> pgcc -D_REENTRANT
> -I/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include
> -tp p7 -Wl,-rpath
> -Wl,/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib
> -L/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib
> -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil
> -lpthread -ldl
>
> For a 32 bit build when compiler_args is set to "p7" in the wrapper
> (note that in this case it does pick up the lib32 and include32 dirs)
>
> katana:share/openmpi % mpicc -tp p7 --showme
> pgcc -D_REENTRANT
> -I/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include32
>
> -I/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include32
>
> -tp p7 -Wl,-rpath
> -Wl,/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib32
> -L/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib32
> -lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl -lutil
> -lpthread -ldl
>
> Here's the mpicc-wrapper-data.txt file that I am using: (with
> compiler_args set to "p7" only. This works, but if I set it to "-tp p7"
> it fails to pick up the info in the stanza)
>
> compiler_args=
> project=Open MPI
> project_short=OMPI
> version=1.3
> language=C
> compiler_env=CC
> compiler_flags_env=CFLAGS
> compiler=pgcc
> extra_includes=
> preprocessor_flags=-D_REENTRANT
> compiler_flags=
> linker_flags=-Wl,-rpath
> -Wl,/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib
> libs=-lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl
> -lutil -lpthread -ldl
> required_file=
> includedir=${includedir}
> libdir=${libdir}
>
> compiler_args=p7
> project=Open MPI
> project_short=OMPI
> version=1.3
> language=C
> compiler_env=CC
> compiler_flags_env=CFLAGS
> compiler=pgcc
> extra_includes=
> preprocessor_flags=-D_REENTRANT
> -I/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include32
> compiler_flags=
> linker_flags=-Wl,-rpath
> -Wl,/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib32
> libs=-lmpi -lopen-rte -lopen-pal -ldl -Wl,--export-dynamic -lnsl
> -lutil -lpthread -ldl
> required_file=
> includedir=/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/include32
> libdir=/project/scv/waygil/local/IT/ofedmpi-1.2.5.5/mpi/pgi/openmpi-1.3/lib32
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>