[mpich-discuss] Duplicated include paths and optimization

Yauheni Zelenko zelenko at cadence.com
Tue Apr 26 12:58:46 CDT 2011


Hi!

I looked into verbose output of MPICH2 compilation (for MVAPICH2 build debugging) and I found many duplicated include paths like:

/grid/common/pkgs/gcc/v4.4.4/bin/gcc -DHAVE_CONFIG_H -I. -I./include  -I./include -I./../../mpl/include -I./../../mpl/include -I./tools/bind -I./tools/bind/plpa/plpa/src/libplpa -I./tools/bind/plpa/plpa/src/libplpa  -I./tools/bootstrap/include -I./tools/bootstrap/include -I./tools/bootstrap/utils -I./tools/ckpoint -I./tools/demux -I./tools/debugger -I./tools/ftb -I./pm/include -I./pm/utils -I./ui/include -I./ui/utils -I/home/zelenko/Installs/mpich2-test/src/src/mpl/include -I/home/zelenko/Installs/mpich2-test/src/src/mpl/include -I/home/zelenko/Installs/mpich2-test/src/src/openpa/src -I/home/zelenko/Installs/mpich2-test/src/src/openpa/src -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/common/datatype -I/home/zelenko/Installs/mpich2-test/src/src/mpid/common/datatype -I/home/zelenko/Installs/mpich2-test/src/src/mpid/common/locks -I/home/zelenko/Installs/mpich2-test/src/src/mpid/common/locks -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/nemesis/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/nemesis/include -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/nemesis/utils/monitor -I/home/zelenko/Installs/mpich2-test/src/src/mpid/ch3/channels/nemesis/nemesis/utils/monitor -I/home/zelenko/Installs/mpich2-test/src/src/util/wrappers -I/home/zelenko/Installs/mpich2-test/src/src/util/wrappers  -m32 -fPIC -O2 -Wall -Wextra -Wno-missing-field-initializers -Wstrict-prototypes -Wmissing-prototypes -DGCC_WALL -Wno-unused-parameter -Wno-unused-label -Wshadow -Wmissing-declarations -Wno-long-long -Wfloat-equal -Wundef -Wno-endif-labels -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-sign-compare -Wold-style-definition -Wno-multichar -Wno-deprecated-declarations -Wpacked -Wnested-externs -Winvalid-pch -Wno-pointer-sign -Wvariadic-macros -Wno-format-zero-length -Wno-type-limits -D_POSIX_C_SOURCE=199506L -std=c89 -Wdeclaration-after-statement -O3  -g -MT utils.o -MD -MP -MF .deps/utils.Tpo -c -o utils.o `test -f './ui/mpich/utils.c' || echo './'`./ui/mpich/utils.c

I'm not sure it's easy to fix, but verbose output will be much more readable after removing duplicates.

Additionally optimization level looks dependent on both --enable-strict and --enable-fast. Probably will be good idea to control optimization level in one place.

Just for reference, my configuration options:

set InstallDir=${PWD}/../install

./configure --prefix=${InstallDir}                                      \
        --with-pm=hydra --with-device=ch3:nemesis                       \
        --disable-chekpointing                                          \
        --enable-strict --enable-fast=O3                                \
        --disable-f77 --disable-fc                                      \
        CC=/grid/common/pkgs/gcc/v4.4.4/bin/gcc CFLAGS="-m32 -fPIC"     \
        CPP=/grid/common/pkgs/gcc/v4.4.4/bin/cpp                        \
        CXX=/grid/common/pkgs/gcc/v4.4.4/bin/g++ CXXFLAGS="-m32 -fPIC"  \
        CXXCPP=/grid/common/pkgs/gcc/v4.4.4/bin/cpp

Eugene.


More information about the mpich-discuss mailing list