# ---------------------------------------------------------------------------- #
# Script that generates a summary from the output of the tests series
benchabinit = $(BOURNE_SHELL) ../../Scripts/benchabinit.sh
# Test input files using the chkinabi script
tests_input:
$(MAKE) tests_fast dirname=chkinabi
$(MAKE) tests_v1 dirname=chkinabi
$(MAKE) tests_v2 dirname=chkinabi
$(MAKE) tests_v3 dirname=chkinabi
$(MAKE) tests_v4 dirname=chkinabi
$(MAKE) tests_v5 dirname=chkinabi
$(MAKE) tests_tutorial dirname=chkinabi
$(MAKE) tests_physics dirname=chkinabi
# Perform all sequential tests, except cpu (test accuracy)
tests_acc:
$(MAKE) tests_fast dirname=test
$(MAKE) tests_v1 dirname=test start=01 stop=make
$(MAKE) tests_v2 dirname=test
$(MAKE) tests_v3 dirname=test
$(MAKE) tests_v4 dirname=test start=01 stop=make
$(MAKE) tests_v5 dirname=test
$(MAKE) tests_tutorial dirname=test
$(MAKE) tests_paral paral_host=test paral_mode=seq
# Perform all sequential tests, except cpu (test accuracy)
# 4 threads at once. Start with the longest of test series.
tests_acc4:
$(MAKE) tests_tutorial dirname=test1 start=11 stop=gw_9 &
$(MAKE) tests_tutorial dirname=test2 start=nlo_1 stop=tddft_1 &
$(MAKE) tests_v4 dirname=test start=01 stop=make &
$(MAKE) tests_fast dirname=test
$(MAKE) tests_v1 dirname=test start=01 stop=make
$(MAKE) tests_v2 dirname=test
$(MAKE) tests_v3 dirname=test
$(MAKE) tests_v5 dirname=test
$(MAKE) tests_paral paral_host=test paral_mode=seq
# Perform all sequential tests, for benchmarks
tests_bench: tests_acc
$(MAKE) tests_cpu dirname=test
cd cpu/,,test* && $(benchabinit) > summary
rm -rf summary_tests.tar.gz
tar cvf summary_tests.tar \
fast/,,test*/fl* fast/,,test*/*out* \
v*/,,test*/fl* v*/,,test*/*out* \
tutorial/,,test*/fl* tutorial/,,test*/*out* \
paral/,,test*/fl* paral/,,test*/*out* \
cpu/,,test*/*/*diff* cpu/,,test*/*/*report* cpu/,,test*/summary
gzip --best summary_tests.tar
# Minimal set of tests
tests_min:
$(MAKE) tests_v1 dirname=test start=01 stop=make
$(MAKE) tests_v2 dirname=test
$(MAKE) tests_v3 dirname=test
$(MAKE) tests_v4 dirname=test start=01 stop=make
$(MAKE) tests_v5 dirname=test
$(MAKE) tests_fast dirname=test
$(MAKE) tests_paral paral_host=test paral_mode=seq
# Minimal set of tests, 4 threads at once
tests_min4:
$(MAKE) tests_v2 dirname=test &
$(MAKE) tests_v3 dirname=test &
$(MAKE) tests_v4 dirname=test start=01 stop=make &
$(MAKE) tests_v1 dirname=test start=01 stop=make
$(MAKE) tests_v5 dirname=test
$(MAKE) tests_fast dirname=test
$(MAKE) tests_paral paral_host=test paral_mode=seq
# All sequential tests, except cpu and paral, using abinip
# The proper command line has to be defined before
# (FIXME: will definitively not work with the following coding)
tests_abinip:
$(MAKE) tests_fast dirname=paral
$(MAKE) tests_v1 dirname=paral start=01 stop=make
$(MAKE) tests_v2 dirname=paral
$(MAKE) tests_v3 dirname=paral
$(MAKE) tests_v4 dirname=paral start=01 stop=make
$(MAKE) tests_v5 dirname=paral
$(MAKE) tests_tutorial dirname=paral
# Minimal set of sequential tests, guaranteeing that a version runs correctly
# Produces a summary file as well
# Suitable for developers
tests_dev:
$(MAKE) tests_fast dirname=test
$(MAKE) tests_v1 dirname=test start=01 stop=make
$(MAKE) tests_v2 dirname=test
$(MAKE) tests_v3 dirname=test
$(MAKE) tests_v4 dirname=test start=01 stop=make
$(MAKE) tests_v5 dirname=test
$(MAKE) tests_paral paral_host=test paral_mode=seq
rm -rf summary_tests.tar.gz
tar cvf summary_tests.tar \
fast/,,test*/*report* fast/,,test*/*out* \
v*/,,test*/*report* v*/,,test*/*out* \
paral/,,test*/*report* paral/,,test*/*out*
gzip --best summary_tests.tar
# Test the speed
tests_speed: $(tests_cpu_inps) $(psps_for_tests)
@if test ! -e cpu; then mkdir -p cpu; fi
$(run_standard_tests) test $(abinit_builddir)/src/main $(abinit_srcdir)/tests cpu A3 A3
$(run_standard_tests) test $(abinit_builddir)/src/main $(abinit_srcdir)/tests cpu B3 B3
cd cpu/,,test* && $(benchabinit) > ../../,summary_speed
# ---------------------------------------------------------------------------- #
dev help_dev:
@cat $(top_srcdir)/doc/help_make/help_make_tests_dev
# ---------------------------------------------------------------------------- #
syntax highlighted by Code2HTML, v. 0.9.1