]> Savannah Git Hosting - gnulib.git/commitdiff
tests: Create new file bench.h.
authorBruno Haible <bruno@clisp.org>
Tue, 11 Jul 2023 19:43:27 +0000 (21:43 +0200)
committerBruno Haible <bruno@clisp.org>
Tue, 11 Jul 2023 19:43:27 +0000 (21:43 +0200)
* tests/bench.h: New file, extracted from tests/bench-digest.h.
* tests/bench-digest.h: Include it.
* modules/crypto/md5-buffer-tests (Files): Add tests/bench.h.
* modules/crypto/sha1-buffer-tests (Files): Likewise.
* modules/crypto/sha256-buffer-tests (Files): Likewise.
* modules/crypto/sha512-buffer-tests (Files): Likewise.

ChangeLog
modules/crypto/md5-buffer-tests
modules/crypto/sha1-buffer-tests
modules/crypto/sha256-buffer-tests
modules/crypto/sha512-buffer-tests
tests/bench-digest.h
tests/bench.h [new file with mode: 0644]

index f233e3c5dbffd5dd686d9096b271cbce819192aa..9f2adb36f75227fab207ddd7c464c89c476438c2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2023-07-11  Bruno Haible  <bruno@clisp.org>
+
+       tests: Create new file bench.h.
+       * tests/bench.h: New file, extracted from tests/bench-digest.h.
+       * tests/bench-digest.h: Include it.
+       * modules/crypto/md5-buffer-tests (Files): Add tests/bench.h.
+       * modules/crypto/sha1-buffer-tests (Files): Likewise.
+       * modules/crypto/sha256-buffer-tests (Files): Likewise.
+       * modules/crypto/sha512-buffer-tests (Files): Likewise.
+
 2023-07-11  Bruno Haible  <bruno@clisp.org>
 
        Optimize away some mbsinit calls.
index cc07337f080dd585e930bec4ca9bfc7e0bffc63b..312fc4a399a987947a4e6c9a61a3eee4f9b1135e 100644 (file)
@@ -2,6 +2,7 @@ Files:
 tests/test-md5-buffer.c
 tests/bench-md5.c
 tests/bench-digest.h
+tests/bench.h
 
 Depends-on:
 c99
index 7420378c82dd894e576ad1fe5b5183a698e3c435..ec2144f0952bb23e3474dfeba9028724cad1d732 100644 (file)
@@ -2,6 +2,7 @@ Files:
 tests/test-sha1-buffer.c
 tests/bench-sha1.c
 tests/bench-digest.h
+tests/bench.h
 
 Depends-on:
 c99
index 53924b4a03608b3c035c3bc7b39cfe39dfc62c74..8e16fd9c83f0cf63915c062c38125e1aff6249ea 100644 (file)
@@ -2,6 +2,7 @@ Files:
 tests/bench-sha224.c
 tests/bench-sha256.c
 tests/bench-digest.h
+tests/bench.h
 
 Depends-on:
 c99
index 0b61ec444be23f03507ecd1d0a0772e5a3ae93bb..042046a4f8ff0ec80af739eb46c5d6986d33ce14 100644 (file)
@@ -2,6 +2,7 @@ Files:
 tests/bench-sha384.c
 tests/bench-sha512.c
 tests/bench-digest.h
+tests/bench.h
 
 Depends-on:
 c99
index 38c4f03dc80879e693be521ac9eb85a4f2fe71cb..95d7300d6ee46c46c96d92db18628910786343d4 100644 (file)
 
 #include <stdio.h>
 #include <stdlib.h>
-#include <sys/resource.h>
-#include <sys/time.h>
 
-struct timings_state
-{
-  /* Filled when the timings start.  */
-  struct timeval real_start;
-  struct timeval user_start;
-  struct timeval sys_start;
-  /* Filled when the timings end.  */
-  long real_usec;
-  long user_usec;
-  long sys_usec;
-};
-
-static void
-timing_start (struct timings_state *ts)
-{
-  struct rusage usage;
-
-  getrusage (RUSAGE_SELF, &usage);
-  ts->user_start = usage.ru_utime;
-  ts->sys_start = usage.ru_stime;
-
-  gettimeofday (&ts->real_start, NULL);
-}
-
-static void
-timing_end (struct timings_state *ts)
-{
-  struct timeval real_end;
-  struct rusage usage;
-
-  gettimeofday (&real_end, NULL);
-
-  getrusage (RUSAGE_SELF, &usage);
-
-  ts->real_usec = (real_end.tv_sec - ts->real_start.tv_sec) * 1000000
-                  + real_end.tv_usec - ts->real_start.tv_usec;
-  ts->user_usec = (usage.ru_utime.tv_sec - ts->user_start.tv_sec) * 1000000
-                  + usage.ru_utime.tv_usec - ts->user_start.tv_usec;
-  ts->sys_usec = (usage.ru_stime.tv_sec - ts->sys_start.tv_sec) * 1000000
-                 + usage.ru_stime.tv_usec - ts->sys_start.tv_usec;
-}
-
-static void
-timing_output (const struct timings_state *ts)
-{
-  printf ("real %10.6f\n", (double)ts->real_usec / 1000000.0);
-  printf ("user %7.3f\n", (double)ts->user_usec / 1000000.0);
-  printf ("sys  %7.3f\n", (double)ts->sys_usec / 1000000.0);
-}
+#include "bench.h"
 
 int
 main (int argc, char *argv[])
diff --git a/tests/bench.h b/tests/bench.h
new file mode 100644 (file)
index 0000000..4bfdbd4
--- /dev/null
@@ -0,0 +1,69 @@
+/* Utilities for benchmarks.
+   Copyright (C) 2018-2023 Free Software Foundation, Inc.
+
+   This program is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation, either version 3 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
+
+#include <stdio.h>
+#include <sys/resource.h>
+#include <sys/time.h>
+
+struct timings_state
+{
+  /* Filled when the timings start.  */
+  struct timeval real_start;
+  struct timeval user_start;
+  struct timeval sys_start;
+  /* Filled when the timings end.  */
+  long real_usec;
+  long user_usec;
+  long sys_usec;
+};
+
+static void
+timing_start (struct timings_state *ts)
+{
+  struct rusage usage;
+
+  getrusage (RUSAGE_SELF, &usage);
+  ts->user_start = usage.ru_utime;
+  ts->sys_start = usage.ru_stime;
+
+  gettimeofday (&ts->real_start, NULL);
+}
+
+static void
+timing_end (struct timings_state *ts)
+{
+  struct timeval real_end;
+  struct rusage usage;
+
+  gettimeofday (&real_end, NULL);
+
+  getrusage (RUSAGE_SELF, &usage);
+
+  ts->real_usec = (real_end.tv_sec - ts->real_start.tv_sec) * 1000000
+                  + real_end.tv_usec - ts->real_start.tv_usec;
+  ts->user_usec = (usage.ru_utime.tv_sec - ts->user_start.tv_sec) * 1000000
+                  + usage.ru_utime.tv_usec - ts->user_start.tv_usec;
+  ts->sys_usec = (usage.ru_stime.tv_sec - ts->sys_start.tv_sec) * 1000000
+                 + usage.ru_stime.tv_usec - ts->sys_start.tv_usec;
+}
+
+static void
+timing_output (const struct timings_state *ts)
+{
+  printf ("real %10.6f\n", (double)ts->real_usec / 1000000.0);
+  printf ("user %7.3f\n", (double)ts->user_usec / 1000000.0);
+  printf ("sys  %7.3f\n", (double)ts->sys_usec / 1000000.0);
+}