[mvapich-discuss] How do I build -O0?
Adam Moody
moody20 at llnl.gov
Tue Dec 1 19:07:43 EST 2009
Hi Pavan and Johnathan,
Thanks for the quick replies. I've tried each of your suggestions, but
I still ended up with the -g -O2 working its way into the build. One
method that does seem to work is to set CFLAGS="" and then set
MPICH2LIB_CFLAGS and company to "-g -O0", but this feels clumbsy. After
a number of tries, I still couldn't get the documented method of setting
--diable-fast or --enable-fast=O0 to work.
-Adam
The following to do the trick, but it feels sort of like a hack given
there is a documented way to do it:
#!/bin/bash
export PREFIX=`pwd`
export CC=gcc
export CXX=g++
export F77=gfortran
export F90=gfortran
export MPICH2LIB_CFLAGS="-g -O0"
export MPICH2LIB_CXXFLAGS="-g -O0"
export MPICH2LIB_FFLAGS="-g -O0"
export MPICH2LIB_F90FLAGS="-g -O0"
export CFLAGS=""
./configure \
--prefix=$PREFIX \
--enable-sharedlibs=gcc \
--enable-f77 --enable-f90 --enable-cxx \
--enable-error-checking=runtime --enable-error-messages=all
--enable-nmpi-as-mpi \
--enable-debuginfo \
--disable-fast --enable-g=dbg \
--with-pmi=slurm --with-pm=no \
--with-rdma=gen2 --with-ib-include=/usr/include
--with-ib-lib=/usr/lib64 \
--enable-registration-cache --enable-limic2 \
--enable-romio --with-file-system=lustre+nfs+ufs \
--disable-mpe --without-mpe
Pavan Balaji wrote:
>Use the --disable-fast configure option or --enable-fast=O0.
>
> -- Pavan
>
>On 12/01/2009 01:42 PM, Adam Moody wrote:
>
>
>>Hello MVAPICH team,
>>I'm trying to get a "-g -O0" build of MVAPICH2-1.4 so that I see correct
>>line numbers in the MPI source under a debugger like TotalView. I'm
>>using the following settings, which I think should work based on the
>>help info in the configure command:
>> #!/bin/bash
>> export PREFIX=`pwd`
>> export CC=gcc
>> export CXX=g++
>> export F77=gfortran
>> export F90=gfortran
>> export MPICH2LIB_CFLAGS="-g -O0"
>> export MPICH2LIB_CXXFLAGS="-g -O0"
>> export MPICH2LIB_FFLAGS="-g -O0"
>> export MPICH2LIB_F90FLAGS="-g -O0"
>> export CONFIG_FLAGS="--disable-fast --enable-g=dbg
>>--enable-error-checking=runtime --enable-error-messages=all
>>--enable-nmpi-as-mpi"
>> ./configure \
>> --prefix=$PREFIX \
>> --enable-sharedlibs=gcc \
>> --enable-f77 --enable-f90 --enable-cxx \
>> $CONFIG_FLAGS \
>> --enable-debuginfo \
>> --with-pmi=slurm --with-pm=no \
>> --with-rdma=gen2 --with-ib-include=/usr/include
>>--with-ib-lib=/usr/lib64 \
>> --enable-registration-cache --enable-limic2 \
>> --enable-romio --with-file-system=lustre+nfs+ufs \
>> --disable-mpe --without-mpe
>>
>>I'm building the MVAPICH2-1.4 tarball from:
>> http://*mvapich.cse.ohio-state.edu/download/mvapich2/mvapich2-1.4.tgz
>>
>>It seems to do the correct thing with --enable-g=dbg and
>>MPICH2LIB_CFLAGS as an extra "-g -g -O0" gets appended to the CFLAGS,
>>but there is this leading "-g -O2" that I can't get rid of (see below):
>>
>>=== configuring in channels/mrail
>>(/usr/global/tools/mpi/checkouts/llnl/mvapich2-1.4-r3536/mvapich2-1.4/src/mpid/ch3/channels/mrail)^M
>>
>>configure: running /bin/sh ./configure --disable-option-checking
>>'--prefix=/usr/global/tools/mpi/checkouts/llnl/mvapich2-1.4-r3536/mvapich2-1.4'
>>'--enable-sharedlibs=gcc' '--enable-f77' '--enable-f90' '--enable-cxx'
>>'--disable-fast' '--enable-g=dbg' '--enable-error-checking=runtime'
>>'--enable-error-messages=all' '--enable-nmpi-as-mpi'
>>'--enable-debuginfo' '--with-pmi=slurm' '--with-pm=no'
>>'--with-rdma=gen2' '--with-ib-include=/usr/include'
>>'--with-ib-lib=/usr/lib64' '--enable-registration-cache'
>>'--enable-limic2' '--enable-romio' '--with-file-system=lustre+nfs+ufs'
>>'--disable-mpe' '--without-mpe' 'CC=gcc' 'F77=gfortran' 'F90=gfortran'
>>'CXX=g++' 'MPICH2LIB_CFLAGS=-g -O0' 'MPICH2LIB_CXXFLAGS=-g -O0'
>>'MPICH2LIB_FFLAGS=-g -O0' 'MPICH2LIB_F90FLAGS=-g -O0'
>>'--enable-header-caching' 'CFLAGS=-g -O2 -g -g -O0' 'LIBS=-lpthread '
>>'CPPFLAGS=-I/usr/include ' --cache-file=/dev/null --srcdir=.
>>
>>I think I could perhaps set CFLAGS explicitly to "-g -O0", but this then
>>forces "-g -O0" into the MPI wrapper scripts like mpicc, which I don't
>>want. I'd just like the MPI library itself to build with -O0, not the
>>application code. Is there a way to do this? I can't seem to find the
>>right flag or environment variable.
>>Thanks,
>>-Adam
>>_______________________________________________
>>mvapich-discuss mailing list
>>mvapich-discuss at cse.ohio-state.edu
>>http://*mail.cse.ohio-state.edu/mailman/listinfo/mvapich-discuss
>>
>>
>
>
>
More information about the mvapich-discuss
mailing list