This is an automated email from the ASF dual-hosted git repository. jroesch pushed a change to branch ci-docker-staging in repository https://gitbox.apache.org/repos/asf/incubator-tvm.git.
discard f90cc57 Build with USE_LLVM on to fix cpp unittests. discard 073bc6e add QEMU build to regression add ed70dca Refactor the type checker to use diagnostics add 9565d30 Apply suggestions from code review add dd0c616 Apply suggestions from code review add 2419435 Clean up parser add 1a5e328 CR feedback add 997692e Apply Bobs suggestions add eaceca9 Fix up Python interface for diagnostics add d6bbc29 Fix test_ir_parser and formatting add d1a6bfe Fix cpplint add e61d7e8 Fix lint add 328afd6 Fix format add f0f9999 More lint new 2952d3c Fix documentation comment new 7ae6990 Kill dead doc comment new 44a785c Fix rebase issues add 86122d1 [FIX,AUTOTVM] Print warning when all autotvm tasks fail with errors (#6612) add 311eca4 Fix a bug with Alter Op Layout (#6626) add feb041d bump dockerfile (#6632) add 277bfc8 [Rust] Improve NDArray, GraphRt, and Relay bindings (#6563) add dec5030 Fix example code (#6627) add 82289ea [TVMC] fail gracefully in case no subcommand is provided (#6625) add 8369adc Add dot product support for quantized convolution. (#6445) add 889fac1 [Topi] Allow batch_matmul to broadcast along batch dimension. (#6616) add 35793ae [COMMUNITY] areusch -> Reviewer (#6637) add 0cfda17 [CI] fix Python dependency required by cpp tests to work standalone (#6639) new 9ea627b Merge branch 'master' of https://github.com/apache/incubator-tvm new d4001e5 Turn on Rust docs and MxNet based ResNet 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 (f90cc57) \ N -- N -- N refs/heads/ci-docker-staging (d4001e5) 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 5 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: CMakeLists.txt | 1 + CONTRIBUTORS.md | 1 + Jenkinsfile | 17 +- Makefile | 5 + docker/install/ubuntu_install_darknet.sh | 7 +- include/tvm/ir/diagnostic.h | 262 ++++++ include/tvm/ir/module.h | 12 +- include/tvm/ir/span.h | 2 +- include/tvm/ir/transform.h | 14 +- include/tvm/ir/type.h | 15 +- include/tvm/ir/type_relation.h | 13 +- include/tvm/parser/parser.h | 3 +- include/tvm/parser/source_map.h | 69 +- include/tvm/relay/adt.h | 1 + include/tvm/relay/analysis.h | 9 +- include/tvm/relay/attrs/nn.h | 12 +- include/tvm/relay/transform.h | 12 - include/tvm/runtime/container.h | 14 + include/tvm/runtime/ndarray.h | 3 +- include/tvm/runtime/object.h | 8 +- include/tvm/tir/data_layout.h | 3 + include/tvm/tir/op.h | 1 + include/tvm/topi/nn/batch_matmul.h | 67 -- pyproject.toml | 2 +- python/tvm/__init__.py | 9 +- python/tvm/autotvm/tuner/tuner.py | 17 + python/tvm/driver/tvmc/main.py | 5 +- python/tvm/ir/__init__.py | 1 + python/tvm/ir/diagnostics/__init__.py | 109 +++ python/tvm/{arith => ir/diagnostics}/_ffi_api.py | 4 +- python/tvm/ir/module.py | 16 +- python/tvm/parser/__init__.py | 14 +- python/tvm/relay/backend/graph_runtime_factory.py | 4 +- python/tvm/relay/backend/interpreter.py | 4 +- python/tvm/relay/build_module.py | 2 + python/tvm/relay/dataflow_pattern/__init__.py | 2 +- python/tvm/relay/frontend/onnx.py | 9 - python/tvm/relay/op/strategy/arm_cpu.py | 44 +- python/tvm/relay/prelude.py | 578 +++++++------ .../tvm/relay/quantize/_partition_conversions.py | 8 +- python/tvm/relay/quantize/quantize.py | 2 +- python/tvm/relay/std/nat.rly | 78 ++ python/tvm/relay/std/prelude.rly | 5 +- python/tvm/relay/testing/__init__.py | 3 +- python/tvm/relay/testing/nat.py | 149 +--- python/tvm/relay/testing/py_converter.py | 27 +- python/tvm/relay/transform/memory_alloc.py | 2 + python/tvm/relay/transform/transform.py | 14 + python/tvm/topi/arm_cpu/arm_utils.py | 100 +++ python/tvm/topi/arm_cpu/conv2d_alter_op.py | 105 ++- python/tvm/topi/arm_cpu/conv2d_gemm.py | 283 +++++-- python/tvm/topi/arm_cpu/conv2d_int8.py | 120 ++- python/tvm/topi/arm_cpu/tensor_intrin.py | 298 ++++++- python/tvm/topi/nn/batch_matmul.py | 28 +- python/tvm/topi/testing/batch_matmul.py | 7 +- python/tvm/topi/x86/batch_matmul.py | 10 +- rust/tvm-graph-rt/src/graph.rs | 8 +- rust/tvm-graph-rt/src/threading.rs | 4 +- rust/tvm-macros/Cargo.toml | 1 + rust/tvm-rt/Cargo.toml | 1 + rust/tvm-rt/src/array.rs | 17 + rust/tvm-rt/src/errors.rs | 2 - rust/tvm-rt/src/ndarray.rs | 322 ++++--- rust/tvm-rt/src/object/object_ptr.rs | 72 +- rust/tvm-rt/src/string.rs | 4 +- rust/tvm-rt/src/value.rs | 56 +- rust/tvm-sys/src/packed_func.rs | 15 + rust/tvm/Cargo.toml | 4 + rust/tvm/examples/resnet/Cargo.toml | 3 +- rust/tvm/examples/resnet/build.rs | 10 +- rust/tvm/examples/resnet/src/build_resnet.py | 95 ++- rust/tvm/examples/resnet/src/main.rs | 130 ++- rust/tvm/src/ir/arith.rs | 2 +- .../backtrace.h => rust/tvm/src/ir/attrs.rs | 17 +- rust/tvm/src/ir/{mod.rs => expr.rs} | 66 +- .../gotvm_test.go => rust/tvm/src/ir/function.rs | 40 +- rust/tvm/src/ir/mod.rs | 62 +- rust/tvm/src/ir/module.rs | 159 ++++ .../css/tvm_theme.css => rust/tvm/src/ir/op.rs | 42 +- rust/tvm/src/{runtime => ir/relay/attrs}/mod.rs | 3 +- rust/tvm/src/ir/relay/attrs/nn.rs | 96 +++ .../tvm/src/ir/relay/attrs/transform.rs | 19 +- rust/tvm/src/ir/relay/mod.rs | 499 ++++++++--- .../relay/std/core.rly => rust/tvm/src/ir/span.rs | 4 +- rust/tvm/src/ir/tir.rs | 4 +- rust/tvm/src/ir/ty.rs | 242 ++++++ rust/tvm/src/lib.rs | 2 + rust/tvm/src/python.rs | 60 ++ rust/tvm/src/runtime/graph_rt.rs | 97 +++ rust/tvm/src/runtime/mod.rs | 2 + rust/tvm/tests/basics/src/main.rs | 4 +- rust/tvm/tests/callback/src/bin/array.rs | 19 +- src/driver/driver_api.cc | 22 +- src/ir/diagnostic.cc | 282 +++++++ src/ir/module.cc | 114 ++- src/ir/span.cc | 6 +- src/ir/transform.cc | 26 +- src/ir/type.cc | 18 +- src/parser/diagnostic.h | 179 ---- src/parser/parser.cc | 807 +++++++++++------- src/parser/source_map.cc | 90 +- src/parser/span_check.cc | 109 +++ src/parser/span_check.h | 80 ++ src/parser/token.h | 15 + src/parser/tokenizer.h | 64 +- src/printer/relay_text_printer.cc | 15 +- src/relay/analysis/kind_check.cc | 53 +- src/relay/analysis/type_solver.cc | 107 ++- src/relay/analysis/type_solver.h | 23 +- src/relay/analysis/well_formed.cc | 43 +- src/relay/backend/build_module.cc | 5 + src/relay/backend/compile_engine.h | 2 +- src/relay/backend/graph_runtime_codegen.cc | 4 +- src/relay/backend/interpreter.cc | 4 +- src/relay/backend/vm/compiler.cc | 1 + src/relay/ir/transform.cc | 32 +- src/relay/op/nn/convolution.cc | 4 +- src/relay/op/nn/convolution.h | 90 +- src/relay/op/nn/nn.cc | 6 +- src/relay/qnn/op/convolution.cc | 6 +- src/relay/transforms/combine_parallel_conv2d.cc | 3 +- src/relay/transforms/partition_graph.cc | 4 + src/relay/transforms/pattern_util.h | 2 +- src/relay/transforms/transform_layout.h | 2 +- src/relay/transforms/type_infer.cc | 280 +++--- src/runtime/contrib/random/mt_random_engine.cc | 2 +- src/runtime/ndarray.cc | 5 +- src/tir/transforms/split_host_device.cc | 3 +- src/topi/nn.cc | 6 - tests/cpp/relay_build_module_test.cc | 2 + tests/python/frontend/onnx/test_forward.py | 1 - tests/python/relay/test_adt.py | 938 +++------------------ .../relay/test_analysis_get_calibration_data.py | 3 + tests/python/relay/test_any.py | 7 +- tests/python/relay/test_backend_graph_runtime.py | 2 + tests/python/relay/test_backend_interpreter.py | 9 +- .../test_graph.py => relay/test_diagnostic.py} | 44 +- tests/python/relay/test_error_reporting.py | 68 -- tests/python/relay/test_expr_functor.py | 3 +- tests/python/relay/test_ir_module.py | 20 +- tests/python/relay/test_ir_parser.py | 47 +- .../python/relay/test_ir_structural_equal_hash.py | 35 +- tests/python/relay/test_ir_text_printer.py | 15 +- tests/python/relay/test_ir_well_formed.py | 7 +- tests/python/relay/test_op_qnn_add.py | 7 + tests/python/relay/test_op_qnn_concatenate.py | 4 + tests/python/relay/test_op_qnn_dense.py | 1 + tests/python/relay/test_op_qnn_mul.py | 5 + tests/python/relay/test_op_qnn_subtract.py | 1 + tests/python/relay/test_pass_alter_op_layout.py | 96 ++- tests/python/relay/test_pass_annotate_target.py | 2 + .../test_pass_combine_parallel_batch_matmul.py | 1 + .../relay/test_pass_combine_parallel_conv2d.py | 1 + .../relay/test_pass_combine_parallel_dense.py | 1 + tests/python/relay/test_pass_eta_expand.py | 4 +- tests/python/relay/test_pass_fold_constant.py | 4 +- tests/python/relay/test_pass_fuse_ops.py | 17 +- tests/python/relay/test_pass_gradient.py | 9 +- tests/python/relay/test_pass_inline.py | 5 +- tests/python/relay/test_pass_lazy_gradient_init.py | 20 +- tests/python/relay/test_pass_mac_count.py | 1 + tests/python/relay/test_pass_manager.py | 5 +- .../relay/test_pass_merge_compiler_regions.py | 2 + tests/python/relay/test_pass_partial_eval.py | 91 +- tests/python/relay/test_pass_partition_graph.py | 40 +- tests/python/relay/test_pass_qnn_legalize.py | 4 + .../relay/test_pass_remove_unused_functions.py | 26 +- tests/python/relay/test_pass_simplify_inference.py | 4 +- tests/python/relay/test_pass_to_a_normal_form.py | 11 +- .../relay/test_pass_to_basic_block_normal_form.py | 20 +- tests/python/relay/test_pass_to_cps.py | 9 +- tests/python/relay/test_pass_unmatched_cases.py | 82 +- tests/python/relay/test_pass_vars.py | 13 +- tests/python/relay/test_py_converter.py | 54 +- tests/python/relay/test_tensor_array.py | 784 +++++++++++++++++ tests/python/relay/test_type_infer.py | 142 ++-- tests/python/relay/test_vm.py | 65 +- tests/python/relay/test_vm_serialization.py | 19 +- tests/python/relay/util/assert_diagnostic.py | 69 ++ tests/python/topi/python/test_topi_batch_matmul.py | 21 +- tests/python/topi/python/test_topi_conv2d_int8.py | 105 ++- tests/scripts/task_config_build_qemu.sh | 32 - tests/scripts/task_cpp_unittest.sh | 3 + tests/scripts/task_python_docs.sh | 6 + tests/scripts/task_python_microtvm.sh | 20 - tests/scripts/task_rust.sh | 9 +- 186 files changed, 6762 insertions(+), 3561 deletions(-) create mode 100644 include/tvm/ir/diagnostic.h delete mode 100644 include/tvm/topi/nn/batch_matmul.h create mode 100644 python/tvm/ir/diagnostics/__init__.py copy python/tvm/{arith => ir/diagnostics}/_ffi_api.py (91%) create mode 100644 python/tvm/relay/std/nat.rly create mode 100644 python/tvm/topi/arm_cpu/arm_utils.py copy apps/bundle_deploy/backtrace.h => rust/tvm/src/ir/attrs.rs (82%) copy rust/tvm/src/ir/{mod.rs => expr.rs} (74%) copy golang/src/gotvm_test.go => rust/tvm/src/ir/function.rs (59%) create mode 100644 rust/tvm/src/ir/module.rs copy docs/_static/css/tvm_theme.css => rust/tvm/src/ir/op.rs (58%) copy rust/tvm/src/{runtime => ir/relay/attrs}/mod.rs (96%) create mode 100644 rust/tvm/src/ir/relay/attrs/nn.rs copy apps/bundle_deploy/backtrace.h => rust/tvm/src/ir/relay/attrs/transform.rs (74%) copy python/tvm/relay/std/core.rly => rust/tvm/src/ir/span.rs (93%) create mode 100644 rust/tvm/src/ir/ty.rs create mode 100644 rust/tvm/src/python.rs create mode 100644 rust/tvm/src/runtime/graph_rt.rs create mode 100644 src/ir/diagnostic.cc delete mode 100644 src/parser/diagnostic.h create mode 100644 src/parser/span_check.cc create mode 100644 src/parser/span_check.h copy tests/python/{frontend/caffe2/test_graph.py => relay/test_diagnostic.py} (52%) delete mode 100644 tests/python/relay/test_error_reporting.py create mode 100644 tests/python/relay/test_tensor_array.py create mode 100644 tests/python/relay/util/assert_diagnostic.py delete mode 100755 tests/scripts/task_config_build_qemu.sh delete mode 100755 tests/scripts/task_python_microtvm.sh