| 85 | BENCHMARK_TYPE_TUNING(KEY_TYPE, int8_t) |
| 86 | |
| 87 | int main(int argc, char* argv[]) |
| 88 | { |
| 89 | benchmark_utils::executor executor(argc, argv, 128 * benchmark_utils::MiB, 10, 5); |
| 90 | |
| 91 | #ifndef BENCHMARK_CONFIG_TUNING |
| 92 | // Tuned types |
| 93 | BENCHMARK_TYPES_TUNING(rocprim::int128_t) |
| 94 | BENCHMARK_TYPES_TUNING(int64_t) |
| 95 | BENCHMARK_TYPES_TUNING(int) |
| 96 | BENCHMARK_TYPES_TUNING(short) |
| 97 | BENCHMARK_TYPES_TUNING(int8_t) |
| 98 | BENCHMARK_TYPES_TUNING(double) |
| 99 | BENCHMARK_TYPES_TUNING(float) |
| 100 | BENCHMARK_TYPES_TUNING(rocprim::half) |
| 101 | |
| 102 | #ifndef BENCHMARK_AUTOTUNED_TYPES_ONLY |
| 103 | // Not tuned types |
| 104 | BENCHMARK_SELECT_FLAG_TYPE(uint8_t, uint8_t) |
| 105 | BENCHMARK_SELECT_FLAG_TYPE(rocprim::uint128_t, unsigned char) |
| 106 | |
| 107 | BENCHMARK_SELECT_PREDICATE_TYPE(uint8_t) |
| 108 | BENCHMARK_SELECT_PREDICATE_TYPE(rocprim::uint128_t) |
| 109 | |
| 110 | BENCHMARK_SELECT_PREDICATED_FLAG_TYPE(uint8_t, uint8_t) |
| 111 | BENCHMARK_SELECT_PREDICATED_FLAG_TYPE(rocprim::uint128_t, unsigned char) |
| 112 | |
| 113 | BENCHMARK_UNIQUE_TYPE(uint8_t) |
| 114 | BENCHMARK_UNIQUE_TYPE(rocprim::uint128_t) |
| 115 | |
| 116 | BENCHMARK_UNIQUE_BY_KEY_TYPE(float, double) |
| 117 | BENCHMARK_UNIQUE_BY_KEY_TYPE(uint8_t, uint8_t) |
| 118 | BENCHMARK_UNIQUE_BY_KEY_TYPE(int8_t, double) |
| 119 | BENCHMARK_UNIQUE_BY_KEY_TYPE(rocprim::half, rocprim::half) |
| 120 | BENCHMARK_UNIQUE_BY_KEY_TYPE(rocprim::uint128_t, rocprim::int128_t) |
| 121 | |
| 122 | // Not tuned custom types |
| 123 | using custom_double2 = common::custom_type<double, double>; |
| 124 | using custom_int_double = common::custom_type<int, double>; |
| 125 | using huge_float2 = common::custom_huge_type<1024, float, float>; |
| 126 | |
| 127 | BENCHMARK_SELECT_FLAG_TYPE(custom_double2, unsigned char) |
| 128 | BENCHMARK_SELECT_PREDICATED_FLAG_TYPE(custom_double2, unsigned char) |
| 129 | BENCHMARK_UNIQUE_BY_KEY_TYPE(double, custom_double2) |
| 130 | |
| 131 | BENCHMARK_SELECT_PREDICATE_TYPE(custom_int_double) |
| 132 | BENCHMARK_UNIQUE_TYPE(custom_int_double) |
| 133 | BENCHMARK_UNIQUE_BY_KEY_TYPE(custom_int_double, custom_int_double) |
| 134 | |
| 135 | BENCHMARK_SELECT_FLAG_TYPE(huge_float2, unsigned char) |
| 136 | BENCHMARK_SELECT_PREDICATE_TYPE(huge_float2) |
| 137 | BENCHMARK_SELECT_PREDICATED_FLAG_TYPE(huge_float2, unsigned char) |
| 138 | BENCHMARK_UNIQUE_TYPE(huge_float2) |
| 139 | BENCHMARK_UNIQUE_BY_KEY_TYPE(huge_float2, huge_float2) |
| 140 | #endif |
| 141 | #endif |
| 142 | |
| 143 | executor.run(); |
| 144 | } |