Add benchmark inputs for sin

This commit is contained in:
Siddhesh Poyarekar 2013-04-01 14:45:54 +05:30
parent 81f311c2ee
commit 92e3664bb5
5 changed files with 52 additions and 1 deletions

View File

@ -1,5 +1,10 @@
2013-04-02 Siddhesh Poyarekar <siddhesh@redhat.com>
* bench/Makefile (bench): Add sin and slowsin.
* benchtests/sin-inputs: New file.
* benchtests/slowsin-inputs: New file.
* benchtests/slowsin.c: New file.
* benchtests/Makefile: Add benchmarks for slowpow and slowexp.
(bench): Add slowexp and slowpow.
(exp-ITER): Increase iterations.

View File

@ -45,7 +45,7 @@
# See pow-inputs for an example.
subdir := benchtests
bench := exp pow rint slowexp slowpow
bench := exp pow rint sin slowexp slowpow slowsin
# exp function fast path
exp-ITER = 5e8
@ -71,6 +71,12 @@ slowexp-RET = double
slowexp-INCLUDE = slowexp.c
LDFLAGS-bench-slowexp = -lm
# sin function fast path
sin-ITER = 3e9
sin-ARGLIST = double
sin-RET = double
LDFLAGS-bench-sin = -lm
# pow function slowest path
slowpow-ITER = 1e5
slowpow-ARGLIST = double:double
@ -78,5 +84,12 @@ slowpow-RET = double
slowpow-INCLUDE = slowpow.c
LDFLAGS-bench-slowpow = -lm
# sin function slowest path
slowsin-ITER = 3e7
slowsin-ARGLIST = double
slowsin-RET = double
slowsin-INCLUDE = slowsin.c
LDFLAGS-bench-slowsin = -lm
include ../Makeconfig
include ../Rules

7
benchtests/sin-inputs Normal file
View File

@ -0,0 +1,7 @@
0.9
2.3
3.7
3.9
4.0
4.7
5.9

View File

@ -0,0 +1,7 @@
0.93340582292648832662962377071381
2.3328432680770916363144351635128
3.7439477503636453548097051680088
3.9225160069792437411706487182528
4.0711651639931289992091478779912
4.7858438478542097982426639646292
5.9840767662578002727968851104379

19
benchtests/slowsin.c Normal file
View File

@ -0,0 +1,19 @@
/* Define slowsin.
Copyright (C) 2013 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library 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
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
#define slowsin sin