#include #include static void cpuinfo_get_current_processor(benchmark::State& state) { cpuinfo_initialize(); while (state.KeepRunning()) { const cpuinfo_processor* current_processor = cpuinfo_get_current_processor(); benchmark::DoNotOptimize(current_processor); } } BENCHMARK(cpuinfo_get_current_processor)->Unit(benchmark::kNanosecond); static void cpuinfo_get_current_core(benchmark::State& state) { cpuinfo_initialize(); while (state.KeepRunning()) { const cpuinfo_core* current_core = cpuinfo_get_current_core(); benchmark::DoNotOptimize(current_core); } } BENCHMARK(cpuinfo_get_current_core)->Unit(benchmark::kNanosecond); static void cpuinfo_get_current_uarch_index(benchmark::State& state) { cpuinfo_initialize(); while (state.KeepRunning()) { const uint32_t uarch_index = cpuinfo_get_current_uarch_index(); benchmark::DoNotOptimize(uarch_index); } } BENCHMARK(cpuinfo_get_current_uarch_index)->Unit(benchmark::kNanosecond); static void cpuinfo_get_current_uarch_index_with_default(benchmark::State& state) { cpuinfo_initialize(); while (state.KeepRunning()) { const uint32_t uarch_index = cpuinfo_get_current_uarch_index_with_default(0); benchmark::DoNotOptimize(uarch_index); } } BENCHMARK(cpuinfo_get_current_uarch_index_with_default)->Unit(benchmark::kNanosecond); BENCHMARK_MAIN();