From commits-return-14926-archive-asf-public=cust-asf.ponee.io@tvm.apache.org Wed Jun 10 09:31:56 2020 Return-Path: X-Original-To: archive-asf-public@cust-asf.ponee.io Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [207.244.88.153]) by mx-eu-01.ponee.io (Postfix) with SMTP id 3349818062B for ; Wed, 10 Jun 2020 11:31:56 +0200 (CEST) Received: (qmail 89886 invoked by uid 500); 10 Jun 2020 09:31:55 -0000 Mailing-List: contact commits-help@tvm.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@tvm.apache.org Delivered-To: mailing list commits@tvm.apache.org Received: (qmail 89868 invoked by uid 99); 10 Jun 2020 09:31:55 -0000 Received: from ec2-52-202-80-70.compute-1.amazonaws.com (HELO gitbox.apache.org) (52.202.80.70) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 10 Jun 2020 09:31:55 +0000 Received: by gitbox.apache.org (ASF Mail Server at gitbox.apache.org, from userid 33) id 6E4AD8D417; Wed, 10 Jun 2020 09:31:55 +0000 (UTC) Date: Wed, 10 Jun 2020 09:31:54 +0000 To: "commits@tvm.apache.org" Subject: [incubator-tvm] branch rust-tvm updated (caa6904 -> 43325ab) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Message-ID: <159178151427.29563.15509799775205959997@gitbox.apache.org> From: jroesch@apache.org X-Git-Host: gitbox.apache.org X-Git-Repo: incubator-tvm X-Git-Refname: refs/heads/rust-tvm X-Git-Reftype: branch X-Git-Oldrev: caa6904a4d070abf1f957a51c23ba7d553e364be X-Git-Newrev: 43325abcdf9b1aa8d405a9769aa43dc12f66112d X-Git-NotificationType: ref_changed X-Git-Multimail-Version: 1.5.dev Auto-Submitted: auto-generated This is an automated email from the ASF dual-hosted git repository. jroesch pushed a change to branch rust-tvm in repository https://gitbox.apache.org/repos/asf/incubator-tvm.git. discard caa6904 All tests pass discard 0c55c39 Finish removing anyhow and work with new external! macro discard 62b6d1ba Convert external macro to procmacro discard fc6fac2 Reworking errors and proc macros discard a44a379 Refactor anyhow out of the rt layer discard 4cf2dbc Add tvm crate discard 9fc0d4a Add tvm-rt crate add 95b3ad9 [PatternLang] Add ConstantPattern (#5689) add 2599c2c [PYTORCH]Minor bug fixes (#5683) add 05b1b23 [Relay] Fix dataflow_pattern.rewrite() hang if Match in IR (#5680) add 3698d5d [RELAY] Fix segfault in pretty print when ObjectRef is null (#5681) add ddf7190 [REFACTOR][RELAY] move fallback_device to config (#5690) add 3ee2270 @zhiics -> PPMC (#5692) add 06bf8b0 [COMMUNITY] @masahi -> PPMC (#5691) add a9ce2f7 Support more dtypes for TVMDSOOp (#5694) add ff10e6c [ONNX]LpPool Support added (#5696) add 1ae7162 In memory_plan, check if value is not None, instead of just checking value as boolean. (#5700) add 2cd5117 [PatternLang]Conditionally Embedding Constants in Partitioned Functions (#5693) add 879158a [ONNX] Skip ADD inside Gemm op when vector is zero (#5697) add 910edef [BYOC] Support Tuple Output in C/DNNL Codegen (#5701) add c55ed37 [REFACTOR][RELAY] Replace build_config with PassContext (#5698) add 55aefc2 [PYTORCH]floor_divide support for squeezenet (#5702) add 12cfe4a [AutoTVM][TOPI] Fix bifrost spatial packing conv2d auto tune (#5684) add b0959d4 [Arith] ExtendedEuclidean merge impl to int_operator (#5625) add f280883 fix typo: anchor windoes should be anchor windows (#5706) add afc239a [REFACTOR][PY] relay.op.Op -> tvm.ir.Op (#5705) add 43162d6 [PatternLang] Simplify Pattern API Implementations (#5703) add 663a5ab [PYTORCH]ReplicationPad support added (#5708) add f272e06 Remove deprecated opengl files (#5711) add 13277a5 Remove opengl runtime and cmake (#5712) add 3d06063 [BUGFIX][CRT] Fix Compilation Error in CRT (#5713) add 062a244 Rename tvm_dso_op to libtvm_dso_op (#5714) add 4347b41 [Object] Unify StrMapNode and MapNode (#5687) add c1f3b2f [MXNET]Softmin, trunc op support added (#5715) add 927510a Avoid downloading when TOPHUB_LOCATION is NONE (#5720) add 9151a51 [Object][FFI] Introduce runtime::String::CanConvertFrom (#5718) add 64ac555 [Object] Restore the StrMap behavior in JSON/SHash/SEqual (#5719) add 36aa895 Fix generating types like float44 and float88 (#5722) add 3d61dc8 [ONNX]ReduceL1, ReduceL2, ReduceSumSquare, ReduceLogSum ops added (#5721) add 43dcbc6 [TENSORFLOW]StatefulPartitionedCall/PartitionedCall Ops support added (#5617) add a642089 [AutoTVM, Relay] Clear compile engine after task extraction (#5724) add 8935990 Fix runtime::String backward compatibility in JSON (#5725) add 490510d codegen llvm: move nvptx-specific intrinsic handling into codegen_nvptx (#5726) add c2e248f [TOPI,RELAY][TFLITE] Sparse to dense operator (#5447) add 34c95a8 [Frontend][TFLite] Add parser support for shape and range (#5329) add 8a98782 [REFACTOR] Separate ArgTypeCode from DLDataTypeCode (#5730) add fbc2b87 [ONNX]MaxRoiPool, Mod & Xor op support added (#5729) add e1b1171 ROCm: Add warp shuffles and enable reductions (#5727) add fee5d54 Change 'delete's in Relay VM Instruction dtor to 'delete[]'s (#5735) add 24597f0 Fix reshape usage in ARM Winograd (#5732) add 592711e [TEST] Fix flaky topi/tests/python/test_topi_pooling.py:test_adaptive_pool (#5736) add de54754 Fix the values for test_fmod since it fails way too often otherwise (#5723) add 2ec7caa fix small bug about dense_grad (#5695) add a643eb7 [REFACTOR][ARITH] Remove legacy compute_expr.h (#5738) add aa23e72 Add some docs on downstream consistency (#5742) add 7053546 sequential cpp test (#5745) add 6ae439c [REFACTOR][TE][TIR] Call::Halide => ProducerLoad, DSL/TIR decouple. (#5743) add 2e1ef8e Don't add cast for TF batch norm when type isn't changing (#5731) add 0ea9969 [ARITH][BACKPORT-0.6] fix a min/max simplify bug (#5749) add aa80857 [TOPI][Relay][OP] support dynamic NMS(Non Maximum Suppression), symbolic begin, end, and strides for strided_slice (#4312) add 9f79199 Add Scatter to Topi/Relay/ONNX via hybrid script (#5619) add e0e03a1 [Minor][Test] Clean WASM environment before build (#5759) add 54641ec [Bugfix] Fix reshape (#5739) add 10bff27 [REFACTOR][TIR] Provide->ProducerStore, Realize->ProducerRealize. (#5750) add 60cfb79 [Rust] Second stage of Rust Refactor (#5527) new fcdfffa Adapt to new macro new 43325ab Add tvm crate This update added new revisions after undoing existing revisions. That is to say, some revisions that were in the old version of the branch are not in the new version. This situation occurs when a user --force pushes a change and generates a repository containing something like this: * -- * -- B -- O -- O -- O (caa6904) \ N -- N -- N refs/heads/rust-tvm (43325ab) You should already have received notification emails for all of the O revisions, and so the following emails describe only the N revisions from the common base, B. Any revisions marked "omit" are not gone; other references still refer to them. Any revisions marked "discard" are gone forever. The 2 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference. Summary of changes: 3rdparty/dlpack | 2 +- CONTRIBUTORS.md | 4 +- apps/android_camera/models/prepare_model.py | 2 +- apps/benchmark/arm_cpu_imagenet_bench.py | 2 +- apps/benchmark/gpu_imagenet_bench.py | 2 +- apps/benchmark/mobile_gpu_imagenet_bench.py | 2 +- apps/bundle_deploy/build_model.py | 2 +- apps/sgx/src/build_model.py | 2 +- cmake/modules/OpenGL.cmake | 35 -- cmake/modules/contrib/TF_TVMDSOOP.cmake | 1 - docker/Dockerfile.ci_gpu | 3 - docker/install/ubuntu_install_opengl.sh | 26 - docs/api/python/index.rst | 1 + .../relay/{transform.rst => dataflow_pattern.rst} | 7 +- docs/api/python/topi.rst | 2 + docs/langref/relay_op.rst | 1 + docs/langref/relay_pattern.rst | 64 ++- golang/sample/gen_mobilenet_lib.py | 4 +- include/tvm/arith/analyzer.h | 2 +- include/tvm/arith/int_set.h | 2 +- include/tvm/arith/util.h | 45 -- include/tvm/driver/driver_api.h | 2 +- include/tvm/ir/attrs.h | 4 +- include/tvm/ir/error.h | 4 +- include/tvm/ir/function.h | 2 +- include/tvm/ir/module.h | 4 +- include/tvm/ir/op.h | 6 +- include/tvm/ir/transform.h | 7 +- include/tvm/node/container.h | 151 +----- include/tvm/node/node.h | 4 +- include/tvm/node/reflection.h | 3 +- include/tvm/relay/attrs/transform.h | 35 +- include/tvm/relay/attrs/vision.h | 4 +- include/tvm/relay/dataflow_matcher.h | 3 +- include/tvm/relay/dataflow_pattern.h | 18 + include/tvm/relay/dataflow_pattern_functor.h | 3 + include/tvm/relay/expr_functor.h | 2 +- include/tvm/relay/pattern_functor.h | 2 +- include/tvm/relay/transform.h | 2 +- include/tvm/runtime/c_runtime_api.h | 45 +- include/tvm/runtime/container.h | 62 ++- include/tvm/runtime/data_type.h | 46 +- include/tvm/runtime/object.h | 8 +- include/tvm/runtime/packed_func.h | 49 +- include/tvm/te/operation.h | 32 +- include/tvm/te/tensor.h | 19 +- include/tvm/tir/analysis.h | 4 +- include/tvm/tir/buffer.h | 55 ++ include/tvm/tir/expr.h | 83 ++- include/tvm/tir/expr_functor.h | 4 + include/tvm/tir/op.h | 27 +- include/tvm/tir/stmt.h | 170 +++--- include/tvm/tir/stmt_functor.h | 16 +- .../apache/tvm/{TypeCode.java => ArgTypeCode.java} | 4 +- .../src/main/java/org/apache/tvm/Function.java | 14 +- jvm/core/src/main/java/org/apache/tvm/Module.java | 4 +- .../src/main/java/org/apache/tvm/NDArrayBase.java | 2 +- .../src/main/java/org/apache/tvm/TVMValue.java | 4 +- .../main/java/org/apache/tvm/TVMValueBytes.java | 2 +- .../main/java/org/apache/tvm/TVMValueDouble.java | 2 +- .../main/java/org/apache/tvm/TVMValueHandle.java | 4 +- .../src/main/java/org/apache/tvm/TVMValueLong.java | 2 +- .../src/main/java/org/apache/tvm/TVMValueNull.java | 2 +- .../main/java/org/apache/tvm/TVMValueString.java | 2 +- python/tvm/__init__.py | 4 +- python/tvm/_ffi/_ctypes/object.py | 12 +- python/tvm/_ffi/_ctypes/packed_func.py | 56 +- python/tvm/_ffi/_ctypes/types.py | 30 +- python/tvm/_ffi/_cython/base.pxi | 2 +- python/tvm/_ffi/registry.py | 6 +- python/tvm/_ffi/runtime_ctypes.py | 31 +- python/tvm/autotvm/graph_tuner/base_graph_tuner.py | 2 +- .../autotvm/graph_tuner/utils/traverse_graph.py | 4 +- python/tvm/autotvm/task/relay_integration.py | 5 +- python/tvm/autotvm/task/task.py | 8 +- python/tvm/autotvm/task/topi_integration.py | 2 +- python/tvm/autotvm/tophub.py | 4 +- python/tvm/contrib/tf_op/module.py | 2 +- python/tvm/ir/__init__.py | 1 + python/tvm/ir/container.py | 12 - python/tvm/ir/json_compact.py | 11 +- python/tvm/ir/op.py | 114 ++++ python/tvm/ir/transform.py | 18 +- python/tvm/relay/__init__.py | 1 - python/tvm/relay/_parser.py | 4 +- python/tvm/relay/analysis/annotated_regions.py | 4 +- python/tvm/relay/backend/compile_engine.py | 7 +- python/tvm/relay/dataflow_pattern/__init__.py | 243 ++++++--- python/tvm/relay/expr.py | 2 +- python/tvm/relay/expr_functor.py | 2 +- python/tvm/relay/frontend/common.py | 2 +- python/tvm/relay/frontend/keras.py | 4 +- python/tvm/relay/frontend/mxnet.py | 32 +- python/tvm/relay/frontend/onnx.py | 185 ++++++- python/tvm/relay/frontend/pytorch.py | 107 ++-- python/tvm/relay/frontend/tensorflow.py | 212 +++++++- python/tvm/relay/frontend/tflite.py | 69 ++- python/tvm/relay/op/__init__.py | 4 +- python/tvm/relay/op/_tensor_grad.py | 13 +- python/tvm/relay/op/_transform.py | 81 +++ python/tvm/relay/op/contrib/dnnl.py | 4 +- python/tvm/relay/op/op.py | 100 +--- python/tvm/relay/op/strategy/__init__.py | 1 - python/tvm/relay/op/strategy/generic.py | 17 +- python/tvm/relay/op/strategy/opengl.py | 83 --- python/tvm/relay/op/transform.py | 104 +++- python/tvm/relay/op/vision/_vision.py | 37 ++ python/tvm/relay/op/vision/nms.py | 49 +- python/tvm/relay/op/vision/rcnn.py | 4 +- python/tvm/relay/qnn/op/legalizations.py | 3 +- python/tvm/relay/qnn/op/op.py | 4 +- python/tvm/relay/quantize/_annotate.py | 9 +- python/tvm/relay/quantize/_calibrate.py | 3 +- python/tvm/relay/quantize/_partition.py | 5 +- python/tvm/relay/testing/py_converter.py | 2 +- python/tvm/relay/transform/memory_plan.py | 2 +- python/tvm/relay/transform/transform.py | 16 +- python/tvm/rpc/client.py | 4 - python/tvm/runtime/__init__.py | 4 +- python/tvm/runtime/ndarray.py | 18 +- python/tvm/runtime/object.py | 2 +- python/tvm/target/__init__.py | 2 +- python/tvm/target/datatype.py | 6 +- python/tvm/target/target.py | 12 - python/tvm/te/hybrid/parser.py | 16 +- python/tvm/te/hybrid/util.py | 15 +- python/tvm/te/schedule.py | 7 - python/tvm/te/tensor.py | 9 +- python/tvm/tir/__init__.py | 8 +- python/tvm/tir/buffer.py | 5 + python/tvm/tir/expr.py | 36 +- python/tvm/tir/ir_builder.py | 2 +- python/tvm/tir/op.py | 18 +- python/tvm/tir/stmt.py | 40 +- rust/Cargo.toml | 5 +- rust/common/src/packed_func.rs | 56 +- rust/frontend/examples/resnet/src/build_resnet.py | 4 +- rust/frontend/src/context.rs | 1 - rust/frontend/src/function.rs | 8 +- rust/macros/Cargo.toml | 2 +- rust/macros/src/lib.rs | 124 ++++- rust/macros/src/util.rs | 11 - rust/runtime/Cargo.toml | 2 +- rust/runtime/src/lib.rs | 1 + rust/runtime/tests/test_wasm32/Cargo.toml | 1 + rust/{macros => tvm-macros}/Cargo.toml | 0 rust/{macros => tvm-macros}/src/external.rs | 73 ++- rust/{macros => tvm-macros}/src/import_module.rs | 0 rust/{macros => tvm-macros}/src/lib.rs | 0 rust/{macros => tvm-macros}/src/object.rs | 0 .../tvmrpc/main.m => rust/tvm-macros/src/util.rs | 17 +- rust/tvm-rt/Cargo.toml | 3 +- rust/tvm-rt/README.md | 225 +------- rust/tvm-rt/src/context.rs | 18 + rust/tvm-rt/src/errors.rs | 2 + rust/tvm-rt/src/function.rs | 152 ++---- rust/tvm-rt/src/lib.rs | 36 +- rust/tvm-rt/src/module.rs | 14 +- rust/tvm-rt/src/ndarray.rs | 21 +- rust/tvm-rt/src/object/mod.rs | 21 +- rust/tvm-rt/src/object/object_ptr.rs | 128 +++-- rust/tvm-rt/src/string.rs | 61 ++- rust/tvm-rt/src/to_boxed_fn.rs | 45 +- rust/tvm-rt/src/to_function.rs | 96 +--- rust/tvm-rt/tests/test_ir.rs | 36 -- rust/tvm-sys/src/packed_func.rs | 56 +- rust/tvm/Cargo.toml | 2 +- rust/tvm/src/ir/array.rs | 12 +- rust/tvm/src/transform.rs | 7 +- src/arith/compute_expr.h | 109 ---- src/arith/const_int_bound.cc | 2 +- src/arith/int_operator.h | 65 +++ src/arith/modular_set.cc | 63 +-- src/arith/rewrite_simplify.cc | 10 +- src/arith/rewrite_simplify.h | 2 +- src/arith/solve_linear_equation.cc | 7 +- src/arith/util.cc | 53 -- src/autotvm/touch_extractor.h | 2 +- src/contrib/hybrid/codegen_hybrid.cc | 65 +-- src/contrib/hybrid/codegen_hybrid.h | 13 +- src/contrib/tf_op/tvm_dso_op_kernels.cc | 23 +- src/contrib/tf_op/tvm_dso_ops.cc | 8 +- src/driver/driver_api.cc | 2 +- src/ir/attr_functor.h | 2 - src/ir/attrs.cc | 4 +- src/ir/error.cc | 2 +- src/ir/expr.cc | 23 +- src/ir/op.cc | 76 ++- src/ir/transform.cc | 15 +- src/node/container.cc | 184 +++---- src/node/reflection.cc | 6 +- src/node/serialization.cc | 63 ++- src/node/structural_equal.cc | 4 +- src/node/structural_hash.cc | 2 +- src/printer/meta_data.h | 7 +- src/printer/relay_text_printer.cc | 10 +- src/printer/text_printer.h | 11 +- src/printer/tir_text_printer.cc | 12 +- src/relay/analysis/annotated_region_set.h | 10 +- src/relay/analysis/call_graph.h | 4 +- src/relay/analysis/dependency_graph.cc | 2 +- src/relay/analysis/dependency_graph.h | 2 +- src/relay/analysis/extract_fused_functions.cc | 2 +- src/relay/analysis/feature.cc | 2 +- src/relay/analysis/type_solver.h | 2 +- src/relay/analysis/util.cc | 9 +- src/relay/analysis/well_formed.cc | 8 +- src/relay/backend/build_module.cc | 20 +- src/relay/backend/compile_engine.cc | 6 +- src/relay/backend/contrib/codegen_c/codegen.cc | 19 + src/relay/backend/contrib/codegen_c/codegen_c.h | 47 +- src/relay/backend/contrib/dnnl/codegen.cc | 12 +- src/relay/backend/graph_runtime_codegen.cc | 2 +- src/relay/backend/param_dict.cc | 2 +- src/relay/backend/utils.h | 6 +- src/relay/backend/vm/compiler.cc | 14 +- src/relay/backend/vm/compiler.h | 4 +- src/relay/backend/vm/inline_primitives.cc | 2 +- src/relay/backend/vm/lambda_lift.cc | 2 +- src/relay/backend/vm/removed_unused_funcs.cc | 2 +- src/relay/ir/dataflow_matcher.cc | 95 +++- src/relay/ir/dataflow_pattern.cc | 12 + src/relay/ir/dataflow_pattern_functor.cc | 2 + src/relay/ir/expr_functor.cc | 20 +- src/relay/ir/indexed_graph.cc | 2 + src/relay/ir/indexed_graph.h | 2 +- src/relay/ir/transform.cc | 2 + src/relay/op/op_common.h | 2 +- src/relay/op/tensor/transform.cc | 427 +++++++++++---- src/relay/op/vision/nms.cc | 25 +- src/relay/transforms/annotate_target.cc | 2 +- src/relay/transforms/combine_parallel_conv2d.cc | 17 +- src/relay/transforms/combine_parallel_op.h | 7 +- src/relay/transforms/convert_layout.cc | 8 +- src/relay/transforms/de_duplicate.cc | 4 +- src/relay/transforms/dead_code.cc | 4 +- src/relay/transforms/eliminate_common_subexpr.cc | 2 +- src/relay/transforms/eta_expand.cc | 2 +- src/relay/transforms/expr_subst.cc | 4 +- src/relay/transforms/expr_subst.h | 3 +- src/relay/transforms/fold_constant.cc | 2 +- src/relay/transforms/gradient.cc | 4 +- src/relay/transforms/merge_compiler_regions.cc | 2 +- src/relay/transforms/merge_composite.cc | 2 +- src/relay/transforms/partial_eval.cc | 8 +- src/relay/transforms/partition_graph.cc | 10 +- src/relay/transforms/pattern_util.h | 2 +- src/relay/transforms/simplify_inference.cc | 2 +- src/relay/transforms/to_a_normal_form.cc | 2 +- src/relay/transforms/to_cps.cc | 4 +- src/relay/transforms/to_graph_normal_form.cc | 2 +- src/relay/transforms/type_infer.cc | 10 +- src/runtime/crt/crt_backend_api.c | 2 + src/runtime/crt/ndarray.c | 6 +- src/runtime/graph/debug/graph_runtime_debug.cc | 3 +- src/runtime/graph/graph_runtime.cc | 13 +- src/runtime/micro/standalone/utvm_graph_runtime.cc | 2 +- src/runtime/object.cc | 9 +- src/runtime/opengl/opengl_common.h | 490 ----------------- src/runtime/opengl/opengl_device_api.cc | 599 --------------------- src/runtime/opengl/opengl_module.cc | 284 ---------- src/runtime/opengl/opengl_module.h | 180 ------- src/runtime/rpc/rpc_module.cc | 2 +- src/runtime/vm/vm.cc | 12 +- src/target/datatype/registry.cc | 8 +- src/target/datatype/registry.h | 2 +- src/target/llvm/codegen_llvm.cc | 52 -- src/target/llvm/codegen_llvm.h | 1 - src/target/llvm/codegen_nvptx.cc | 62 ++- src/target/llvm/intrin_rule_rocm.cc | 52 ++ src/target/source/codegen_c.cc | 3 +- src/target/spirv/codegen_spirv.cc | 3 +- src/target/target.cc | 3 +- src/te/autodiff/jacobian.cc | 32 +- src/te/operation/compute_op.cc | 34 +- src/te/operation/cross_thread_reduction.cc | 4 +- src/te/operation/extern_op.cc | 7 +- src/te/operation/hybrid_op.cc | 19 +- src/te/operation/op_util.cc | 24 +- src/te/operation/scan_op.cc | 8 +- src/te/operation/tensor_compute_op.cc | 1 - src/te/operation/tensorize.cc | 25 +- src/te/schedule/graph.cc | 26 +- src/te/schedule/message_passing.cc | 2 - src/te/schedule/operation_inline.cc | 19 +- src/te/schedule/schedule_dataflow_rewrite.cc | 13 +- src/te/schedule/schedule_lang.cc | 4 +- src/te/schedule/schedule_ops.cc | 45 +- .../schedule_postproc_rewrite_for_tensor_core.cc | 305 +++++------ src/te/schedule/schedule_postproc_to_primfunc.cc | 29 +- src/te/tensor.cc | 10 +- src/tir/analysis/verify_gpu_code.cc | 4 +- src/tir/ir/buffer.cc | 6 +- src/tir/ir/expr.cc | 46 +- src/tir/ir/expr_functor.cc | 16 +- src/tir/ir/stmt.cc | 95 ++-- src/tir/ir/stmt_functor.cc | 16 +- src/tir/transforms/arg_binder.cc | 7 +- src/tir/transforms/inject_double_buffer.cc | 4 +- src/tir/transforms/inject_virtual_thread.cc | 7 +- src/tir/transforms/lower_thread_allreduce.cc | 18 +- src/tir/transforms/lower_warp_memory.cc | 2 +- src/tir/transforms/remove_no_op.cc | 4 +- src/tir/transforms/storage_access.cc | 2 +- src/tir/transforms/storage_flatten.cc | 16 +- src/tir/transforms/storage_rewrite.cc | 10 +- src/tir/transforms/thread_storage_sync.cc | 2 +- src/tir/transforms/unroll_loop.cc | 1 - src/tir/transforms/vectorize_loop.cc | 48 +- tests/cpp/container_test.cc | 22 +- tests/cpp/relay_build_module_test.cc | 2 +- ...ntial.cc => relay_transform_sequential_test.cc} | 46 +- tests/lint/git-clang-format.sh | 18 +- tests/python/frontend/caffe2/test_forward.py | 2 +- tests/python/frontend/coreml/test_forward.py | 4 +- tests/python/frontend/keras/test_forward.py | 2 +- tests/python/frontend/mxnet/test_forward.py | 14 +- tests/python/frontend/mxnet/test_qnn_ops_utils.py | 6 +- tests/python/frontend/onnx/test_forward.py | 423 ++++++++++----- tests/python/frontend/pytorch/qnn_test.py | 2 +- tests/python/frontend/pytorch/test_forward.py | 225 +++++++- .../python/frontend/tensorflow/test_bn_dynamic.py | 2 +- tests/python/frontend/tensorflow/test_debugging.py | 7 +- tests/python/frontend/tensorflow/test_forward.py | 376 ++++++++++++- tests/python/frontend/tflite/test_forward.py | 242 ++++++++- tests/python/integration/test_ewise.py | 11 +- tests/python/integration/test_reduce.py | 12 +- .../quantization/test_quantization_accuracy.py | 4 +- tests/python/relay/benchmarking/benchmark_vm.py | 4 +- tests/python/relay/test_any.py | 51 +- tests/python/relay/test_backend_compile_engine.py | 2 +- tests/python/relay/test_backend_graph_runtime.py | 2 +- tests/python/relay/test_cpp_build_module.py | 2 +- tests/python/relay/test_dataflow_pattern.py | 484 ++++++++++++----- tests/python/relay/test_external_codegen.py | 6 +- tests/python/relay/test_ir_op.py | 11 +- tests/python/relay/test_ir_parser.py | 2 +- tests/python/relay/test_ir_text_printer.py | 10 + tests/python/relay/test_json_compact.py | 47 ++ tests/python/relay/test_memory_passes.py | 2 +- tests/python/relay/test_op_fast_math.py | 2 +- tests/python/relay/test_op_grad_level2.py | 1 + tests/python/relay/test_op_level2.py | 12 +- tests/python/relay/test_op_level3.py | 103 +++- tests/python/relay/test_op_level4.py | 64 ++- tests/python/relay/test_op_level5.py | 62 ++- tests/python/relay/test_op_qnn_conv2d.py | 10 +- tests/python/relay/test_op_qnn_dense.py | 2 +- tests/python/relay/test_op_qnn_dequantize.py | 2 +- tests/python/relay/test_op_qnn_quantize.py | 2 +- tests/python/relay/test_op_qnn_requantize.py | 2 +- tests/python/relay/test_pass_alter_op_layout.py | 41 +- tests/python/relay/test_pass_annotate_target.py | 17 +- tests/python/relay/test_pass_annotation.py | 12 +- .../relay/test_pass_combine_parallel_conv2d.py | 58 +- tests/python/relay/test_pass_fast_math.py | 4 +- tests/python/relay/test_pass_fold_constant.py | 2 +- tests/python/relay/test_pass_manager.py | 12 +- tests/python/relay/test_pass_partition_graph.py | 71 ++- tests/python/relay/test_simplify_fc_transpose.py | 2 +- tests/python/relay/test_sparse_dense_convert.py | 2 +- .../unittest/test_arith_canonical_simplify.py | 2 +- .../python/unittest/test_arith_rewrite_simplify.py | 12 + tests/python/unittest/test_runtime_extension.py | 3 +- .../python/unittest/test_runtime_module_export.py | 6 +- tests/python/unittest/test_runtime_ndarray.py | 7 + tests/python/unittest/test_target_codegen_blob.py | 4 +- tests/python/unittest/test_target_codegen_cuda.py | 248 +++++---- tests/python/unittest/test_target_codegen_llvm.py | 2 +- tests/python/unittest/test_target_codegen_rocm.py | 4 +- tests/python/unittest/test_te_hybrid_script.py | 72 +-- tests/python/unittest/test_te_tensor.py | 4 +- tests/python/unittest/test_tir_constructor.py | 14 +- tests/python/unittest/test_tir_nodes.py | 26 +- .../test_tir_transform_combine_context_call.py | 2 +- .../test_tir_transform_lower_warp_memory.py | 27 +- tests/scripts/task_python_docs.sh | 5 +- tests/scripts/task_sphinx_precheck.sh | 6 +- tests/scripts/task_web_wasm.sh | 1 + topi/include/topi/detail/extern.h | 2 +- topi/include/topi/nn/softmax.h | 2 +- topi/include/topi/transform.h | 72 ++- topi/python/topi/__init__.py | 2 +- topi/python/topi/arm_cpu/conv2d.py | 21 +- topi/python/topi/arm_cpu/conv2d_alter_op.py | 2 +- topi/python/topi/arm_cpu/conv2d_spatial_pack.py | 44 +- topi/python/topi/bifrost/conv2d.py | 24 +- topi/python/topi/cuda/conv2d_alter_op.py | 3 +- topi/python/topi/cuda/nms.py | 32 +- topi/python/topi/cuda/rcnn/proposal.py | 12 +- topi/python/topi/cuda/softmax.py | 8 +- topi/python/topi/cuda/sort.py | 6 +- topi/python/topi/cuda/ssd/multibox.py | 2 +- topi/python/topi/generic/search.py | 16 + topi/python/topi/image/dilation2d.py | 12 +- topi/python/topi/mali/conv2d.py | 31 +- topi/python/topi/math.py | 12 +- topi/python/topi/opengl/__init__.py | 26 - topi/python/topi/opengl/conv2d_nchw.py | 73 --- topi/python/topi/opengl/dense.py | 67 --- topi/python/topi/opengl/injective.py | 62 --- topi/python/topi/opengl/pooling.py | 121 ----- topi/python/topi/opengl/softmax.py | 58 -- topi/python/topi/scatter.py | 165 ++++++ topi/python/topi/sort.py | 4 +- topi/python/topi/testing/common.py | 2 - topi/python/topi/testing/strided_slice_python.py | 32 +- topi/python/topi/transform.py | 46 +- topi/python/topi/vision/nms.py | 226 ++++++-- topi/python/topi/vision/rcnn/proposal.py | 8 +- topi/python/topi/vision/ssd/multibox.py | 2 +- topi/python/topi/x86/conv2d_alter_op.py | 4 +- topi/python/topi/x86/conv3d.py | 6 +- topi/src/transform.cc | 6 +- topi/tests/python/test_topi_dense.py | 1 - topi/tests/python/test_topi_pooling.py | 2 +- topi/tests/python/test_topi_softmax.py | 1 - topi/tests/python/test_topi_transform.py | 63 +++ topi/tests/python/test_topi_vision.py | 54 +- tutorials/autotvm/tune_relay_arm.py | 2 +- tutorials/autotvm/tune_relay_cuda.py | 2 +- tutorials/autotvm/tune_relay_mobile_gpu.py | 2 +- tutorials/autotvm/tune_relay_x86.py | 2 +- tutorials/dev/relay_pass_infra.py | 10 +- tutorials/frontend/build_gcn.py | 2 +- tutorials/frontend/deploy_model_on_android.py | 2 +- tutorials/frontend/deploy_model_on_rasp.py | 2 +- tutorials/frontend/deploy_prequantized.py | 2 +- tutorials/frontend/deploy_prequantized_tflite.py | 2 +- tutorials/frontend/deploy_ssd_gluoncv.py | 2 +- tutorials/frontend/from_caffe2.py | 4 +- tutorials/frontend/from_coreml.py | 2 +- tutorials/frontend/from_darknet.py | 2 +- tutorials/frontend/from_keras.py | 2 +- tutorials/frontend/from_mxnet.py | 2 +- tutorials/frontend/from_onnx.py | 2 +- tutorials/frontend/from_pytorch.py | 2 +- tutorials/frontend/from_tensorflow.py | 2 +- tutorials/frontend/from_tflite.py | 4 +- tutorials/relay_quick_start.py | 2 +- vta/python/vta/environment.py | 2 +- vta/python/vta/top/graphpack.py | 2 +- vta/python/vta/transform.py | 2 +- vta/scripts/tune_resnet.py | 4 +- vta/tutorials/autotvm/tune_relay_vta.py | 2 +- vta/tutorials/frontend/deploy_classification.py | 2 +- vta/tutorials/frontend/deploy_detection.py | 2 +- web/src/ctypes.ts | 6 +- web/src/rpc_server.ts | 6 +- web/src/runtime.ts | 77 +-- 450 files changed, 7150 insertions(+), 6039 deletions(-) delete mode 100644 cmake/modules/OpenGL.cmake delete mode 100755 docker/install/ubuntu_install_opengl.sh copy docs/api/python/relay/{transform.rst => dataflow_pattern.rst} (86%) delete mode 100644 include/tvm/arith/util.h rename jvm/core/src/main/java/org/apache/tvm/{TypeCode.java => ArgTypeCode.java} (95%) create mode 100644 python/tvm/ir/op.py delete mode 100644 python/tvm/relay/op/strategy/opengl.py delete mode 100644 rust/macros/src/util.rs copy rust/{macros => tvm-macros}/Cargo.toml (100%) rename rust/{macros => tvm-macros}/src/external.rs (70%) rename rust/{macros => tvm-macros}/src/import_module.rs (100%) copy rust/{macros => tvm-macros}/src/lib.rs (100%) rename rust/{macros => tvm-macros}/src/object.rs (100%) copy apps/ios_rpc/tvmrpc/main.m => rust/tvm-macros/src/util.rs (78%) delete mode 100644 rust/tvm-rt/tests/test_ir.rs delete mode 100644 src/arith/compute_expr.h delete mode 100644 src/arith/util.cc delete mode 100644 src/runtime/opengl/opengl_common.h delete mode 100644 src/runtime/opengl/opengl_device_api.cc delete mode 100644 src/runtime/opengl/opengl_module.cc delete mode 100644 src/runtime/opengl/opengl_module.h rename tests/cpp/{relay_transform_sequential.cc => relay_transform_sequential_test.cc} (69%) delete mode 100644 topi/python/topi/opengl/__init__.py delete mode 100644 topi/python/topi/opengl/conv2d_nchw.py delete mode 100644 topi/python/topi/opengl/dense.py delete mode 100644 topi/python/topi/opengl/injective.py delete mode 100644 topi/python/topi/opengl/pooling.py delete mode 100644 topi/python/topi/opengl/softmax.py create mode 100644 topi/python/topi/scatter.py