From 9422b4cef9c3994417c01d1a0cb59ec2e8488dbe Mon Sep 17 00:00:00 2001 From: Birte Kristina Friesel Date: Fri, 20 Dec 2024 12:19:54 +0100 Subject: Add AVX512 read/write tests --- mbw.c | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 85 insertions(+), 13 deletions(-) (limited to 'mbw.c') diff --git a/mbw.c b/mbw.c index 5539608..f5673d9 100644 --- a/mbw.c +++ b/mbw.c @@ -41,7 +41,9 @@ #define TEST_AVX512 3 #define TEST_READ_PLAIN 4 #define TEST_WRITE_PLAIN 5 -#define MAX_TESTS 6 +#define TEST_READ_AVX512 6 +#define TEST_WRITE_AVX512 7 +#define MAX_TESTS 8 /* version number */ #define VERSION "1.5+smaug" @@ -345,8 +347,12 @@ void usage() #ifdef HAVE_AVX512 printf(" -t%d: AVX512 copy test\n", TEST_AVX512); #endif - printf(" -t%d: plain read test\n", TEST_READ_PLAIN); - printf(" -t%d: plain write test\n", TEST_WRITE_PLAIN); + printf(" -t%d: plain read test (sum)\n", TEST_READ_PLAIN); + printf(" -t%d: plain write test (const fill)\n", TEST_WRITE_PLAIN); +#ifdef HAVE_AVX512 + printf(" -t%d: AVX512 read test (sum)\n", TEST_READ_AVX512); + printf(" -t%d: AVX512 write test (const fill)\n", TEST_WRITE_AVX512); +#endif printf(" -b : block size in bytes for -t2 (default: %d)\n", DEFAULT_BLOCK_SIZE); printf(" -q: quiet (print statistics only)\n"); #ifdef NUMA @@ -426,15 +432,37 @@ void *thread_worker(void *arg) } else if(test_type==TEST_READ_PLAIN) { long tmp = 0; for(t=plain_start; t