[gcc r14-11028] libstdc++: Fix calculation of system time in performance tests
Jonathan Wakely
redi@gcc.gnu.org
Mon Dec 2 22:45:03 GMT 2024
https://gcc.gnu.org/g:ea95ef3becfd3d9c12acc5ea9b5aa98fcf8f65d7
commit r14-11028-gea95ef3becfd3d9c12acc5ea9b5aa98fcf8f65d7
Author: Jonathan Wakely <jwakely@redhat.com>
Date: Wed Nov 13 16:47:04 2024 +0000
libstdc++: Fix calculation of system time in performance tests
The system_time() function used the wrong element of the splits array.
Also add a comment about the units for time measurements.
libstdc++-v3/ChangeLog:
* testsuite/util/testsuite_performance.h (time_counter): Add
comment about times.
(time_counter::system_time): Use correct split value.
(cherry picked from commit 19d0720f68c2617f1b9b686d3884333b60ca75da)
Diff:
---
libstdc++-v3/testsuite/util/testsuite_performance.h | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/libstdc++-v3/testsuite/util/testsuite_performance.h b/libstdc++-v3/testsuite/util/testsuite_performance.h
index 4fd95b7e22a7..c2be9c8e8781 100644
--- a/libstdc++-v3/testsuite/util/testsuite_performance.h
+++ b/libstdc++-v3/testsuite/util/testsuite_performance.h
@@ -73,6 +73,9 @@ namespace __gnu_test
class time_counter
{
private:
+ // All times are measured in clock ticks.
+ // There are CLOCKS_PER_SEC ticks per second.
+ // POSIX requires CLOCKS_PER_SEC == 1000000 so ticks == microseconds.
clock_t elapsed_begin;
clock_t elapsed_end;
tms tms_begin;
@@ -136,7 +139,7 @@ namespace __gnu_test
std::size_t
system_time() const
- { return (tms_end.tms_stime - tms_begin.tms_stime) + splits[1]; }
+ { return (tms_end.tms_stime - tms_begin.tms_stime) + splits[2]; }
};
class resource_counter
More information about the Libstdc++-cvs
mailing list