This is an automated email from the ASF dual-hosted git repository. mbrookhart pushed a change to branch ci-docker-staging in repository https://gitbox.apache.org/repos/asf/tvm.git.
discard 946bdbe [CI] Update to the latest version add 27e44ee [Relay] Support dynamic indices size in gather_nd and scatter_nd (#8105) add e26990f [AutoTVM][AutoScheduler] Add workaround to alter op layout bug in task extraction. (#8143) add 8b5d843 Fix tvmc tuner for cases when uTVM is not enabled (#8153) add e535ec8 [VM] Avoid round-trip Target->str->Target conversions (#8161) add 1fe9f8d [CMake][Minor] Update CMake warning flags (#8152) add 4bbbfe8 [Fix] Fix conv2d HWNC type strategy (#8147) add 7316a38 [CI] Fix the CI after image update. (#8164) add 713de0c [CI][DOCKER] Fix cuda11 nvidia-docker support for non-Tesla gpus (#8163) add eebd5a9 [FastMath] Add cuda & x86 schedules for fast_softmax (#8150) add bd4b14d Update auto_tuning_with_python.py (#8158) add 06a466c allow libbacktrace to be used when cross compiling the runtime (#7917) add 106c331 [microTVM] make RVM memory and number of cores variable (#8154) add 6baccc1 [ONNX] [Relay] Update unique operator to match ONNX output (1D only) (#8099) add bc785de Add function attribute for shape func for profiling (#8148) add bb3e772 [Vulkan][Docs] Minor updates following Vulkan target query. (#8151) add 0c83fe8 [Vulkan] Remove dependency on Target from -from_device functionality. (#8171) add b7c98b8 [Strategy] Add group_conv2d_nchw_int8 in cuda strategy (#8167) add cbe3dca [Relay, TOPI] Refactor strided_slice and add axes argument (#8165) add cc3d60e [BYOC][TensorRT] Reuse TRT engines based on max_batch_size for dynamic batching, improve device buffer allocation (#8172) add 155f669 [TVMC] Fix tvmc compile to extract target and target_host from --target (#8176) add b753772 fix UTF (#8185) add dd09bbb [TensorIR][M2a] ComputeInline,ReverseComputeInline (#8170) add 7c99d83 [Vulkan][UnitTests] Compatibility fix for test_vulkan_unique(). (#8186) add aca48d6 [Vulkan] Corrected typo in Vulkan capability error messages. (#8187) add ae4a3be [Vulkan][Refactor] Pull out vulkan initialization into VulkanInstance and VulkanDevice (#8188) add c7f1b45 Onnx eyelike (#8191) add 0429c63 Complete register op from python (#8079) add a74d0fe [Codegen] Use "target.build.$TARGET_KIND" for all codegen functions. (#8071) add c9db3d0 [METAL] Fix the rest memory leaks in Metal runtime (#8175) add 82cf197 Fix prelu bug in pytorch frontend (#8192) add aa9974f [TE/TIR] Fix create_prim_func to properly handle rank 0 tensors. (#8128) add 3e34e11 [CMake] Add compile-time check that libtvm_runtime.so has no undefined symbols. (#8178) add a769ece [AOT] Initial implementation of --unpacked-api (#8023) add a1cd6d5 fix py files (#8194) add e0baf80 Run ONNX Node Tests on available targets (#8189) add f4ec5fd [Relay, TF] Support converting TF combined_nms using Relay all_class_nms (#8174) add 010d11b [Texture support][Part 0] Device API and runtime support (#7711) add 5b37b4a Fix typo (#8197) add 43387d0 fix bug in dense_nopack if dynamic input shape (#8166) add 2cca934 [RUNTIME][REFACTOR] Re-organize Containers into SubFolders (#8183) add cc9d5cf update python code style to 3.6 (#8199) add f4b5e76 [CI][DOCS] Fix the sphinx doc style for sphinx4 (#8198) add 072a3d2 Fix incorrect device name in TVMC. (#8181) add 3ab4a6b Add thread_warp_size for Metal device in default target attributes (#8202) add 51bbd63 Fix conv2d_nchw for opencl intel graphics (#8201) add 364bc1b [QEMU] Add number of cores, target list for build (#8156) add 2c67d71 [FIX] Allow tokenizer to parse numbers greater than INT_MAX. (#8120) add 64a8e81 [Frontend, Tensorflow2] Adding TF2 frontend code with support for control flow ops (#8142) add 9be0f4f [Relay] Convert a fake quantized or QAT graph into QNN ops (#8126) add d1e2e0d [Fix][microTVM] QEMU RPC issue (#8021) add f1486ef [Docker] Add external directory mount (#8144) add bd0f5bc Support dequantizing scalar inputs (#8207) add f646048 use an empty module for fold_constant (#8208) add 5e006e0 [TIR] Fix data dependent indexing when lowering TE to TIR (#8217) add 685ebda [VM] Better error messages (#8218) add 9899f1e Auto-tuning a Convolutional Network for ARM CPU (tutorial error, bug reports) (#8103) add 55459e7 [TVMSCRIPT] Add tir.min node in tvm script (#8219) add 5dc9627 [Metal] Remove matching Metal to OpenCL in tophub (#8211) add 8a04efa Graph executor: remove unnecessary unique_ptr, NFC (#8214) add 53e4c60 [DOC] Improve "Getting Started with TVM" tutorials and fix warnings (#8221) add 1f2ca06 Expose list of PassContext configurations to the Python APIs (#8212) add 4d9bc9b [RUNTIME] ShapeTuple Container (#8200) add 34e9a4f [Frontend, Tensorflow, Tensorflow2] Tensorflow frontend op refactor (#8179) add d767659 Fix use of wrong variable (#8227) add a468f08 Add metadata information to the listing of PassContext configuration listing function (#8226) add d97d8d3 fake quantization to integer (#8228) add b93e56e [CuBLAS] Support implicit broadcast in batch_matmul (#8229) add b895f2e [COMMUNITY] Egor Churaev -> reviewer (#8231) add 4079ffd [LLVM] Fix CodeGenLLVM::LinkParameters (#8213) add 217555f [AutoTVM] Added @functools.wraps to function decorators (#8237) add 8ea6a30 [Metal] Reduce number of threads for reduction layers (#8206) add 4e9760b support matching attributes with more complext objects (#8240) add c29301e [µTVM] Zephyr: Fix missing board-specific config file in build dir (#8230) add 657af3a Fix compile time and runtime errors of EdgeTPURuntime (#8133) add f906fa8 [Vulkan][Refactor] Move ownership of per-CPU-thread objects to VulkanDeviceAPI (#8196) add 8a0472f [BYOC][ACL] Prevent dilated pooling (#8149) add d69011d [ETHOSN] Removed support for 20.08 version of the driver stack. (#7858) add 959e39a [microTVM] Add QEMU build to RVM image (#8190) add ab16685 [TOPI][batch_matmul] Allow cblas batch_matmul implicit batch_size broadcast (#8250) add 3972c29 doc: fixes to dataflow_pattern (#8247) add 9dd1286 Unify Python and C++ TIR lower API (#8110) add f4b95ab Move Micro TVM top level page (#8249) add 90fb626 [CI] [ComputeLibrary] Use pre-built binaries instead of compiled (#8245) add 1c251f5 Fix build break in android_rpc (#8252) add 24c2f5c make simplify inference iterative (#8246) add 6b72dc7 [BUG FIX] Add _type_has_method_sequal_reduce to Span and SourceNode (#8248) add 84e94e9 [Target] Allow 'true' and 'false' strings in conversions to integer (#8254) add b85ac0e Update parsed kernel sources check. (#8257) add 75d9b78 Add check to only cast opaque handles to cl::BufferDescriptor at runtime. (#8256) add 5df25cf [microTVM] Add wait to QEMU Setup (#8236) add e4c7623 Fix compilation of tvm runtime for iOS (#8242) add c74f4b8 [WIP] Update ONNX versions add a2e0166 add failing onnx tets 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 (946bdbe) \ N -- N -- N refs/heads/ci-docker-staging (a2e0166) 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. No new revisions were added by this update. Summary of changes: CMakeLists.txt | 16 + CONTRIBUTORS.md | 41 +- Jenkinsfile | 4 +- apps/android_rpc/app/src/main/jni/tvm_runtime.h | 1 + apps/extension/python/tvm_ext/__init__.py | 2 +- apps/microtvm/reference-vm/README.md | 8 +- apps/microtvm/reference-vm/base-box-tool.py | 72 +- apps/microtvm/reference-vm/zephyr/Vagrantfile | 20 +- .../zephyr/base-box/Vagrantfile.packer-template | 4 +- .../zephyr/base-box/base_box_provision.sh | 28 +- .../base-box/{setup.sh => base_box_setup.sh} | 3 +- .../reference-vm/zephyr/base-box/base_box_test.sh | 39 +- .../reference-vm/zephyr/base-box/test-config.json | 10 +- .../zephyr/{setup.sh => provision_setup.sh} | 3 +- apps/microtvm/reference-vm/zephyr/rebuild-tvm.sh | 10 +- apps/microtvm/zephyr/host_driven/crt/crt_config.h | 2 +- apps/microtvm/zephyr/host_driven/src/main.c | 72 +- cmake/libs/Libbacktrace.cmake | 27 +- cmake/modules/ClangFlags.cmake | 2 +- docker/Dockerfile.ci_cpu | 6 +- docker/Dockerfile.ci_gpu | 4 + docker/bash.sh | 11 +- ...=> ubuntu_download_arm_compute_lib_binaries.sh} | 74 +- docker/install/ubuntu_init_zephyr_project.sh | 27 +- docker/install/ubuntu_install_onnx.sh | 7 +- docker/install/ubuntu_install_qemu.sh | 42 +- docs/api/python/graph_executor.rst | 2 +- docs/conf.py | 8 +- docs/contribute/code_guide.rst | 2 +- docs/deploy/bnns.rst | 3 +- docs/deploy/index.rst | 115 +- docs/deploy/tensorrt.rst | 8 + docs/dev/device_target_interactions.rst | 2 +- docs/dev/index.rst | 10 +- docs/dev/runtime.rst | 10 + docs/dev/runtimes/vulkan.rst | 207 ++ docs/index.rst | 2 +- docs/install/from_source.rst | 28 +- docs/langref/relay_pattern.rst | 11 + include/tvm/arith/bound.h | 1 - include/tvm/arith/pattern.h | 1 - include/tvm/auto_scheduler/loop_state.h | 1 - include/tvm/driver/driver_api.h | 60 +- include/tvm/ir/adt.h | 4 +- include/tvm/ir/expr.h | 2 +- include/tvm/ir/function.h | 4 +- include/tvm/ir/instrument.h | 2 +- include/tvm/ir/module.h | 4 +- include/tvm/ir/op.h | 14 +- include/tvm/ir/span.h | 3 + include/tvm/ir/transform.h | 9 +- include/tvm/ir/type.h | 2 +- include/tvm/node/attr_registry_map.h | 2 +- include/tvm/node/node.h | 1 - include/tvm/node/structural_equal.h | 2 +- include/tvm/node/structural_hash.h | 1 - include/tvm/relay/attrs/nn.h | 2 - include/tvm/relay/attrs/transform.h | 11 + include/tvm/relay/attrs/vision.h | 12 +- include/tvm/relay/feature.h | 1 - include/tvm/relay/interpreter.h | 2 +- include/tvm/relay/transform.h | 1 - include/tvm/runtime/container.h | 3124 -------------------- include/tvm/runtime/container/adt.h | 146 + include/tvm/runtime/container/array.h | 739 +++++ include/tvm/runtime/container/base.h | 302 ++ .../write_stream.h => container/closure.h} | 36 +- include/tvm/runtime/container/map.h | 1441 +++++++++ include/tvm/runtime/container/optional.h | 158 + include/tvm/runtime/container/shape_tuple.h | 180 ++ include/tvm/runtime/container/string.h | 523 ++++ include/tvm/runtime/device_api.h | 2 - include/tvm/runtime/ndarray.h | 21 +- include/tvm/runtime/object.h | 2 + include/tvm/runtime/packed_func.h | 3 +- include/tvm/runtime/vm/executable.h | 3 +- include/tvm/runtime/vm/vm.h | 2 +- include/tvm/te/schedule_pass.h | 12 - include/tvm/te/tensor.h | 1 - include/tvm/tir/buffer.h | 3 +- include/tvm/tir/expr.h | 4 +- include/tvm/tir/op_attr_types.h | 2 +- include/tvm/tir/schedule/schedule.h | 29 + include/tvm/tir/stmt_functor.h | 1 - include/tvm/tir/transform.h | 16 +- include/tvm/topi/cuda/reduction.h | 2 +- include/tvm/topi/detail/strided_slice.h | 156 + include/tvm/topi/nn.h | 2 +- include/tvm/topi/transform.h | 279 +- python/tvm/__init__.py | 2 +- python/tvm/_ffi/_ctypes/packed_func.py | 2 +- python/tvm/_ffi/runtime_ctypes.py | 2 - python/tvm/arith/analyzer.py | 2 +- python/tvm/auto_scheduler/loop_state.py | 8 +- python/tvm/auto_scheduler/measure.py | 8 +- python/tvm/auto_scheduler/relay_integration.py | 15 +- python/tvm/auto_scheduler/search_policy.py | 2 +- python/tvm/auto_scheduler/task_scheduler.py | 2 +- python/tvm/auto_scheduler/utils.py | 4 +- python/tvm/autotvm/feature.py | 2 +- python/tvm/autotvm/measure/measure_methods.py | 2 - python/tvm/autotvm/task/code_hash.py | 3 + python/tvm/autotvm/task/relay_integration.py | 9 +- python/tvm/autotvm/task/task.py | 3 + python/tvm/autotvm/task/topi_integration.py | 4 + python/tvm/autotvm/tophub.py | 3 +- python/tvm/contrib/cblas.py | 2 +- python/tvm/contrib/cc.py | 2 +- python/tvm/contrib/mkl.py | 2 +- python/tvm/contrib/peak.py | 2 +- python/tvm/contrib/tedd.py | 2 +- python/tvm/{arith => driver}/_ffi_api.py | 5 +- python/tvm/driver/build_module.py | 155 +- python/tvm/driver/tvmc/autotuner.py | 2 +- python/tvm/driver/tvmc/common.py | 27 +- python/tvm/driver/tvmc/compiler.py | 2 +- python/tvm/driver/tvmc/frontends.py | 12 +- python/tvm/driver/tvmc/main.py | 2 +- python/tvm/driver/tvmc/model.py | 11 +- python/tvm/driver/tvmc/runner.py | 4 +- python/tvm/ir/__init__.py | 2 +- python/tvm/ir/op.py | 70 +- python/tvm/ir/transform.py | 11 + python/tvm/micro/contrib/zephyr.py | 55 + python/tvm/relay/analysis/feature.py | 2 +- python/tvm/relay/backend/_backend.py | 39 - python/tvm/relay/backend/executor_factory.py | 4 +- python/tvm/relay/backend/vm.py | 24 +- python/tvm/relay/dataflow_pattern/__init__.py | 14 +- python/tvm/relay/frontend/caffe.py | 46 +- python/tvm/relay/frontend/common.py | 2 +- python/tvm/relay/frontend/onnx.py | 105 +- python/tvm/relay/frontend/pytorch.py | 18 +- python/tvm/relay/frontend/tensorflow.py | 2872 +----------------- python/tvm/relay/frontend/tensorflow2.py | 658 +++++ .../frontend/{tensorflow.py => tensorflow_ops.py} | 1318 +-------- python/tvm/relay/frontend/tflite_flexbuffer.py | 10 +- python/tvm/relay/op/__init__.py | 1 + python/tvm/relay/op/_transform.py | 95 +- python/tvm/relay/op/contrib/arm_compute_lib.py | 14 +- python/tvm/relay/op/image/_image.py | 2 +- python/tvm/relay/op/nn/nn.py | 1 + python/tvm/relay/op/op.py | 56 + python/tvm/relay/op/strategy/cuda.py | 67 +- python/tvm/relay/op/strategy/generic.py | 10 +- python/tvm/relay/op/strategy/x86.py | 12 + python/tvm/relay/op/transform.py | 39 +- python/tvm/relay/op/vision/_vision.py | 22 +- python/tvm/relay/op/vision/nms.py | 41 +- python/tvm/relay/testing/temp_op_attr.py | 2 +- python/tvm/relay/transform/__init__.py | 1 + .../transform/fake_quantization_to_integer.py | 166 ++ python/tvm/relay/transform/transform.py | 28 + python/tvm/runtime/__init__.py | 2 +- python/tvm/runtime/container.py | 24 + python/tvm/runtime/module.py | 3 - python/tvm/runtime/ndarray.py | 27 +- python/tvm/script/intrin.py | 5 + python/tvm/script/node.py | 2 +- python/tvm/script/scope_handler.py | 28 +- python/tvm/script/special_stmt.py | 4 +- python/tvm/te/hybrid/module.py | 2 +- python/tvm/tir/schedule/schedule.py | 115 + python/tvm/tir/transform/transform.py | 11 + python/tvm/topi/arm_cpu/arm_utils.py | 6 +- python/tvm/topi/arm_cpu/bitserial_conv2d.py | 2 +- python/tvm/topi/arm_cpu/conv2d.py | 2 +- python/tvm/topi/arm_cpu/conv2d_gemm.py | 6 +- python/tvm/topi/arm_cpu/conv2d_int8.py | 12 +- python/tvm/topi/bifrost/dense.py | 2 +- python/tvm/topi/bifrost/depthwise_conv2d.py | 2 +- python/tvm/topi/cuda/conv2d_hwnc_tensorcore.py | 2 +- python/tvm/topi/cuda/group_conv2d_nchw.py | 26 +- python/tvm/topi/cuda/nms.py | 115 +- python/tvm/topi/cuda/reduction.py | 2 +- python/tvm/topi/cuda/scan.py | 2 +- python/tvm/topi/cuda/softmax.py | 21 +- python/tvm/topi/cuda/sparse_reshape.py | 1 + python/tvm/topi/cuda/unique.py | 84 +- python/tvm/topi/cuda/vision.py | 4 +- python/tvm/topi/image/resize.py | 6 +- python/tvm/topi/intel_graphics/conv2d.py | 4 +- python/tvm/topi/mali/dense.py | 2 +- python/tvm/topi/mali/depthwise_conv2d.py | 2 +- python/tvm/topi/nn/bitserial_conv2d.py | 14 +- python/tvm/topi/nn/conv2d.py | 2 +- python/tvm/topi/nn/depthwise_conv2d.py | 2 +- python/tvm/topi/scatter.py | 6 +- python/tvm/topi/sparse_reshape.py | 1 + python/tvm/topi/testing/adaptive_pool_python.py | 6 +- python/tvm/topi/testing/bilinear_resize_python.py | 2 +- python/tvm/topi/testing/strided_slice_python.py | 21 +- .../tvm/topi/testing/trilinear_resize3d_python.py | 2 +- python/tvm/topi/testing/upsampling_python.py | 8 +- python/tvm/topi/transform.py | 11 +- python/tvm/topi/unique.py | 64 +- python/tvm/topi/utils.py | 2 +- python/tvm/topi/vision/nms.py | 113 +- python/tvm/topi/vision/nms_util.py | 126 +- python/tvm/topi/x86/batch_matmul.py | 6 +- python/tvm/topi/x86/bitserial_conv2d.py | 4 +- python/tvm/topi/x86/conv3d.py | 2 +- python/tvm/topi/x86/dense.py | 3 +- python/tvm/topi/x86/nn.py | 11 + src/README.md | 19 +- src/arith/iter_affine_map.cc | 4 +- src/driver/driver_api.cc | 271 +- src/ir/expr.cc | 33 - src/ir/op.cc | 66 +- src/ir/transform.cc | 17 +- src/node/attr_registry.h | 1 - src/node/container_printing.cc | 75 + src/node/reflection.cc | 1 - src/node/serialization.cc | 1 - src/node/structural_hash.cc | 1 + src/parser/op_table.h | 1 - src/parser/parser.cc | 25 +- src/parser/span_check.h | 1 - src/parser/token.h | 1 - src/parser/tokenizer.h | 67 +- src/printer/meta_data.h | 1 - src/relay/analysis/annotated_region_set.cc | 1 - src/relay/analysis/annotated_region_set.h | 1 - src/relay/analysis/context_analysis.cc | 1 - src/relay/backend/aot_executor_codegen.cc | 84 +- src/relay/backend/compile_engine.cc | 15 +- src/relay/backend/contrib/codegen_c/codegen_c.h | 1 - .../backend/contrib/codegen_json/codegen_json.h | 1 - src/relay/backend/contrib/dnnl/codegen.cc | 1 - src/relay/backend/contrib/ethosn/capabilities.h | 138 - src/relay/backend/contrib/ethosn/codegen.cc | 74 +- src/relay/backend/contrib/ethosn/codegen_ethosn.h | 16 +- .../backend/contrib/ethosn/ethosn_api_version.h | 4 +- src/relay/backend/vm/compiler.cc | 24 +- src/relay/ir/dataflow_matcher.cc | 9 + src/relay/op/make_op.h | 3 +- src/relay/op/nn/nn.h | 1 - src/relay/op/tensor/transform.cc | 357 +-- src/relay/op/vision/nms.cc | 35 +- src/relay/qnn/op/dequantize.cc | 17 +- src/relay/transforms/annotate_target.cc | 1 - .../transforms/fake_quantization_to_integer.cc | 300 ++ src/relay/transforms/fold_constant.cc | 1 - src/relay/transforms/label_ops.cc | 1 - src/relay/transforms/partition_graph.cc | 1 - src/relay/transforms/simplify_inference.cc | 8 +- src/runtime/container.cc | 104 +- src/runtime/contrib/arm_compute_lib/acl_runtime.cc | 4 +- src/runtime/contrib/cblas/gemm_common.h | 38 +- src/runtime/contrib/cublas/cublas.cc | 30 +- src/runtime/contrib/edgetpu/edgetpu_runtime.h | 9 + src/runtime/contrib/json/json_runtime.h | 1 - src/runtime/contrib/onnx/onnx_module.cc | 1 - src/runtime/contrib/tensorrt/tensorrt_builder.cc | 23 +- src/runtime/contrib/tensorrt/tensorrt_builder.h | 8 - src/runtime/contrib/tensorrt/tensorrt_runtime.cc | 148 +- src/runtime/file_utils.h | 3 +- .../graph_executor/debug/graph_executor_debug.cc | 2 +- src/runtime/graph_executor/graph_executor.cc | 9 +- .../graph_executor/graph_executor_factory.cc | 2 +- src/runtime/metadata_module.cc | 3 +- src/runtime/metal/metal_common.h | 56 + src/runtime/metal/metal_device_api.mm | 40 +- src/runtime/metal/metal_module.mm | 26 +- src/runtime/module.cc | 2 - src/runtime/ndarray.cc | 23 +- src/runtime/opencl/opencl_common.h | 64 +- src/runtime/opencl/opencl_device_api.cc | 215 +- src/runtime/opencl/opencl_module.cc | 12 +- src/runtime/opencl/texture_pool.cc | 166 ++ src/runtime/rpc/rpc_module.cc | 2 +- src/runtime/rpc/rpc_socket_impl.cc | 1 - src/runtime/texture.h | 144 + src/runtime/thread_map.h | 175 ++ src/runtime/vm/profiler/vm.cc | 5 + src/runtime/vm/vm.cc | 4 +- src/runtime/vulkan/vulkan_buffer.cc | 124 +- src/runtime/vulkan/vulkan_buffer.h | 118 +- .../vulkan/{vulkan_buffer.cc => vulkan_common.cc} | 38 +- src/runtime/vulkan/vulkan_common.h | 4 + src/runtime/vulkan/vulkan_context.cc | 183 -- src/runtime/vulkan/vulkan_context.h | 95 - src/runtime/vulkan/vulkan_device.cc | 589 ++++ src/runtime/vulkan/vulkan_device.h | 297 ++ src/runtime/vulkan/vulkan_device_api.cc | 818 ++--- src/runtime/vulkan/vulkan_device_api.h | 74 +- src/runtime/vulkan/vulkan_instance.cc | 147 + src/runtime/vulkan/vulkan_instance.h | 90 + src/runtime/vulkan/vulkan_stream.cc | 36 +- src/runtime/vulkan/vulkan_stream.h | 11 +- src/runtime/vulkan/vulkan_thread_entry.cc | 84 - src/runtime/vulkan/vulkan_thread_entry.h | 67 - src/runtime/vulkan/vulkan_wrapped_func.cc | 88 +- src/runtime/vulkan/vulkan_wrapped_func.h | 4 +- src/support/array.h | 72 + src/support/libinfo.cc | 1 - src/support/utils.h | 2 +- src/target/build_common.h | 1 - src/target/codegen.cc | 9 +- src/target/func_registry_generator.h | 3 +- src/target/generic_func.cc | 1 - src/target/llvm/codegen_llvm.cc | 76 +- src/target/llvm/codegen_llvm.h | 1 - src/target/llvm/codegen_params.h | 1 - src/target/llvm/llvm_common.h | 2 +- src/target/llvm/llvm_module.h | 1 - src/target/metadata_module.h | 1 - src/target/source/codegen_aocl.cc | 2 +- src/target/source/codegen_c.h | 1 - src/target/source/codegen_c_host.cc | 1 - src/target/source/source_module.cc | 50 +- src/target/source/source_module.h | 1 - src/target/spirv/codegen_spirv.cc | 1 - src/target/spirv/ir_builder.cc | 44 +- src/target/stackvm/codegen_stackvm.cc | 1 - src/target/target.cc | 13 +- src/target/target_kind.cc | 59 +- src/te/operation/create_primfunc.cc | 11 +- .../schedule_postproc_rewrite_for_tensor_core.cc | 1124 ------- src/te/schedule/schedule_postproc_to_primfunc.cc | 1 - src/tir/schedule/analysis.h | 59 +- src/tir/schedule/analysis/analysis.cc | 140 + src/tir/schedule/concrete_schedule.cc | 29 +- src/tir/schedule/concrete_schedule.h | 8 + src/tir/schedule/error.cc | 4 +- src/tir/schedule/error.h | 4 +- src/tir/schedule/primitive.h | 67 + src/tir/schedule/primitive/compute_inline.cc | 677 +++++ src/tir/schedule/schedule.cc | 10 + src/tir/schedule/utils.h | 45 +- src/tir/transforms/make_packed_api.cc | 1 - src/tir/transforms/make_unpacked_api.cc | 134 + src/tir/transforms/split_host_device.cc | 1 - src/topi/transform.cc | 24 +- tests/cpp/auto_scheduler_test.cc | 2 +- tests/cpp/build_module_test.cc | 6 +- tests/cpp/container_test.cc | 5 +- tests/cpp/packed_func_test.cc | 1 - tests/cpp/relay_transform_sequential_test.cc | 8 + tests/cpp/texture_copy_test.cc | 142 + tests/lint/git-black.sh | 6 +- tests/micro/test_runtime_micro_on_arm.py | 370 --- tests/micro/zephyr/conftest.py | 21 + tests/micro/zephyr/test_zephyr.py | 86 +- tests/micro/zephyr/test_zephyr_aot.py | 65 +- .../contrib/test_arm_compute_lib/test_pooling.py | 95 +- tests/python/contrib/test_cblas.py | 53 +- tests/python/contrib/test_cublas.py | 55 +- tests/python/contrib/test_ethosn/infrastructure.py | 4 +- tests/python/contrib/test_ethosn/test_conv2d.py | 4 - tests/python/contrib/test_ethosn/test_networks.py | 34 +- tests/python/contrib/test_tensorrt.py | 20 +- tests/python/driver/tvmc/test_tvmc_common.py | 17 + tests/python/frontend/onnx/test_forward.py | 295 +- tests/python/frontend/pytorch/test_forward.py | 4 + tests/python/frontend/tensorflow/test_forward.py | 5 +- tests/python/frontend/tensorflow2/common.py | 27 +- .../frontend/tensorflow2/test_functional_models.py | 102 +- tests/python/relay/aot/aot_test_utils.py | 10 +- tests/python/relay/aot/test_crt_aot.py | 74 +- tests/python/relay/test_any.py | 116 +- tests/python/relay/test_dataflow_pattern.py | 11 + tests/python/relay/test_ir_op.py | 20 +- tests/python/relay/test_ir_parser.py | 1 + tests/python/relay/test_op_fast_math.py | 11 +- tests/python/relay/test_op_level3.py | 49 +- tests/python/relay/test_op_level4.py | 87 +- tests/python/relay/test_op_qnn_dequantize.py | 10 + tests/python/relay/test_pass_alter_op_layout.py | 56 + tests/python/relay/test_pass_convert_op_layout.py | 50 +- .../test_pass_fake_quantization_to_integer.py | 279 ++ tests/python/relay/test_pass_instrument.py | 8 + tests/python/relay/test_pass_legalize.py | 2 +- tests/python/relay/test_type_infer.py | 129 + tests/python/relay/utils/ref_funcs.py | 48 + tests/python/topi/python/test_topi_conv2d_nchw.py | 2 + tests/python/topi/python/test_topi_group_conv2d.py | 189 +- tests/python/topi/python/test_topi_transform.py | 9 +- tests/python/topi/python/test_topi_unique.py | 73 +- .../unittest/test_autotvm_flop_calculator.py | 2 +- tests/python/unittest/test_runtime_container.py | 10 + .../python/unittest/test_target_codegen_vulkan.py | 2 +- tests/python/unittest/test_target_target.py | 11 + tests/python/unittest/test_te_create_primfunc.py | 35 + .../unittest/test_tir_schedule_compute_inline.py | 373 +++ .../unittest/test_tir_transform_bf16_legalize.py | 8 +- .../python/unittest/test_tir_transform_hoist_if.py | 4 +- .../test_tir_transform_make_unpacked_api.py | 155 + tests/scripts/task_ci_setup.sh | 2 +- tutorials/auto_scheduler/tune_network_arm.py | 2 +- tutorials/autotvm/tune_conv2d_cuda.py | 2 +- tutorials/autotvm/tune_relay_arm.py | 6 +- tutorials/dev/low_level_custom_pass.py | 4 +- ..._matmul_x86.py => auto_scheduler_matmul_x86.py} | 2 +- .../{autotvm_matmul.py => autotvm_matmul_x86.py} | 17 +- ..._tuning_with_python.py => autotvm_relay_x86.py} | 7 +- tutorials/get_started/install.py | 4 +- tutorials/get_started/introduction.py | 94 +- tutorials/get_started/tensor_expr_get_started.py | 33 +- tutorials/get_started/tvmc_command_line_driver.py | 2 +- vta/python/vta/top/graphpack.py | 6 +- vta/python/vta/top/op.py | 2 +- vta/python/vta/top/vta_conv2d.py | 2 +- vta/python/vta/top/vta_group_conv2d.py | 2 +- vta/python/vta/transform.py | 2 +- vta/tutorials/frontend/deploy_classification.py | 2 +- web/emcc/tvmjs_support.cc | 1 - 407 files changed, 15058 insertions(+), 12261 deletions(-) copy tests/lint/cppdocs.sh => apps/microtvm/reference-vm/zephyr/base-box/base_box_provision.sh (64%) mode change 100755 => 100644 rename apps/microtvm/reference-vm/zephyr/base-box/{setup.sh => base_box_setup.sh} (97%) copy .asf.yaml => apps/microtvm/reference-vm/zephyr/base-box/base_box_test.sh (63%) mode change 100644 => 100755 rename apps/microtvm/reference-vm/zephyr/{setup.sh => provision_setup.sh} (95%) rename docker/install/{ubuntu_install_arm_compute_lib.sh => ubuntu_download_arm_compute_lib_binaries.sh} (53%) create mode 100644 docs/dev/runtimes/vulkan.rst delete mode 100644 include/tvm/runtime/container.h create mode 100644 include/tvm/runtime/container/adt.h create mode 100644 include/tvm/runtime/container/array.h create mode 100644 include/tvm/runtime/container/base.h copy include/tvm/runtime/{crt/rpc_common/write_stream.h => container/closure.h} (56%) create mode 100644 include/tvm/runtime/container/map.h create mode 100644 include/tvm/runtime/container/optional.h create mode 100644 include/tvm/runtime/container/shape_tuple.h create mode 100644 include/tvm/runtime/container/string.h create mode 100644 include/tvm/topi/detail/strided_slice.h copy python/tvm/{arith => driver}/_ffi_api.py (92%) create mode 100644 python/tvm/relay/frontend/tensorflow2.py copy python/tvm/relay/frontend/{tensorflow.py => tensorflow_ops.py} (69%) create mode 100644 python/tvm/relay/transform/fake_quantization_to_integer.py create mode 100644 src/node/container_printing.cc delete mode 100644 src/relay/backend/contrib/ethosn/capabilities.h create mode 100644 src/relay/transforms/fake_quantization_to_integer.cc create mode 100644 src/runtime/opencl/texture_pool.cc create mode 100644 src/runtime/texture.h create mode 100644 src/runtime/thread_map.h copy src/runtime/vulkan/{vulkan_buffer.cc => vulkan_common.cc} (52%) delete mode 100644 src/runtime/vulkan/vulkan_context.cc delete mode 100644 src/runtime/vulkan/vulkan_context.h create mode 100644 src/runtime/vulkan/vulkan_device.cc create mode 100644 src/runtime/vulkan/vulkan_device.h create mode 100644 src/runtime/vulkan/vulkan_instance.cc create mode 100644 src/runtime/vulkan/vulkan_instance.h delete mode 100644 src/runtime/vulkan/vulkan_thread_entry.cc delete mode 100644 src/runtime/vulkan/vulkan_thread_entry.h create mode 100644 src/support/array.h delete mode 100644 src/te/schedule/schedule_postproc_rewrite_for_tensor_core.cc create mode 100644 src/tir/schedule/primitive.h create mode 100644 src/tir/schedule/primitive/compute_inline.cc create mode 100644 src/tir/transforms/make_unpacked_api.cc create mode 100644 tests/cpp/texture_copy_test.cc delete mode 100644 tests/micro/test_runtime_micro_on_arm.py create mode 100644 tests/python/relay/test_pass_fake_quantization_to_integer.py create mode 100644 tests/python/relay/utils/ref_funcs.py create mode 100644 tests/python/unittest/test_tir_schedule_compute_inline.py create mode 100644 tests/python/unittest/test_tir_transform_make_unpacked_api.py rename tutorials/get_started/{tune_matmul_x86.py => auto_scheduler_matmul_x86.py} (99%) rename tutorials/get_started/{autotvm_matmul.py => autotvm_matmul_x86.py} (96%) rename tutorials/get_started/{auto_tuning_with_python.py => autotvm_relay_x86.py} (98%)