This is an automated email from the ASF dual-hosted git repository.

masahi pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tvm.git


The following commit(s) were added to refs/heads/main by this push:
     new bd684de  [CI FIX] (Really) Skip test_conv2d in Hexagon (i386) (#10687)
bd684de is described below

commit bd684deb5ca5f5ac590476f8e279f5971b27f5a5
Author: Masahiro Masuda <[email protected]>
AuthorDate: Mon Mar 21 06:10:43 2022 +0900

    [CI FIX] (Really) Skip test_conv2d in Hexagon (i386) (#10687)
    
    * [skip ci] Skip test_conv2d in Hexagon
    
    * properly skip hexagon test_conv2d on i386
    
    * skip entirely
---
 src/relay/backend/utils.cc                              | 10 ++++++++--
 tests/python/contrib/test_hexagon/test_conv2d_conv2d.py |  5 +----
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/relay/backend/utils.cc b/src/relay/backend/utils.cc
index fd3ab64..a07e20b 100644
--- a/src/relay/backend/utils.cc
+++ b/src/relay/backend/utils.cc
@@ -227,14 +227,20 @@ Array<Pass> GetPassPrefix(bool is_homegeneous, bool 
is_vm) {
     pass_seqs.push_back(transform::EtaExpand(
         /* expand_constructor */ true, /* expand_global_var */ false));
   } else {
+    // DynamicToStatic runs FoldConstant, which affects SimplifyExpr below.
+    // Task extraction uses the is_vm=true branch, meaning SimplifyExpr sees 
different
+    // inputs from the ones when invoked via relay.build(...).
+    // This causes workload lookups in ApplyHistoryBest to fail if the lookup 
depends on
+    // the structual hash of the input relay module (e.g. MetaScheduler).
+    // TODO(masahi): Either remove DynamicToStatic below or always run it
+
     // Convert Dynamic ops to static versions
     pass_seqs.push_back(transform::DynamicToStatic());
   }
 
   PackedFunc fskip = PackedFunc([](TVMArgs args, TVMRetValue* rv) {
     Expr expr = args[0];
-    if (expr.as<CallNode>()) {
-      auto call_node = expr.as<CallNode>();
+    if (auto* call_node = expr.as<CallNode>()) {
       auto op_node = call_node->op.as<OpNode>();
       if (op_node->name == "cast") {
         auto attrs = call_node->attrs.as<CastAttrs>();
diff --git a/tests/python/contrib/test_hexagon/test_conv2d_conv2d.py 
b/tests/python/contrib/test_hexagon/test_conv2d_conv2d.py
index 6475970..5723420 100644
--- a/tests/python/contrib/test_hexagon/test_conv2d_conv2d.py
+++ b/tests/python/contrib/test_hexagon/test_conv2d_conv2d.py
@@ -162,10 +162,7 @@ class BaseConv2dConv2d:
 
 class TestConv2dConv2dPackedFilter(BaseConv2dConv2d):
     @tvm.testing.parametrize_targets("llvm")
-    @pytest.mark.skipif(
-        platform.processor() == "i686", reason="Test known to be flaky on i386 
machines"
-    )
-    @pytest.mark.xfail(strict=False, reason="See 
https://github.com/apache/tvm/issues/10665";)
+    @pytest.mark.skip("Test known to be flaky on i386 machines")
     def test_conv2d(
         self,
         batch,

Reply via email to