diff --git a/raid/test/Makefile b/raid/test/Makefile index 756c6dec..0ae85be7 100644 --- a/raid/test/Makefile +++ b/raid/test/Makefile @@ -1,13 +1,25 @@ # # Test programs for the RAID library # -# selftest - Runs the same selftest and speedtest executed at the module startup. -# fulltest - Runs a more extensive test that checks all the built-in functions. -# speedtest - Runs a more complete speed test. -# invtest - Runs an extensive matrix inversion test of all the 377.342.351.231 -# possible square submatrices of the Cauchy matrix used. -# covtest - Runs a coverage test. -# sdecovtest - Runs a coverage test with the sde emulator. +# Primary Targets: +# all - Builds all test and utility binaries (fulltest, speedtest, selftest, invtest, mktables). +# clean - Removes all temporary object files, build artifacts, and coverage metadata. +# distclean - Runs clean and deletes all compiled test executables. +# +# Test & Diagnostic Binaries: +# selftest - Runs the same verification and speed tests executed at module initialization. +# speedtest - Runs a comprehensive performance/throughput benchmark suite. +# fulltest - Runs an exhaustive test suite verifying all built-in RAID functions. +# invtest - Runs an extensive matrix inversion test on all 377,342,351,231 +# possible square submatrices of the Cauchy matrix used. +# +# Test Automation & Emulation: +# test - Automated test runner that executes ./selftest, ./speedtest, and ./fulltest. +# covtest - Executes a code coverage test using lcov/genhtml to generate HTML reports. +# sdecovtest - Runs an extensive coverage test using the Intel SDE emulator across +# multiple CPU architectures (Prescott, Merom, Nehalem, Haswell, Skylake, Ice Lake). +# sde - Runs selftest, speedtest, and fulltest explicitly on the Ice Lake simulator. +# # MACHINE = $(shell uname -m) @@ -29,7 +41,7 @@ OBJS = raid.o check.o int.o intz.o x86.o x86z.o gfni.o tables.o memory.o test.o %.o: ../%.c $(CC) $(CFLAGS) -c -o $@ $< -all: fulltest speedtest selftest invtest mktables +all: fulltest speedtest selftest invtest mktables tables.c fulltest: $(OBJS) fulltest.o $(CC) $(CFLAGS) -o fulltest $^ @@ -49,14 +61,20 @@ mktables: mktables.o tables.c: mktables ./mktables > tables.c +# Use this target to run a complete test +test: + ./selftest + ./speedtest + ./fulltest + # Use this target to run a coverage test using lcov covtest: $(MAKE) clean $(MAKE) lcov_reset $(MAKE) COVERAGE=1 all - ./fulltest ./selftest ./speedtest + ./fulltest $(MAKE) lcov_capture $(MAKE) lcov_html @@ -79,9 +97,11 @@ sdecovtest: $(MAKE) lcov_capture $(MAKE) lcov_html +# Use this target to run a complete test on Ice Lake simulator sde: $(SDE) -icl -- ./selftest $(SDE) -icl -- ./speedtest + $(SDE) -icl -- ./fulltest lcov_reset: lcov --directory . -z