[all-commits] [llvm/llvm-project] a9628e: [libc] Add diff and perf targets for more math fun...

HedGarcia via All-commits all-commits at lists.llvm.org
Thu Aug 5 10:57:27 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a9628e96ca5b3d264d88147494c82cb63e8ac973
      https://github.com/llvm/llvm-project/commit/a9628e96ca5b3d264d88147494c82cb63e8ac973
  Author: Hedin Garca <hedingarcia at google.com>
  Date:   2021-08-05 (Thu, 05 Aug 2021)

  Changed paths:
    M libc/test/src/math/differential_testing/CMakeLists.txt
    A libc/test/src/math/differential_testing/ceilf_diff.cpp
    A libc/test/src/math/differential_testing/ceilf_perf.cpp
    A libc/test/src/math/differential_testing/exp2f_diff.cpp
    A libc/test/src/math/differential_testing/exp2f_perf.cpp
    A libc/test/src/math/differential_testing/expf_diff.cpp
    A libc/test/src/math/differential_testing/expf_perf.cpp
    A libc/test/src/math/differential_testing/fabsf_diff.cpp
    A libc/test/src/math/differential_testing/fabsf_perf.cpp
    A libc/test/src/math/differential_testing/floorf_diff.cpp
    A libc/test/src/math/differential_testing/floorf_perf.cpp
    A libc/test/src/math/differential_testing/logbf_diff.cpp
    A libc/test/src/math/differential_testing/logbf_perf.cpp
    A libc/test/src/math/differential_testing/nearbyintf_diff.cpp
    A libc/test/src/math/differential_testing/nearbyintf_perf.cpp
    A libc/test/src/math/differential_testing/rintf_diff.cpp
    A libc/test/src/math/differential_testing/rintf_perf.cpp
    A libc/test/src/math/differential_testing/roundf_diff.cpp
    A libc/test/src/math/differential_testing/roundf_perf.cpp
    M libc/test/src/math/differential_testing/sqrtf_diff.cpp
    M libc/test/src/math/differential_testing/sqrtf_perf.cpp
    A libc/test/src/math/differential_testing/truncf_diff.cpp
    A libc/test/src/math/differential_testing/truncf_perf.cpp

  Log Message:
  -----------
  [libc] Add diff and perf targets for more math functions

Comparing the run time of math functions from LLVM libc
with the MSVCRT libc:
|function	|perf-LLVM libc		    |perf-MSVCRT
|ceilf		|2.36 mins (141491389600 ns)|47.10 sec (47100940100 ns)
|exp2f             |6.37 mins (358441794700 ns)|12.39 mins (719404388300 ns)
|expf		|6.35 mins (381204661800 ns)|6.17 mins (346150163200 ns)
|fabsf		|1.18 mins (78425546600 ns) |53.75 sec (53745301900 ns)
|floorf		|3.15 mins (164770963800 ns)|45.94 sec (45935988400 ns)
|logbf		|4.38 mins (262508058800 ns)|55.47 sec (55466377700 ns)
|nearbyintf	|3.20 mins (167972868000 ns)|9.13 mins (523822963600 ns)
|rintf		|3.20 mins (168001498700 ns)|22.35 mins (1341266448800 ns)
|roundf		|2.35 mins (141151500600 ns)|1.42 mins (85326429800 ns)
|truncf		|2.31 mins (114846424000 ns)|59.41 sec (59414309100 ns)

Evaluating the number of differing results in Windows:
|function	|diff
|ceilf          |8388606 differing results
|exp2f         |213303887 differing results
|expf           |193922 differing results
|fabsf          |8388606 differing results
|floorf         |8388606 differing results
|logbf          |0 differing results
|nearbyintf     |0 differing results
|rintf          |0 differing results
|roundf         |0 differing results
|truncf 	|0 differing results

Reviewed By: sivachandra

Differential Revision: https://reviews.llvm.org/D107462




More information about the All-commits mailing list