diff options
author | Siddhesh Poyarekar <siddhesh@redhat.com> | 2013-05-13 13:44:32 +0530 |
---|---|---|
committer | Siddhesh Poyarekar <siddhesh@redhat.com> | 2013-05-13 13:44:32 +0530 |
commit | 43fe811b73d8f585a4ae837d4a9d4c0f5d46b779 (patch) | |
tree | 7280e44dba0f9839d1a5fbfcd890446e0c220953 /benchtests/Makefile | |
parent | 0f7d347bd0530562257d7c03c62b8c50d810b655 (diff) | |
download | glibc-43fe811b73d8f585a4ae837d4a9d4c0f5d46b779.tar.gz glibc-43fe811b73d8f585a4ae837d4a9d4c0f5d46b779.tar.xz glibc-43fe811b73d8f585a4ae837d4a9d4c0f5d46b779.zip |
Use HP_TIMING for benchmarks if available
HP_TIMING uses native timestamping instructions if available, thus greatly reducing the overhead of recording start and end times for function calls. For architectures that don't have HP_TIMING available, we fall back to the clock_gettime bits. One may also override this by invoking the benchmark as follows: make USE_CLOCK_GETTIME=1 bench and get the benchmark results using clock_gettime. One has to do `make bench-clean` to ensure that the benchmark programs are rebuilt.
Diffstat (limited to 'benchtests/Makefile')
-rw-r--r-- | benchtests/Makefile | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/benchtests/Makefile b/benchtests/Makefile index 19e1be6f4b..861839013b 100644 --- a/benchtests/Makefile +++ b/benchtests/Makefile @@ -86,13 +86,19 @@ endif CPPFLAGS-nonlib = -DDURATION=$(BENCH_DURATION) +# Use clock_gettime to measure performance of functions. The default is to use +# HP_TIMING if it is available. +ifdef USE_CLOCK_GETTIME +CPPFLAGS-nonlib += -DUSE_CLOCK_GETTIME +endif + # This makes sure CPPFLAGS-nonlib and CFLAGS-nonlib are passed # for all these modules. cpp-srcs-left := $(binaries-bench:=.c) lib := nonlib include $(patsubst %,$(..)cppflags-iterator.mk,$(cpp-srcs-left)) -bench-deps := bench-skeleton.c Makefile +bench-deps := bench-skeleton.c bench-timing.h Makefile run-bench = $(test-wrapper-env) \ GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ |