[mvapich-discuss] Patch to mvapich spec file to improve performance
when using the QLogic PSM interface
Mike Heinz
michael.heinz at qlogic.com
Wed Nov 30 12:45:59 EST 2011
Hey,
This patch to the spec file changes the compile options when building against the QLogic PSM library instead of verbs, I hope you find it useful:
Index: mvapich.spec
===================================================================
RCS file: /cvs/vendor/OFA/Ofed/mvapich/mvapich.spec,v
retrieving revision 1.1.1.9
retrieving revision 1.34
diff -w -u -d -r1.1.1.9 -r1.34
--- mvapich.spec 29 Apr 2010 21:11:46 -0000 1.1.1.9
+++ mvapich.spec 15 Nov 2011 17:40:17 -0000 1.34
@@ -245,7 +245,11 @@
IB_INCLUDE=%{openib_prefix}/include
IB_LIB=%{openib_prefix}/lib${BIT}
+if [ "%{mpi_device}" == "ch_psm" ] ; then
+export CFLAGS="$CFLAGS $OPTIMIZATION_FLAG -g -D_GNU_SOURCE -DCH_PSM -D_AFFINITY_ -D_SMP_ -DXRC $ARCH_NAME -I$IB_INCLUDE"
+else
export CFLAGS="$CFLAGS $OPTIMIZATION_FLAG -g -D_GNU_SOURCE -DCH_GEN2 -D_AFFINITY_ -DMEMORY_SCALE -D_SMP_ -D_SMP_RNDV_ -DVIADEV_RPUT_SUPPORT -DEARLY_SEND_COMPLETION -DXRC $ARCH_NAME -I$IB_INCLUDE"
+fi
# Mvapich configure is not functional, so I must to add "manual check" for LINK LAYER defenition
if ( grep IBV_LINK_LAYER_ETHERNET %{openib_prefix}/include/infiniband/verbs.h &> /dev/null ) ; then
@@ -257,11 +261,19 @@
export MPE_CFLAGS
export LDFLAGS
export CXXFLAGS="$CXXFLAGS"
+if [ "%{mpi_device}" == "ch_psm" ] ; then
+export FFLAGS="$FFLAGS $EXTRA_CFLAG"
+else
export FFLAGS="$FFLAGS -L$IB_LIB $EXTRA_CFLAG"
+fi
export F90FLAGS="$F90FLAGS $EXTRA_CFLAG"
export CONFIG_FLAGS
export MPIRUN_CFLAGS="$MPIRUN_CFLAGS -DPARAM_GLOBAL=\\\"%{_prefix}/etc/$conffile\\\" -DLD_LIBRARY_PATH_MPI=\\\"%{_prefix}/lib/shared\\\" -DMPI_PREFIX=\\\"%{_prefix}/\\\" $DEF_BUILDID"
+if [ "%{mpi_device}" == "ch_psm" ] ; then
+./configure --enable-sharedlib --with-device=%{mpi_device} --with-arch=LINUX --prefix=$RPM_BUILD_ROOT%{_prefix} $CONFIG_ENABLE_F77 $CONFIG_ENABLE_F90 $COMPILER_CONFIG -lib="-L$IB_LIB -lpsm_infinipath -libverbs -libumad -lpthread $EXTRA_CFLAG" $MPE_FLAGS $CONFIG_FLAGS
+else
./configure --enable-sharedlib --with-device=%{mpi_device} --with-arch=LINUX --prefix=$RPM_BUILD_ROOT%{_prefix} $CONFIG_ENABLE_F77 $CONFIG_ENABLE_F90 $COMPILER_CONFIG -lib="-L$IB_LIB -libverbs -libumad -lpthread $EXTRA_CFLAG" $MPE_FLAGS $CONFIG_FLAGS
+fi
%{__make}
#############################################################################
This message and any attached documents contain information from QLogic Corporation or its wholly-owned subsidiaries that may be confidential. If you are not the intended recipient, you may not read, copy, distribute, or use this information. If you have received this transmission in error, please notify the sender immediately by reply e-mail and then delete this message.
More information about the mvapich-discuss
mailing list