From 3dfcbfa1a4bfa39344e8d945ed1bd697c4c9fe96 Mon Sep 17 00:00:00 2001 From: Siddhesh Poyarekar Date: Fri, 2 Feb 2018 09:55:45 +0530 Subject: benchtests: Reallocate buffers for every test run Keeping the buffers the same across test runs gives later invocations the advantage since they access cached data. Reallocate so that all test runs are on equal grounds. * benchtests/bench-memcmp.c (do_test): Call realloc_buf for every test run. --- benchtests/bench-memcmp.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) (limited to 'benchtests/bench-memcmp.c') diff --git a/benchtests/bench-memcmp.c b/benchtests/bench-memcmp.c index 38cbdf8d5a..c7255a5b0e 100644 --- a/benchtests/bench-memcmp.c +++ b/benchtests/bench-memcmp.c @@ -110,20 +110,23 @@ do_test (size_t align1, size_t align2, size_t len, int exp_result) if (align2 + (len + 1) * CHARBYTES >= page_size) return; - s1 = (CHAR *) (buf1 + align1); - s2 = (CHAR *) (buf2 + align2); + printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2); - for (i = 0; i < len; i++) - s1[i] = s2[i] = 1 + (23 << ((CHARBYTES - 1) * 8)) * i % CHAR__MAX; + FOR_EACH_IMPL (impl, 0) + { + s1 = (CHAR *) (buf1 + align1); + s2 = (CHAR *) (buf2 + align2); - s1[len] = align1; - s2[len] = align2; - s2[len - 1] -= exp_result; + for (i = 0; i < len; i++) + s1[i] = s2[i] = 1 + (23 << ((CHARBYTES - 1) * 8)) * i % CHAR__MAX; - printf ("Length %4zd, alignment %2zd/%2zd:", len, align1, align2); + s1[len] = align1; + s2[len] = align2; + s2[len - 1] -= exp_result; - FOR_EACH_IMPL (impl, 0) - do_one_test (impl, s1, s2, len, exp_result); + do_one_test (impl, s1, s2, len, exp_result); + realloc_bufs (); + } putchar ('\n'); } -- cgit 1.4.1