aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaibo Huang <hhb@google.com>2021-03-24 00:57:10 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2021-03-24 00:57:10 +0000
commit8f8ffbb9d2bd3229b58f7570f9912f320b612c6c (patch)
tree620677917f38b4015358dac80d83b3a760d9b25f
parent7f2c83e1f02630b74bd248d36fd7647af0c1bb53 (diff)
parentb245f8db75b62fbc5a27bbe8e584994bfcef2566 (diff)
downloadXNNPACK-android12-qpr3-s2-release.tar.gz
Original change: https://android-review.googlesource.com/c/platform/external/XNNPACK/+/1650467 Change-Id: Iad5949abf39afa658782f3581fd0ad35ac95f151
-rw-r--r--Android.bp168
1 files changed, 162 insertions, 6 deletions
diff --git a/Android.bp b/Android.bp
index 4ff076ce5..16b757e16 100644
--- a/Android.bp
+++ b/Android.bp
@@ -475,8 +475,6 @@ SCALAR_UKERNELS = [
"src/math/sigmoid-scalar-rr2-lut64-p2-div.c",
"src/math/sigmoid-scalar-rr2-lut2048-p1-div.c",
"src/math/sigmoid-scalar-rr2-p5-div.c",
- "src/qs8-gemm/gen/8x8c4-minmax-scalar.c",
- "src/qs8-gemm/gen/12x4c4-minmax-scalar.c",
"src/qs8-requantization/fp32-scalar-lrintf.c",
"src/qs8-requantization/fp32-scalar-magic.c",
"src/qs8-requantization/precise-scalar-signed64.c",
@@ -489,8 +487,6 @@ SCALAR_UKERNELS = [
"src/qu8-gavgpool/7p7x-minmax-scalar-c1.c",
"src/qu8-gavgpool/7x-minmax-scalar-c1.c",
"src/qu8-gemm/2x2-minmax-scalar.c",
- "src/qu8-gemm/gen/8x8c4-minmax-scalar.c",
- "src/qu8-gemm/gen/12x4c4-minmax-scalar.c",
"src/qu8-igemm/2x2-minmax-scalar.c",
"src/qu8-requantization/fp32-scalar-lrintf.c",
"src/qu8-requantization/fp32-scalar-magic.c",
@@ -632,6 +628,8 @@ NEON_UKERNELS = [
"src/f32-hswish/gen/hswish-neon-x4.c",
"src/f32-hswish/gen/hswish-neon-x8.c",
"src/f32-hswish/gen/hswish-neon-x16.c",
+ "src/f32-ibilinear-chw/gen/neon-p4.c",
+ "src/f32-ibilinear-chw/gen/neon-p8.c",
"src/f32-ibilinear/gen/neon-c4.c",
"src/f32-ibilinear/gen/neon-c8.c",
"src/f32-igemm/gen/1x8-minmax-neon-dup-ld64.c",
@@ -806,13 +804,117 @@ NEON_UKERNELS = [
"src/qs8-gavgpool/gen/7x-minmax-neon-c24-acc2.c",
"src/qs8-gavgpool/gen/7x-minmax-neon-c32-acc2.c",
"src/qs8-gemm/gen/1x8-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/1x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/1x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/1x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/1x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/1x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/1x8c16-minmax-neon-mlal-padal.c",
"src/qs8-gemm/gen/1x16-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/1x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/1x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/1x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/1x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/1x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/1x16c16-minmax-neon-mlal-padal.c",
"src/qs8-gemm/gen/2x8-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/2x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/2x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/2x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/2x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/2x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/2x8c16-minmax-neon-mlal-padal.c",
"src/qs8-gemm/gen/2x16-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/2x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/2x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/2x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/2x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/2x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/2x16c16-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/3x8-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/3x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/3x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/3x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/3x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/3x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/3x8c16-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/3x16-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/3x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/3x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/3x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/3x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/3x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/3x16c16-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/4x8-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/4x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/4x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/4x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/4x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/4x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/4x8c16-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/4x16-minmax-neon-mlal-lane.c",
+ "src/qs8-gemm/gen/4x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-gemm/gen/4x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-gemm/gen/4x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-gemm/gen/4x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-gemm/gen/4x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-gemm/gen/4x16c16-minmax-neon-mlal-padal.c",
"src/qs8-igemm/gen/1x8-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/1x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/1x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/1x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/1x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/1x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/1x8c16-minmax-neon-mlal-padal.c",
"src/qs8-igemm/gen/1x16-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/1x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/1x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/1x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/1x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/1x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/1x16c16-minmax-neon-mlal-padal.c",
"src/qs8-igemm/gen/2x8-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/2x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/2x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/2x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/2x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/2x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/2x8c16-minmax-neon-mlal-padal.c",
"src/qs8-igemm/gen/2x16-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/2x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/2x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/2x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/2x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/2x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/2x16c16-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/3x8-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/3x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/3x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/3x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/3x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/3x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/3x8c16-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/3x16-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/3x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/3x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/3x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/3x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/3x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/3x16c16-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/4x8-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/4x8-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/4x8c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/4x8c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/4x8c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/4x8c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/4x8c16-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/4x16-minmax-neon-mlal-lane.c",
+ "src/qs8-igemm/gen/4x16-minmax-neon-mull-addw-dup.c",
+ "src/qs8-igemm/gen/4x16c2-minmax-neon-mlal-padal-dup.c",
+ "src/qs8-igemm/gen/4x16c2-minmax-neon-mull-padal-dup.c",
+ "src/qs8-igemm/gen/4x16c8-minmax-neon-mlal-padal.c",
+ "src/qs8-igemm/gen/4x16c8-minmax-neon-mull-padal.c",
+ "src/qs8-igemm/gen/4x16c16-minmax-neon-mlal-padal.c",
"src/qs8-requantization/fp32-neon.c",
"src/qs8-requantization/precise-neon.c",
"src/qs8-requantization/q31-neon.c",
@@ -885,6 +987,8 @@ NEONFMA_UKERNELS = [
"src/f32-gemm/gen/6x8-minmax-neonfma-dup-ld128.c",
"src/f32-gemm/gen/6x8s4-minmax-neonfma.c",
"src/f32-gemm/gen/8x8s4-minmax-neonfma.c",
+ "src/f32-ibilinear-chw/gen/neonfma-p4.c",
+ "src/f32-ibilinear-chw/gen/neonfma-p8.c",
"src/f32-ibilinear/gen/neonfma-c4.c",
"src/f32-ibilinear/gen/neonfma-c8.c",
"src/f32-igemm/gen/1x8-minmax-neonfma-dup-ld64.c",
@@ -1281,7 +1385,6 @@ NEONDOT_UKERNELS = [
"src/qs8-gemm/gen/6x16c4-minmax-neondot.c",
"src/qs8-gemm/gen/8x8c4-minmax-neondot.c",
"src/qs8-gemm/gen/8x16c4-minmax-neondot.c",
- "src/qs8-gemm/gen/12x8c4-minmax-neondot.c",
"src/qs8-igemm/gen/1x8c4-minmax-neondot.c",
"src/qs8-igemm/gen/1x16c4-minmax-neondot.c",
"src/qs8-igemm/gen/4x8c4-minmax-neondot.c",
@@ -1290,7 +1393,6 @@ NEONDOT_UKERNELS = [
"src/qs8-igemm/gen/6x16c4-minmax-neondot.c",
"src/qs8-igemm/gen/8x8c4-minmax-neondot.c",
"src/qs8-igemm/gen/8x16c4-minmax-neondot.c",
- "src/qs8-igemm/gen/12x8c4-minmax-neondot.c",
]
SSE_UKERNELS = [
@@ -2563,9 +2665,18 @@ AARCH64_ASM_UKERNELS = [
"src/f32-igemm/gen/5x8-minmax-aarch64-neonfma-cortex-a75.S",
"src/f32-igemm/gen/6x8-minmax-aarch64-neonfma-cortex-a57.S",
"src/f32-igemm/gen/6x8-minmax-aarch64-neonfma-cortex-a75.S",
+ "src/qs8-gemm/1x16c4-aarch64-neondot-ld32.S",
"src/qs8-gemm/1x16c4-aarch64-neondot-ld64.S",
+ "src/qs8-gemm/2x8c8-aarch64-neon-mull-padal.S",
+ "src/qs8-gemm/2x8c8-aarch64-neon-mlal-padal.S",
+ "src/qs8-gemm/2x8c16-aarch64-neon-mlal-padal.S",
"src/qs8-gemm/4x16c4-aarch64-neondot-cortex-a55.S",
+ "src/qs8-gemm/4x16c4-aarch64-neondot-ld32.S",
"src/qs8-gemm/4x16c4-aarch64-neondot-ld64.S",
+ "src/qs8-igemm/2x8c8-aarch64-neon-mlal-padal.S",
+ "src/qs8-igemm/2x8c16-aarch64-neon-mlal-padal.S",
+ "src/qs8-igemm/4x16c4-aarch64-neondot-cortex-a55.S",
+ "src/qs8-igemm/4x16c4-aarch64-neondot-ld64.S",
]
cc_defaults {
@@ -3250,6 +3361,14 @@ cc_library_static {
}
cc_library_static {
+ name: "xnnpack_mobilenet_v1_fp32_sparse",
+ defaults: ["xnnpack_tests_default"],
+ srcs: [
+ "models/fp32-sparse-mobilenet-v1.cc",
+ ],
+}
+
+cc_library_static {
name: "xnnpack_qs8_mobilenet_v1",
defaults: ["xnnpack_tests_default"],
srcs: [
@@ -3258,6 +3377,14 @@ cc_library_static {
}
cc_library_static {
+ name: "xnnpack_qu8_mobilenet_v1",
+ defaults: ["xnnpack_tests_default"],
+ srcs: [
+ "models/qu8-mobilenet-v1.cc",
+ ],
+}
+
+cc_library_static {
name: "xnnpack_mobilenet_v1_fp16",
defaults: ["xnnpack_tests_default"],
srcs: [
@@ -3282,6 +3409,14 @@ cc_library_static {
}
cc_library_static {
+ name: "xnnpack_mobilenet_v2_fp32_sparse",
+ defaults: ["xnnpack_tests_default"],
+ srcs: [
+ "models/fp32-sparse-mobilenet-v2.cc",
+ ],
+}
+
+cc_library_static {
name: "xnnpack_mobilenet_v2_fp16",
defaults: ["xnnpack_tests_default"],
srcs: [
@@ -3299,6 +3434,14 @@ cc_library_static {
}
cc_library_static {
+ name: "xnnpack_mobilenet_v3_large_fp32_sparse",
+ defaults: ["xnnpack_tests_default"],
+ srcs: [
+ "models/fp32-sparse-mobilenet-v3-large.cc",
+ ],
+}
+
+cc_library_static {
name: "xnnpack_mobilenet_v3_large_fp16",
defaults: ["xnnpack_tests_default"],
srcs: [
@@ -3315,6 +3458,14 @@ cc_library_static {
}
cc_library_static {
+ name: "xnnpack_mobilenet_v3_small_fp32_sparse",
+ defaults: ["xnnpack_tests_default"],
+ srcs: [
+ "models/fp32-sparse-mobilenet-v3-small.cc",
+ ],
+}
+
+cc_library_static {
name: "xnnpack_mobilenet_v3_small_fp16",
defaults: ["xnnpack_tests_default"],
srcs: [
@@ -3337,14 +3488,19 @@ cc_benchmark {
"libgoogle-benchmark",
"xnnpack_qs8_mobilenet_v1",
"xnnpack_mobilenet_v1_fp32",
+ "xnnpack_mobilenet_v1_fp32_sparse",
"xnnpack_mobilenet_v1_fp16",
"xnnpack_qs8_mobilenet_v2",
"xnnpack_mobilenet_v2_fp32",
+ "xnnpack_mobilenet_v2_fp32_sparse",
"xnnpack_mobilenet_v2_fp16",
"xnnpack_mobilenet_v3_large_fp32",
+ "xnnpack_mobilenet_v3_large_fp32_sparse",
"xnnpack_mobilenet_v3_large_fp16",
"xnnpack_mobilenet_v3_small_fp32",
+ "xnnpack_mobilenet_v3_small_fp32_sparse",
"xnnpack_mobilenet_v3_small_fp16",
+ "xnnpack_qu8_mobilenet_v1",
],
}