TEST_NODES=2 TESTLOG=`pwd`/.test-results TEST_LINE=++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ AMMPI_RUNCMD_EXP=\ TEST_RUN_P=`echo "$$TEST_RUN" | sed 's/ .*$$//'` \ TEST_RUN_A=`echo "$$TEST_RUN" | sed 's/^[^ ]* //'` \ TEST_RUN_D=`pwd` \ TEST_DOIT=`echo $(AMMPI_RUNCMD) | sed 's/%N/$(TEST_NODES)/;s/%M/$(TEST_NODES)/;s@%C@'"$$TEST_RUN"'@;s@%P@'"$$TEST_RUN_P"'@;s@%A@'"$$TEST_RUN_A"'@;s@%D@'"$$TEST_RUN_D"'@;s@%H@'"$${GASNET_NODEFILE:-$$PBS_NODEFILE}"'@;s/%V//'` TEST_RUNCMD= ; $(AMMPI_RUNCMD_EXP) ; \ testname=`basename $$TEST_RUN_P` ; \ faildesc="ammpi/$$testname" ; \ if test -x "$$TEST_RUN_P" ; then \ echo " **** $$testname **** "; \ echo $$TEST_DOIT ; \ ( eval $$TEST_DOIT || echo "ERROR: Test exited with failure code=$$?" 2>&1 ) | tee .test-output ; \ failure=`$(PERL) -ne 'print if (/ERROR/ || /fatal signal/);' .test-output` ; \ if test "$$failure" != "" ; then \ echo " " >> $(TESTLOG) ; \ echo " *-* $$faildesc *-*" >> $(TESTLOG) ; \ echo " " >> $(TESTLOG) ; \ echo "$$failure" >> $(TESTLOG) ; \ fi ; \ rm -f .test-output ; \ echo $(TEST_LINE) ; \ fi TEST_ITERS=100 TEST_MODE=P TEST_DEPTH=32 TEST_DUPLEX=H AMMPI_NETWORKDEPTH=$(TEST_DEPTH) run-tests: tests @rm -f .test-results ; touch $(TESTLOG) @echo $(TEST_LINE) @echo Running AMMPI tests... @echo If this fails to spawn a job, you may need to re-run with a @echo command like: $(MAKE) run-tests AMMPI_RUNCMD=\"$(AMMPI_RUNCMD)\" @echo $(TEST_LINE) @TEST_RUN="./testping $(TEST_ITERS) $(TEST_MODE)" $(TEST_RUNCMD) @TEST_RUN="./testlatency $(TEST_ITERS) $(TEST_MODE)" $(TEST_RUNCMD) @TEST_RUN="./testlatencyM $(TEST_ITERS) $(TEST_MODE) 64" $(TEST_RUNCMD) @TEST_RUN="./testbulk $(TEST_ITERS) 1048576 $(TEST_MODE) $(TEST_DUPLEX)" $(TEST_RUNCMD) @TEST_RUN="./testam $(TEST_ITERS) $(TEST_MODE)" $(TEST_RUNCMD) @TEST_RUN="./testbounce $(TEST_ITERS) $(TEST_MODE)" $(TEST_RUNCMD) @TEST_RUN="./testreduce " $(TEST_RUNCMD) @TEST_RUN="./testgetput $(TEST_ITERS)" $(TEST_RUNCMD) @TEST_RUN="./testreadwrite $(TEST_ITERS)" $(TEST_RUNCMD) @echo TESTS COMPLETE # make a distribution amxdist: @sh -x -c ' \ VERSION=`grep "#define AMMPI_LIBRARY_VERSION" $(srcdir)/ammpi.h | head -1 | awk '"'"'{ print $$3 }'"'"'` \ export VERSION ; \ echo "+++ Building distribution for AMMPI version $${VERSION} +++" && \ rm -Rf ammpi$${VERSION}.tar.gz ammpi$${VERSION} && \ mkdir ammpi$${VERSION} && \ cp $(srcdir)/Makefile* $(srcdir)/*.txt $(srcdir)/*.[ch]* $(testdir)/*.[ch]* \ $(altincdir)/portable_inttypes.h $(altincdir)/portable_platform.h \ ammpi$${VERSION} && \ rm -f ammpi$${VERSION}/Makefile.in ammpi$${VERSION}/Makefile.titanium && \ mv ammpi$${VERSION}/Makefile.standalone ammpi$${VERSION}/Makefile && \ tar -cvhf ammpi$${VERSION}.tar ammpi$${VERSION} && gzip -9 ammpi$${VERSION}.tar && \ rm -Rf ammpi$${VERSION} && \ echo "+++ ammpi$${VERSION}.tar.gz is ready for distribution +++" \ '