[libc-commits] [PATCH] D159143: [libc][math] Implement double precision exp10 function correctly rounded for all rounding modes.

Paul Zimmermann via Phabricator via libc-commits libc-commits at lists.llvm.org
Tue Aug 29 23:46:46 PDT 2023


zimmermann6 accepted this revision.
zimmermann6 added a comment.
This revision is now accepted and ready to land.

a small typo in the summary: fucntions should be functions.

The performance is quite good, nice work!

  zimmerma at biscotte:~/svn/core-math$ LIBM=/localdisk/zimmerma/llvm-project/build/projects/libc/lib/libm.a CORE_MATH_PERF_MODE=rdtsc ./perf.sh exp10
  GNU libc version: 2.37
  GNU libc release: stable
  [####################] 100 %
  Ntrial = 20 ; Min = 33.623 + 0.357 clc/call; Median-Min = 0.334 clc/call; Max = 34.216 clc/call;
  [####################] 100 %
  Ntrial = 20 ; Min = 37.281 + 0.352 clc/call; Median-Min = 0.326 clc/call; Max = 39.768 clc/call;
  [####################] 100 %
  Ntrial = 20 ; Min = 18.802 + 0.174 clc/call; Median-Min = 0.028 clc/call; Max = 20.781 clc/call;

and for the latency:

  zimmerma at biscotte:~/svn/core-math$ LIBM=/localdisk/zimmerma/llvm-project/build/projects/libc/lib/libm.a CORE_MATH_PERF_MODE=rdtsc PERF_ARGS=--latency ./perf.sh exp10
  GNU libc version: 2.37
  GNU libc release: stable
  [####################] 100 %
  Ntrial = 20 ; Min = 73.058 + 0.361 clc/call; Median-Min = 0.342 clc/call; Max = 73.720 clc/call;
  [####################] 100 %
  Ntrial = 20 ; Min = 72.787 + 0.393 clc/call; Median-Min = 0.337 clc/call; Max = 73.469 clc/call;
  [####################] 100 %
  Ntrial = 20 ; Min = 55.295 + 0.349 clc/call; Median-Min = 0.291 clc/call; Max = 55.876 clc/call;


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D159143/new/

https://reviews.llvm.org/D159143



More information about the libc-commits mailing list