Put x64 specific benchmark code into ifdefs. (#20456)

This commit is contained in:
Edward Chen 2024-04-25 12:33:12 -07:00 committed by GitHub
parent 227c4419fc
commit 2c19db0af1
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -67,6 +67,8 @@ void COMPUTESOFTMAXINPLACE(benchmark::State& state) {
free(ptr.underlying_buffer);
}
#if defined(MLAS_TARGET_AMD64)
void REDUCEMAXIMUMF32KERNELAVX(benchmark::State& state) {
const auto byte_aligned = narrow<int>(state.range(0));
const auto D = narrow<int>(state.range(1));
@ -174,6 +176,8 @@ void COMPUTESOFTMAXOUTPUTF32KERNELAVX(benchmark::State& state) {
free(ptr.underlying_buffer);
}
#endif // defined(MLAS_TARGET_AMD64)
static void ComputeSoftmaxInplaceArgs(benchmark::internal::Benchmark* b) {
b->ArgNames({"ByteAligned", "N", "D", "Threads"});
for (int threads : {1, 8}) {
@ -200,6 +204,8 @@ static void ComputeSoftmaxInplaceArgs(benchmark::internal::Benchmark* b) {
BENCHMARK(COMPUTESOFTMAXINPLACE)->Apply(ComputeSoftmaxInplaceArgs)->UseRealTime();
#if defined(MLAS_TARGET_AMD64)
BENCHMARK(REDUCEMAXIMUMF32KERNELAVX)
->ArgNames({"ByteAligned", "D"})
->ArgsProduct({
@ -231,3 +237,5 @@ BENCHMARK(COMPUTESOFTMAXOUTPUTF32KERNELAVX)
{3, 4, 5, 7, 9, 11, 13, 15, 16, 500, 2000}, // D
})
->UseRealTime();
#endif // defined(MLAS_TARGET_AMD64)