This is an automated email from the ASF dual-hosted git repository.
zhaowu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-tvm.git
The following commit(s) were added to refs/heads/master by this push:
new 314f31b [Strategy][ARM CPU] Remove contrib spatial pack schedule of
depthwise convolution (#5148)
314f31b is described below
commit 314f31b0b4e2dbc934d74afe90bff1ef3ac40b17
Author: Zhao Wu <[email protected]>
AuthorDate: Thu Mar 26 13:10:00 2020 +0800
[Strategy][ARM CPU] Remove contrib spatial pack schedule of depthwise
convolution (#5148)
* [Strategy][ARM CPU] Low the plevel of contrib spatial pack of depthwise
convolution
* address comments
---
python/tvm/relay/op/strategy/arm_cpu.py | 15 ++++++++++-----
topi/python/topi/arm_cpu/depthwise_conv2d.py | 5 +++++
2 files changed, 15 insertions(+), 5 deletions(-)
diff --git a/python/tvm/relay/op/strategy/arm_cpu.py
b/python/tvm/relay/op/strategy/arm_cpu.py
index 87e48dc..a803bb6 100644
--- a/python/tvm/relay/op/strategy/arm_cpu.py
+++ b/python/tvm/relay/op/strategy/arm_cpu.py
@@ -105,11 +105,16 @@ def conv2d_strategy_arm_cpu(attrs, inputs, out_type,
target):
wrap_compute_conv2d(topi.arm_cpu.depthwise_conv2d_nchw),
wrap_topi_schedule(topi.arm_cpu.schedule_depthwise_conv2d_nchw),
name="depthwise_conv2d_nchw.arm_cpu")
- strategy.add_implementation(
-
wrap_compute_conv2d(topi.arm_cpu.depthwise_conv2d_nchw_spatial_pack),
-
wrap_topi_schedule(topi.arm_cpu.schedule_depthwise_conv2d_nchw_spatial_pack),
- name="depthwise_conv2d_nchw_spatial_pack.arm_cpu",
- plevel=15)
+ # TODO:
+ # This schedule has incorrect result on some hardware platforms
(like NV Jetson TX2)
+ # Let us comment it out but not remove.
+ # see discussion:
+ #
https://discuss.tvm.ai/t/autotuner-incorrect-result-after-tuning-mobilenetv2-on-arm-cpu/6088
+ # strategy.add_implementation(
+ #
wrap_compute_conv2d(topi.arm_cpu.depthwise_conv2d_nchw_spatial_pack),
+ #
wrap_topi_schedule(topi.arm_cpu.schedule_depthwise_conv2d_nchw_spatial_pack),
+ # name="depthwise_conv2d_nchw_spatial_pack.arm_cpu",
+ # plevel=15)
elif layout == "NHWC":
assert kernel_layout == "HWOI"
logger.warning("depthwise_conv2d with layout NHWC is not optimized
for arm cpu.")
diff --git a/topi/python/topi/arm_cpu/depthwise_conv2d.py
b/topi/python/topi/arm_cpu/depthwise_conv2d.py
index 5214972..802b3df 100644
--- a/topi/python/topi/arm_cpu/depthwise_conv2d.py
+++ b/topi/python/topi/arm_cpu/depthwise_conv2d.py
@@ -139,6 +139,11 @@ def schedule_depthwise_conv2d_nchw(cfg, outs):
return s
+# TODO:
+# This schedule has incorrect result on some hardware platforms (like NV
Jetson TX2)
+# Let us comment it out but not remove.
+# see discussion:
+#
https://discuss.tvm.ai/t/autotuner-incorrect-result-after-tuning-mobilenetv2-on-arm-cpu/6088
@autotvm.register_topi_compute("depthwise_conv2d_nchw_spatial_pack.arm_cpu")
def depthwise_conv2d_nchw_spatial_pack(cfg, data, kernel, strides, padding,
dilation, out_dtype):
"""TOPI compute callback for depthwise_conv2d nchw