mbox series

[v2,0/6] Implement microbenchmark for libmvec

Message ID 20211112191800.790574-1-skpgkp2@gmail.com
Headers show
Series Implement microbenchmark for libmvec | expand

Message

Sunil Pandey Nov. 12, 2021, 7:17 p.m. UTC
Implement microbenchmark for vector cos, cosf, exp, expf, log, logf,
pow, powf, sin and sinf functions in libmvec with a python script to
generate microbenchmark programs from the input values for each function
using a skeleton benchmark template.

Purpose of the libmvec microbenchmark test is to evaluate work path
performance reliably, not to cover as much input range as possible.

Sunil K Pandey (6):
  x86-64: Create microbenchmark infrastructure for libmvec
  x86-64: Add vector cos/cosf to libmvec microbenchmark
  x86-64: Add vector exp/expf to libmvec microbenchmark
  x86-64: Add vector log/logf to libmvec microbenchmark
  x86-64: Add vector pow/powf to libmvec microbenchmark
  x86-64: Add vector sin/sinf to libmvec microbenchmark

 sysdeps/x86_64/fpu/Makeconfig               |   40 +
 sysdeps/x86_64/fpu/Makefile                 |   40 +
 sysdeps/x86_64/fpu/bench-libmvec-skeleton.c |  104 +
 sysdeps/x86_64/fpu/libmvec-cos-inputs       | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-cosf-inputs      | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-exp-inputs       | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-expf-inputs      | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-log-inputs       | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-logf-inputs      | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-pow-inputs       | 4106 +++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-powf-inputs      | 4106 +++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-sin-inputs       | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/libmvec-sinf-inputs      | 4100 ++++++++++++++++++
 sysdeps/x86_64/fpu/scripts/bench_libmvec.py |  464 +++
 14 files changed, 41660 insertions(+)
 create mode 100644 sysdeps/x86_64/fpu/bench-libmvec-skeleton.c
 create mode 100644 sysdeps/x86_64/fpu/libmvec-cos-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-cosf-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-exp-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-expf-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-log-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-logf-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-pow-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-powf-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-sin-inputs
 create mode 100644 sysdeps/x86_64/fpu/libmvec-sinf-inputs
 create mode 100755 sysdeps/x86_64/fpu/scripts/bench_libmvec.py