| 45 | #define CREATE_BENCHMARK(T) executor.queue_instance(device_transform_benchmark<T, true>()); |
| 46 | |
| 47 | int main(int argc, char* argv[]) |
| 48 | { |
| 49 | benchmark_utils::executor executor(argc, argv, 512 * benchmark_utils::MiB, 10, 5); |
| 50 | |
| 51 | #ifndef BENCHMARK_CONFIG_TUNING |
| 52 | // Tuned types |
| 53 | CREATE_BENCHMARK(rocprim::int128_t) |
| 54 | CREATE_BENCHMARK(int64_t) |
| 55 | CREATE_BENCHMARK(int) |
| 56 | CREATE_BENCHMARK(short) |
| 57 | CREATE_BENCHMARK(int8_t) |
| 58 | CREATE_BENCHMARK(double) |
| 59 | CREATE_BENCHMARK(float) |
| 60 | CREATE_BENCHMARK(rocprim::half) |
| 61 | |
| 62 | #ifndef BENCHMARK_AUTOTUNED_TYPES_ONLY |
| 63 | // Not tuned types |
| 64 | CREATE_BENCHMARK(uint8_t) |
| 65 | CREATE_BENCHMARK(rocprim::uint128_t) |
| 66 | |
| 67 | // Not tuned custom types |
| 68 | using custom_float2 = common::custom_type<float, float>; |
| 69 | using custom_double2 = common::custom_type<double, double>; |
| 70 | |
| 71 | CREATE_BENCHMARK(custom_float2) |
| 72 | CREATE_BENCHMARK(custom_double2) |
| 73 | #endif |
| 74 | #endif |
| 75 | |
| 76 | executor.run(); |
| 77 | } |