From 46ae07324b1cd50fbf8f37a076d6babcfca7c510 Mon Sep 17 00:00:00 2001 From: Wilco Dijkstra Date: Tue, 21 May 2019 15:19:06 +0100 Subject: Improve string benchtest timing Improve string benchtest timing. Many tests run for 0.01s which is way too short to give accurate results. Other tests take over 40 seconds which is way too long. Significantly increase the iterations of the short running tests. Reduce number of alignment variations in the long running memcpy walk tests so they take less than 5 seconds. As a result most tests take at least 0.1s and all finish within 5 seconds. * benchtests/bench-memcpy-random.c (do_one_test): Use medium iterations. * benchtests/bench-memcpy-walk.c (test_main): Reduce alignment tests. * benchtests/bench-memmem.c (do_one_test): Use small iterations. * benchtests/bench-memmove-walk.c (test_main): Reduce alignment tests. * benchtests/bench-memset-walk.c (test_main): Reduce alignment tests. * benchtests/bench-strcasestr.c (do_one_test): Use small iterations. * benchtests/bench-string.h (INNER_LOOP_ITERS): Increase iterations. (INNER_LOOP_ITERS_MEDIUM): New define. (INNER_LOOP_ITERS_SMALL): New define. * benchtests/bench-strpbrk.c (do_one_test): Use medium iterations. * benchtests/bench-strsep.c (do_one_test): Use small iterations. * benchtests/bench-strspn.c (do_one_test): Use medium iterations. * benchtests/bench-strstr.c (do_one_test): Use small iterations. * benchtests/bench-strtok.c (do_one_test): Use small iterations. --- benchtests/bench-strcasestr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'benchtests/bench-strcasestr.c') diff --git a/benchtests/bench-strcasestr.c b/benchtests/bench-strcasestr.c index 1458070d47..d701ff4f36 100644 --- a/benchtests/bench-strcasestr.c +++ b/benchtests/bench-strcasestr.c @@ -36,7 +36,7 @@ IMPL (strcasestr, 1) static void do_one_test (impl_t *impl, const char *s1, const char *s2, char *exp_result) { - size_t i, iters = INNER_LOOP_ITERS; + size_t i, iters = INNER_LOOP_ITERS_SMALL; timing_t start, stop, cur; TIMING_NOW (start); -- cgit 1.4.1