Skip to content

A benchmark software for quantifying performance degradation of subnormal arithmetics.

License

Notifications You must be signed in to change notification settings

SJTU-HPC/snbench

Repository files navigation

SNBench

A micro benchmark suite that quantifies the performance impact of IEEE-754 subnormal numbers on arithmetic instructions and transcendental functions.

Features

  • Covers all the possible input/output operands configurations in which subnormal numbers appear
  • Covers both the scalar instructions and vector instructions
  • Covers both the scalar instructions and vector transcendental functions from five math libraries
  • support x86 and Arm CPUs

Directory Layout

  • inst_latency_test: measure the latency of ADD, MUL, DIV and SQRT instructions on x86 and Arm CPUs.
  • inst_latency_throughput_test: measure the throughput of of ADD, MUL, DIV and SQRT instructions on x86 and Arm CPUs.
  • fma_latency_throughput_test: measure the latency and throughput of of the FMA (Fused Multiply Add) instruction on x86 and Arm CPUs.
  • math_func_throughput_test: measure the throughput of the transcendental math functions

Dependencies

  • PAPI: collect the CPU cyles on x86
  • Compilers
    • The GCC Compiler
    • The Intel Compiler: to test the math library SVML
    • The AOCC Compiler: to test the math library AOCL-LibM
  • Math libraries:

About

A benchmark software for quantifying performance degradation of subnormal arithmetics.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published