| 16 | B.execs({{355600}, {}}); |
| 17 | |
| 18 | TEST_F(ARM_COMMON, BENCHMARK_ELEM_UNARY_FLOATONLY) { |
| 19 | Benchmarker<ElemwiseForward> B(handle()); |
| 20 | using Mode = ElemwiseForward::Param::Mode; |
| 21 | // UniformFloatWithZeroRNG rng(80, 100, 0.1); |
| 22 | printf("Test Optr exp(x)\n"); |
| 23 | B.set_param(Mode::EXP); |
| 24 | B.execs({{355600}, {}}); |
| 25 | |
| 26 | B.set_param(Mode::EXP); |
| 27 | B.execs({{355600}, {}}); |
| 28 | float max_val = 0; |
| 29 | TEST_IN_DIFF_DISTRUBUTION(0.25, 1) |
| 30 | TEST_IN_DIFF_DISTRUBUTION(0.5, 2) |
| 31 | TEST_IN_DIFF_DISTRUBUTION(0.75, 3) |
| 32 | TEST_IN_DIFF_DISTRUBUTION(0.9999, 4) |
| 33 | |
| 34 | printf("Test Optr tanh(x)\n"); |
| 35 | B.set_param(Mode::TANH); |
| 36 | B.execs({{355600}, {}}); |
| 37 | |
| 38 | B.set_param(Mode::TANH); |
| 39 | B.execs({{355600}, {}}); |
| 40 | max_val = 0; |
| 41 | TEST_IN_DIFF_DISTRUBUTION(0.25, 5) |
| 42 | TEST_IN_DIFF_DISTRUBUTION(0.5, 6) |
| 43 | TEST_IN_DIFF_DISTRUBUTION(0.75, 7) |
| 44 | TEST_IN_DIFF_DISTRUBUTION(0.9999, 8) |
| 45 | |
| 46 | printf("Test Optr fast_tanh(x)\n"); |
| 47 | B.set_param(Mode::FAST_TANH); |
| 48 | B.execs({{355600}, {}}); |
| 49 | |
| 50 | printf("Test Optr sigmoid(x)\n"); |
| 51 | B.set_param(Mode::SIGMOID); |
| 52 | B.execs({{355600}, {}}); |
| 53 | TEST_IN_DIFF_DISTRUBUTION(0.25, 9) |
| 54 | TEST_IN_DIFF_DISTRUBUTION(0.5, 10) |
| 55 | TEST_IN_DIFF_DISTRUBUTION(0.75, 11) |
| 56 | TEST_IN_DIFF_DISTRUBUTION(0.9999, 12) |
| 57 | |
| 58 | B.set_param(Mode::SIGMOID); |
| 59 | B.execs({{355600}, {}}); |
| 60 | max_val = 0; |
| 61 | TEST_IN_DIFF_DISTRUBUTION(0.25, 13) |
| 62 | TEST_IN_DIFF_DISTRUBUTION(0.5, 14) |
| 63 | TEST_IN_DIFF_DISTRUBUTION(0.75, 15) |
| 64 | TEST_IN_DIFF_DISTRUBUTION(0.9999, 16) |
| 65 | } |
| 66 | |
| 67 | TEST_F(ARM_COMMON, BENCHMARK_ELEMWISE_UNARY) { |
| 68 | Benchmarker<ElemwiseForward> B(handle()); |