Hi Severin,

On 09/11/2018 09:02 AM, Severin Gehwolf wrote:
Micro-benchmark results from running [1] for x86_64 and ppc64le are
here (-O2 is sufficient it seems):

http://cr.openjdk.java.net/~sgehwolf/webrevs/JDK-8210416/microbenchmarks_results/

More thoughts?

Thanks a lot for checking it on PPC64.

I did additional tests on a POWER8 using the same microbench. I share the
results below. The numbers are the arithmetic mean of 10 runs. Unit is second.

  1 O3                                   |  O2
  2          Math            StrictMath  |           Math            StrictMath
  3                                      |
  4 acos:    3.0728          3.0728      |  acos:    3.07325         3.07375
  5 asin:    3.0933          3.0916      |  asin:    3.09337         3.0915
  6 atan2:   10.9743         10.9759     |  atan2:   11.2994         11.2977
  7 atan:    7.653           7.6602      |  atan:    7.48463         7.48225
  8 cbrt:    13.444          13.4433     |  cbrt:    13.4535         13.4527
  9 cos:     30.1561         33.9689     |  cos:     30.157          35.1162
 10 cosh:    3.0911          3.1074      |  cosh:    3.09975         3.09088
 11 exp:     1.413           3.0572      |  exp:     1.41313         3.09737
 12 expm1:   3.0281          3.0349      |  expm1:   2.98813         2.98913
 13 hypot:   33.7668         33.7471     |  hypot:   27.9664         27.9675
 14 log10:   4.2213          10.0832     |  log10:   4.221           10.1109
 15 log1p:   9.2886          9.2888      |  log1p:   9.08713         9.08075
 16 log:     3.1362          7.6327      |  log:     3.136           7.633
 17 pow:     13.7787         17.4739     |  pow:     13.7829         17.483
 18 sin:     30.216          33.9733     |  sin:     30.2163         35.1684
 19 sinh:    3.1478          3.152       |  sinh:    3.18638         3.18375
 20 sqrt:    0.665           0.6714      |  sqrt:    0.665           0.671
 21 tan:     31.6409         36.461      |  tan:     31.6385         37.7166
 22 tanh:    3.0753          3.0925      |  tanh:    3.11088         3.10675


Based upon that, it looks like that O3 is better for most of the functions,
specially for sin, cos, and tan.

On the other hand, it looks like that O3 hurts hypot.

Thus it seems -O2 is not quite the same as -O3, but it's not straightforward
to decide which one is better too.

Maybe Andrew can enlight us.

I also CC:ed ppc-aix-port in case somebody there wishes to comment on that.

Thank you.


Best regards,
Gustavo

Thanks,
Severin

[1] https://github.com/gromero/strictmath/


Reply via email to