aboutsummaryrefslogtreecommitdiff
path: root/bench/qs8-gemm.cc
diff options
context:
space:
mode:
authorMarat Dukhan <maratek@google.com>2020-08-05 16:39:04 -0700
committerXNNPACK Team <xnnpack-github-robot@google.com>2020-08-05 16:39:59 -0700
commitab67142980dd950251a6e6b5a3a79d524bc6b3f0 (patch)
treeb8eb5ec49996a92a6d5b3977e7268c74b8588db2 /bench/qs8-gemm.cc
parentcc8f34cea354954c17c95be3ba38a75d010712a8 (diff)
downloadXNNPACK-ab67142980dd950251a6e6b5a3a79d524bc6b3f0.tar.gz
Benchmark ARM NEON versions of QS8 GEMM microkernels
PiperOrigin-RevId: 325127096
Diffstat (limited to 'bench/qs8-gemm.cc')
-rw-r--r--bench/qs8-gemm.cc12
1 files changed, 12 insertions, 0 deletions
diff --git a/bench/qs8-gemm.cc b/bench/qs8-gemm.cc
index 514256bb8..126bab2dd 100644
--- a/bench/qs8-gemm.cc
+++ b/bench/qs8-gemm.cc
@@ -181,6 +181,18 @@ static void GEMMBenchmark(benchmark::State& state,
}
+#if XNN_ARCH_ARM || XNN_ARCH_ARM64
+ static void qs8_gemm_4x8__neon_mlal_lane(benchmark::State& state, const char* net) {
+ GEMMBenchmark(state, xnn_qs8_gemm_minmax_ukernel_4x8__neon_mlal_lane, 4, 8, 1, 1, benchmark::utils::CheckNEON);
+ }
+ static void qs8_gemm_2x16__neon_mlal_lane(benchmark::State& state, const char* net) {
+ GEMMBenchmark(state, xnn_qs8_gemm_minmax_ukernel_2x16__neon_mlal_lane, 2, 16, 1, 1, benchmark::utils::CheckNEON);
+ }
+
+ BENCHMARK_GEMM(qs8_gemm_4x8__neon_mlal_lane)
+ BENCHMARK_GEMM(qs8_gemm_2x16__neon_mlal_lane)
+#endif // XNN_ARCH_ARM || XNN_ARCH_ARM64
+
#if XNN_ARCH_X86 || XNN_ARCH_X86_64
static void qs8_gemm_4x4c2__sse2_ld64(benchmark::State& state, const char* net) {
GEMMBenchmark(state, xnn_qs8_gemm_minmax_ukernel_4x4c2__sse2_ld64, 4, 4, 2, 1);