On Wed, 2009-01-28 at 09:38 -0600, Steve Wise wrote: > Doug Ledford wrote: > > On Thu, 2009-01-22 at 16:07 -0600, Steve Wise wrote: > > > >> I understand the desire to not release new features in a point release, > >> but at the same time, these features are ready or near ready now. And > >> prior features have definitely been released in point releases. > >> (connectX for example). Another key point is that these features do not > >> need the kernel rebase that will happen with ofed-1.5, which will take > >> months... > >> > >> Just more thoughts. :) > >> > > > > I'm a bit late to this discussion, and you may have already talked about > > this in the ewg teleconference, but I want to throw in my thoughts. > > > > As far as new features goes, adding ConnectX support in a point release > > is a huge difference from switching OpenMPI releases from a stable > > series to the .0 release of the next series. In the case of ConnectX, > > it was "just another driver" and its addition should have had almost 0 > > impact on anyone not using that driver. On the other hand, switching > > OpenMPI versions changes the OpenMPI stack for everyone and has the > > potential to create wide spread regressions should something go wrong. > > So the risk factor comparison between these two actions simply isn't > > valid. One doesn't risk regressions for non-ConnectX users, one risks > > regressions for everyone using OpenSM. > > > > > Good points. > > One way to alleviate this is to ship both 1.2.8 and 1.3 in ofed-1.4.1 > and mark 1.3 as "experimental". Then remove 1.2.8 in ofed-1.5 and make > 1.3.x the production version for ofed-1.5.
That's certainly doable IMO. > I suggested this in the last conf call but folks didn't like the thought > of testing both. But perhaps marking it "experimental" resolves this > issue? So the iWARP vendors will test 1.3 and little to no testing is > required for 1.2.8 since it has been qualified with ofed-1.4 QA. What about adding some automated tests using mpitests? Both automated build tests (which does some amount of testing of the mpicc et. al. wrappers) and run tests (which would require a slightly more sophisticated test harness in that it at least needs to know about machines to run the tests over, etc)? In fact, while I'm at it, let me attach my Makefile patch I use against the mpitests-3.1 package in OFED 1.4. It greatly simplifies the make environment and does something that I think the mpitests package *should* do but currently doesn't without my patch: test the mpicc wrappers. The current Makefiles set all sorts of MPIHOME and CC and other variables...these are all things that mpicc *should* take care of for you and *not* using plain mpicc in the mpitests Makefiles simply ignores one aspect of the testing that is perfectly valid and means you have to validate your mpi build environment separately. I would suggest that this patch, or something like it, be applied to the build environment for mpitests. Is the person responsible for that tarball on these lists? -- Doug Ledford <[email protected]> GPG KeyID: CFBFF194 http://people.redhat.com/dledford Infiniband specific RPMs available at http://people.redhat.com/dledford/Infiniband
--- mpitests-3.0/IMB-3.0/src/Makefile.make 2007-11-22 09:18:07.000000000 -0500
+++ mpitests-3.0/IMB-3.0/src/Makefile 2008-09-18 14:08:56.000000000 -0400
@@ -1,21 +1,9 @@
# Enter root directory of mpich install
-MPI_HOME=$(MPIHOME)
-
-MPICC=$(shell find ${MPI_HOME} -name mpicc -print)
-
-NULL_STRING :=
-ifneq (,$(findstring /bin/mpicc,${MPICC}))
-MPI_INCLUDE := -I${MPI_HOME}/include
-else
-$(error Variable MPI_HOME="${MPI_HOME}" does not seem to contain a valid mpicc)
-endif
-LIB_PATH =
-LIBS =
-CC = ${MPI_HOME}/bin/mpicc
+CC = mpicc
OPTFLAGS = -O3
CLINKER = ${CC}
LDFLAGS =
CPPFLAGS =
-export MPI_INCLUDE CC LIB_PATH LIBS OPTFLAGS CLINKER LDFLAGS CPPFLAGS
+export CC OPTFLAGS CLINKER LDFLAGS CPPFLAGS
include Makefile.base
--- mpitests-3.0/IMB-3.0/src/Makefile.base.make 2007-11-22 09:18:07.000000000 -0500
+++ mpitests-3.0/IMB-3.0/src/Makefile.base 2008-09-18 14:08:56.000000000 -0400
@@ -59,6 +59,14 @@ EXT : $(OBJEXT)
IO: $(OBJIO)
$(CLINKER) $(LDFLAGS) -o IMB-IO $(OBJIO) $(LIB_PATH) $(LIBS)
+install:
+ mkdir -p ${DESTDIR}; \
+ for benchmark in IMB-MPI1 IMB-EXT IMB-IO; do \
+ if [ -e $$benchmark ]; then \
+ cp $$benchmark ${DESTDIR}${INSTALL_DIR}/mpitests-$$benchmark; \
+ fi; \
+ done
+
# Make sure that we remove executables for specific architectures
clean:
/bin/rm -f *.o *~ PI* core IMB-IO IMB-EXT IMB-MPI1 exe_io exe_ext exe_mpi1
--- mpitests-3.0/presta-1.4.0/Makefile.make 2006-08-01 04:25:21.000000000 -0400
+++ mpitests-3.0/presta-1.4.0/Makefile 2008-09-18 14:52:46.000000000 -0400
@@ -6,14 +6,7 @@
#
# Default values
-MPIHOME=
-CC=$(MPIHOME)/bin/mpicc
DISTRIB=
-STACK_PREFIX=
-LIBS= -lm -L$(MPIHOME)/lib/shared -L$(MPIHOME)/lib -L$(DISTRIB)/$(STACK_PREFIX)/lib64 -L$(DISTRIB)/$(STACK_PREFIX)/lib
-CFLAGS= -O2 -g -I$(MPIHOME)/include
-LDFLAGS=
-INCDIR=
# Setting for using gcc for lint
LINT=
@@ -45,7 +38,12 @@ glob: glob.o util.o
$(CC) $(CFLAGS) $(LDFLAGS) -o $@ glob.o util.o $(LIBS)
globalop: globalop.o
- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ globalop.o $(LIBS)
+ $(CC) $(CFLAGS) $(LDFLAGS) -lm -o $@ globalop.o $(LIBS)
+
+install: $(EXES)
+ for i in $(EXES); do \
+ install -m 0755 $$i $(DESTDIR)$(INSTALL_DIR)/mpitests-$$i ; \
+ done
clean:
rm -f $(EXES) *.o
--- mpitests-3.0/Makefile.make 2007-11-22 12:38:49.000000000 -0500
+++ mpitests-3.0/Makefile 2008-09-18 14:53:45.000000000 -0400
@@ -1,44 +1,32 @@
-CFLAGS =
-MPIHOME=./
-CC =
-LIBS =
-INCLUDES =
-OBJS =
-SRCS =
-INSTALL_DIR=tests/
-INSTALL_PMB=IMB-3.0
-INSTALL_PRESTA=presta-1.4.0
-INSTALL_OSU=osu_benchmarks-3.0
+CC = mpicc
+PMB=IMB-3.0
+PRESTA=presta-1.4.0
+OSU=osu_benchmarks-3.0
+
all: pmb osu presta
install: install-pmb install-presta install-osu
+clean: clean-pmb clean-presta clean-osu
# The variable $@ has the value of the target.
pmb:
- cd $(PWD)/$(INSTALL_PMB)/src && make MPIHOME=$(MPIHOME)
+ cd $(PMB)/src && make all
osu:
- cd $(PWD)/$(INSTALL_OSU) && make MPIHOME=$(MPIHOME)
+ cd $(OSU) && make all
+osu-mpi1:
+ cd $(OSU) && make mpi1
presta:
- cd $(PWD)/$(INSTALL_PRESTA) && make MPIHOME=$(MPIHOME)
+ cd $(PRESTA) && make all
+
clean-pmb:
- cd $(PWD)/$(INSTALL_PMB)/src && make MPIHOME=$(MPIHOME) clean
+ cd $(PMB)/src && make clean
clean-osu:
- cd $(PWD)/$(INSTALL_OSU) && make MPIHOME=$(MPIHOME) clean
+ cd $(OSU) && make clean
clean-presta:
- cd $(PWD)/$(INSTALL_PRESTA) && make MPIHOME=$(MPIHOME) clean
-clean: clean-pmb clean-presta clean-osu
- rm -rf $(MPIHOME)/$(INSTALL_DIR)
+ cd $(PRESTA) && make clean
+
install-pmb:
- mkdir -p $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PMB)
- cp -f $(INSTALL_PMB)/src/IMB-MPI1 $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PMB)
+ cd $(PMB)/src && make install
install-presta:
- mkdir -p $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PRESTA)
- cp -f $(INSTALL_PRESTA)/com $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PRESTA)
- cp -f $(INSTALL_PRESTA)/glob $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PRESTA)
- cp -f $(INSTALL_PRESTA)/globalop $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_PRESTA)
+ cd $(PRESTA) && make install
install-osu:
- mkdir -p $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
- cp -f $(INSTALL_OSU)/osu_bw $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
- cp -f $(INSTALL_OSU)/osu_bibw $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
- cp -f $(INSTALL_OSU)/osu_bcast $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
- cp -f $(INSTALL_OSU)/osu_latency $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
- cp -f $(INSTALL_OSU)/osu_mbw_mr $(MPIHOME)/$(INSTALL_DIR)/$(INSTALL_OSU)
+ cd $(OSU) && make install
--- mpitests-3.0/osu_benchmarks-3.0/Makefile.make 2007-11-22 09:18:07.000000000 -0500
+++ mpitests-3.0/osu_benchmarks-3.0/Makefile 2008-09-18 14:08:56.000000000 -0400
@@ -1,6 +1,6 @@
-CC = ${MPIHOME}/bin/mpicc
+CC = mpicc
MPI1_BENCHMARKS = osu_bcast osu_bibw osu_bw osu_latency osu_mbw_mr
-MPI2_BENCHMARKS = osu_acc_latency osu_get_bw osu_get_latency osu_latency_mt\
+MPI2_BENCHMARKS = osu_get_bw osu_get_latency osu_latency_mt\
osu_put_bibw osu_put_bw osu_put_latency
ALL_BENCHMARKS = ${MPI1_BENCHMARKS} ${MPI2_BENCHMARKS}
@@ -12,10 +12,10 @@ mpi2: ${ALL_BENCHMARKS}
all: ${ALL_BENCHMARKS}
install:
- mkdir -p ${PREFIX}/osu_benchmarks &&\
+ mkdir -p ${DESTDIR}${INSTALL_DIR} &&\
for benchmark in ${ALL_BENCHMARKS}; do\
if [ -e $$benchmark ]; then\
- cp $$benchmark ${PREFIX}/osu_benchmarks/;\
+ cp $$benchmark ${DESTDIR}${INSTALL_DIR}/mpitests-$$benchmark;\
fi; done
clean:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ general mailing list [email protected] http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general
