This is an automated email from the ASF dual-hosted git repository.
tqchen pushed a change to branch unity-staging
in repository https://gitbox.apache.org/repos/asf/tvm.git
discard fd20ca2f6c [MERGE] Merge main into unity 2023-05-14
add e2839c0fe8 [Unity][CI] Update CPU image to install PyTorch (fix)
(#14852)
add 602133e6b9 [bugfix][Relay] Fix softplus in paddlepaddle frontend
(#14845)
add b4c1c3870f [CUDA] Fixed the call of the min function in the schedule
for cuda (#14751)
add 265c098fcb Add v0.12.0 docs (#14851)
add 58434d16f0 [TFLite][Frontend] Generate name when tensor name is
missing (#14819)
add d159f73d2a [MERGE] Merge main into unity 2023-05-14
add e812a219f6 [Unity][FX] Add support for PT2.0
scaled_dot_product_attention (#14841)
add c365a675cd [Unity] Support Mixed-Precision FMA Pattern (#14865)
add 3bcfc293bc [Unity]Lazy transform param now only work on non-dataflow
block (#14864)
add cb39cc1a97 [Unity] Support multilib relax build (#14873)
add e4f16cb9e7 [Unity][Relax] gelu-tanh operator (#14814)
add 7aff6bfbb0 [Unity][IR] Purity Tracking (#14394)
add 84a5e72084 [Unity] Fix broken test in cutlass codegen (#14881)
add b3dd058ee3 [Unity][WEB] Enable String object (#14882)
add d3ad96e43c [Unity] Only process relax functions in workspace
annotation (#14896)
add 6dd431b430 [TIR][Doc] Fix formatting in pop_trace docstring (#14894)
add 201002e78e [Unity][CUTLASS] Fix for purity tracking (#14891)
add 5566c3e2b6 [COMMUNITY] Anirudh Sundar Subramaniam -> Committer (#14853)
add b6d7ce6a8a [LLVM] Use Var annotation in LetStmt for pointer type
(#14570)
add 0274930e4a [microNPU][ETHOSU] Fix Softmax quantization parameters
(#14774)
add eb1ea972b3 [QNN] Implement 'qnn.softmax' (#14536)
add f6bbe946e1 [relay][simplify_expr]: Add pass to remove trivial
transpose ops (#14858)
add 2f863dda62 [TIR][Schedule] Improve blockize to support blockizing
multiple blocks (#14766)
add 0e24aa7c8b [FIX] fix typo in comment (#14787)
add b4796cc717 [Frontend][Paddle] [PaddlePaddle Hackathon 4] add convert
support for p_norm/roi_align/softmax_with_cross_entropy (#14826)
add ea710cc2dd Fix f-string typo (#14867)
add 14be4bfc0d [TOPI][Target] Add SVE specific convolution (#14483)
add 00b41c63ea [TIR] Avoid too complex predicate in compaction (#14866)
add 38c3ad4cad [TVMScript] Use default fallback for un-registered type
(#14874)
add 19663b26c9 [MicroTVM] Use self.close_transport() on error (#14872)
add b4475b83aa [Bugfix] Fix batch_norm (#14857)
add 28e980125b [Quantization]: Update simulated_quantize to infer correct
layout (#14875)
add ba3f0d938a [TOPI] Fix in interpretation of empty axis parameter in
reduction fun… (#14856)
add 613ad5cc51 [bugfix] fix the undeclared identifier 'f' (#14879)
add af06b30a98 [CONTRIB] Enable create_staticlib to take in tar files
(#14876)
add 61fe8a7027 [AutoTVM] Use f-strings for string formatting, NFC (#14884)
add 006b11df04 [RUNTIME] Make systemlib unique per prefix (#14887)
add bbfe481784 [microNPU][ETHOSU] Channel pad offloaded to NPU (#14765)
add 52de91e366 [Fix] Fix typo in error message (#14890)
add 8ebd598fcd [bugfix] [Relay] fix broadcast in PyTorch frontend (#14885)
add 0dae36048e [CI] Update CPU image to install PyTorch (#14847)
add b91c2f2e07 [Vulkan] Add cooperative matrix support (#14817)
add f4a7eaebd6 [TIR][TVMScript] Added format/parsing of subroutine calls
(#14889)
new 9a3bbc1d37 [MERGE] merge main into unity 2023-05-20
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 (fd20ca2f6c)
\
N -- N -- N refs/heads/unity-staging (9a3bbc1d37)
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 1 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:
CONTRIBUTORS.md | 1 +
ci/jenkins/docker-images.ini | 20 +-
ci/jenkins/unity_jenkinsfile.groovy | 2 +-
docs/conf.py | 2 +-
include/tvm/relax/analysis.h | 14 +
include/tvm/relax/expr.h | 22 +-
include/tvm/relax/struct_info.h | 24 +-
include/tvm/relax/transform.h | 13 +
include/tvm/relax/utils.h | 12 +
include/tvm/script/ir_builder/relax/frame.h | 4 +-
include/tvm/script/ir_builder/relax/ir.h | 6 +
include/tvm/script/printer/ir_docsifier_functor.h | 33 ++
include/tvm/tir/schedule/schedule.h | 7 +
include/tvm/topi/nn.h | 6 +-
include/tvm/topi/reduction.h | 8 +-
python/tvm/auto_scheduler/cost_model/xgb_model.py | 20 +-
python/tvm/auto_scheduler/dispatcher.py | 2 +-
python/tvm/auto_scheduler/feature.py | 15 +-
python/tvm/auto_scheduler/measure.py | 18 +-
python/tvm/auto_scheduler/search_policy.py | 2 +-
python/tvm/auto_scheduler/search_task.py | 23 +-
python/tvm/auto_scheduler/task_scheduler.py | 15 +-
python/tvm/auto_scheduler/utils.py | 8 +-
python/tvm/auto_scheduler/workload_registry.py | 6 +-
python/tvm/autotvm/feature.py | 9 +-
python/tvm/autotvm/graph_tuner/base_graph_tuner.py | 10 +-
python/tvm/autotvm/graph_tuner/pbqp_tuner.py | 4 +-
.../autotvm/graph_tuner/utils/traverse_graph.py | 8 +-
python/tvm/autotvm/measure/measure_methods.py | 52 +-
python/tvm/autotvm/record.py | 4 +-
python/tvm/autotvm/task/dispatcher.py | 14 +-
python/tvm/autotvm/task/space.py | 30 +-
python/tvm/autotvm/task/task.py | 10 +-
python/tvm/autotvm/testing/tune_relay.py | 59 +--
python/tvm/autotvm/tophub.py | 10 +-
python/tvm/autotvm/tuner/sa_model_optimizer.py | 2 +-
python/tvm/autotvm/tuner/xgboost_cost_model.py | 28 +-
python/tvm/contrib/cc.py | 34 +-
python/tvm/contrib/cutlass/build.py | 2 +-
python/tvm/contrib/tar.py | 41 ++
python/tvm/ir/expr.py | 6 +
python/tvm/ir/instrument.py | 2 +-
python/tvm/ir/transform.py | 2 +-
python/tvm/relax/__init__.py | 2 +-
python/tvm/relax/analysis/analysis.py | 30 +-
python/tvm/relax/backend/contrib/cutlass.py | 9 +-
python/tvm/relax/expr.py | 17 +-
python/tvm/relax/frontend/torch/fx_translator.py | 32 +-
python/tvm/relax/op/base.py | 98 +++-
python/tvm/relax/op/nn/nn.py | 37 +-
python/tvm/relax/struct_info.py | 19 +-
python/tvm/relax/testing/ast_printer.py | 2 +
.../tvm/relax/transform/lazy_transform_params.py | 8 +-
python/tvm/relax/transform/legalize_ops/index.py | 13 +-
python/tvm/relax/transform/legalize_ops/nn.py | 16 +
python/tvm/relax/transform/transform.py | 21 +-
python/tvm/relax/vm_build.py | 2 +
.../tvm/relay/backend/contrib/ethosu/legalize.py | 77 +++
.../backend/contrib/ethosu/softmax_rewriter.py | 28 +-
python/tvm/relay/backend/contrib/ethosu/util.py | 2 +-
python/tvm/relay/frontend/paddlepaddle.py | 87 +++-
python/tvm/relay/frontend/pytorch.py | 23 +-
python/tvm/relay/frontend/tflite.py | 9 +-
python/tvm/relay/op/__init__.py | 1 +
python/tvm/relay/op/contrib/ethosu.py | 90 +++-
python/tvm/relay/op/op.py | 21 +
python/tvm/relay/qnn/op/qnn.py | 4 +
.../transform/fake_quantization_to_integer.py | 18 +-
python/tvm/relay/transform/transform.py | 11 +-
python/tvm/script/ir_builder/relax/ir.py | 23 +
python/tvm/script/parser/relax/entry.py | 14 +-
python/tvm/script/parser/relax/parser.py | 23 +-
python/tvm/target/target.py | 21 +
python/tvm/tir/__init__.py | 2 +-
python/tvm/tir/op.py | 12 +
python/tvm/tir/schedule/schedule.py | 14 +-
python/tvm/topi/arm_cpu/conv2d_spatial_pack.py | 20 +-
python/tvm/topi/cuda/scatter.py | 2 +-
src/relax/analysis/analysis.cc | 44 ++
src/relax/analysis/struct_info_analysis.cc | 21 +-
src/relax/analysis/tir_op_pattern_kind.cc | 35 +-
src/relax/analysis/well_formed.cc | 34 ++
src/relax/backend/vm/codegen_vm.cc | 6 +-
src/relax/backend/vm/codegen_vm_tir.cc | 8 +-
src/relax/backend/vm/vm_shape_lower.cc | 2 +-
src/relax/ir/block_builder.cc | 2 +-
src/relax/ir/expr.cc | 23 +-
src/relax/ir/expr_functor.cc | 4 +-
src/relax/ir/struct_info.cc | 20 +-
src/relax/ir/struct_info_functor.cc | 2 +-
src/relax/op/image/resize.cc | 3 +-
src/relax/op/nn/attention.cc | 6 +-
src/relax/op/nn/convolution.cc | 9 +-
src/relax/op/nn/nn.cc | 27 +-
src/relax/op/nn/nn.h | 3 +
src/relax/op/nn/pooling.cc | 9 +-
src/relax/op/op.cc | 138 +++++-
src/relax/op/op_common.h | 13 +-
src/relax/op/tensor/binary.h | 25 +-
src/relax/op/tensor/create.cc | 27 +-
src/relax/op/tensor/datatype.cc | 6 +-
src/relax/op/tensor/grad.cc | 15 +-
src/relax/op/tensor/index.cc | 9 +-
src/relax/op/tensor/linear_algebra.cc | 6 +-
src/relax/op/tensor/manipulate.cc | 45 +-
src/relax/op/tensor/search.cc | 30 +-
src/relax/op/tensor/set.cc | 3 +-
src/relax/op/tensor/statistical.cc | 3 +-
src/relax/op/tensor/statistical.h | 3 +-
src/relax/op/tensor/ternary.cc | 3 +-
src/relax/op/tensor/unary.cc | 3 +-
src/relax/training/utils.cc | 2 +-
src/relax/transform/allocate_workspace.cc | 6 +-
src/relax/transform/attach_global_symbol.cc | 48 +-
src/relax/transform/combine_parallel_matmul.cc | 5 +-
src/relax/transform/decompose_ops.cc | 6 +-
src/relax/transform/eliminate_common_subexpr.cc | 3 +-
src/relax/transform/fuse_ops.cc | 8 +-
src/relax/transform/fuse_tir.cc | 1 +
src/relax/transform/gradient.cc | 2 +-
src/relax/transform/lambda_lift.cc | 27 +-
src/relax/transform/legalize_ops.cc | 47 +-
src/relax/transform/lift_transform_params.cc | 2 +-
src/relax/transform/merge_composite_functions.cc | 4 +-
src/relax/transform/normalize.cc | 2 +-
src/relax/transform/remove_purity_checking.cc | 88 ++++
src/relax/transform/rewrite_cuda_graph.cc | 5 +-
src/relax/transform/static_plan_block_memory.cc | 1 +
src/relax/transform/utils.h | 2 +-
src/relax/utils.cc | 17 +-
src/relay/qnn/op/softmax.cc | 154 ++++++
src/relay/quantize/realize.cc | 21 +-
.../transforms/fake_quantization_to_integer.cc | 73 ++-
src/relay/transforms/pattern_utils.h | 4 +
src/relay/transforms/simplify_expr.cc | 111 +++--
src/runtime/crt/host/microtvm_api_server.py | 4 +-
src/runtime/system_library.cc | 53 ++-
src/runtime/vulkan/vulkan_device.cc | 5 +-
src/runtime/vulkan/vulkan_device.h | 1 +
src/runtime/vulkan/vulkan_device_api.cc | 4 +
src/script/ir_builder/relax/frame.cc | 1 +
src/script/ir_builder/relax/ir.cc | 10 +
src/script/printer/ir/relay.cc | 48 --
src/script/printer/ir_docsifier.cc | 5 +
src/script/printer/relax/call.cc | 46 ++
src/script/printer/relax/function.cc | 6 +-
src/script/printer/relax/struct_info.cc | 5 +-
src/script/printer/relax/utils.h | 1 +
src/script/printer/tir/expr.cc | 5 +-
src/script/printer/tir/function.cc | 20 +
src/target/llvm/codegen_cpu.cc | 40 +-
src/target/llvm/codegen_llvm.cc | 23 +-
src/target/parsers/aprofile.cc | 35 +-
src/target/source/codegen_cuda.cc | 23 +-
src/target/spirv/codegen_spirv.cc | 193 +++++++-
src/target/spirv/codegen_spirv.h | 14 +
src/target/spirv/ir_builder.cc | 68 ++-
src/target/spirv/ir_builder.h | 25 +-
src/target/spirv/spirv_support.cc | 4 +
src/target/spirv/spirv_support.h | 14 +
src/target/target_kind.cc | 1 +
src/tir/ir/data_layout.cc | 2 +-
src/tir/schedule/concrete_schedule.cc | 9 +
src/tir/schedule/concrete_schedule.h | 1 +
src/tir/schedule/primitive.h | 10 +
src/tir/schedule/primitive/blockize_tensorize.cc | 287 +++++++++--
src/tir/schedule/schedule.cc | 9 +-
src/tir/schedule/traced_schedule.cc | 11 +
src/tir/schedule/traced_schedule.h | 1 +
src/tir/transforms/inject_rolling_buffer.cc | 2 +-
src/tir/transforms/ir_utils.cc | 37 +-
src/tir/transforms/ir_utils.h | 8 +
tests/cpp/target/parsers/aprofile_test.cc | 19 +
tests/python/contrib/test_cmsisnn/test_networks.py | 27 ++
tests/python/contrib/test_ethosu/infra.py | 6 +-
tests/python/contrib/test_ethosu/test_codegen.py | 25 +-
tests/python/contrib/test_ethosu/test_legalize.py | 241 +++++++++-
.../metaschedule_e2e/test_resnet50_int8.py | 2 +-
tests/python/driver/tvmc/test_frontends.py | 10 +-
tests/python/driver/tvmc/test_parse_config_file.py | 2 +-
tests/python/frontend/paddlepaddle/test_forward.py | 87 +++-
tests/python/frontend/pytorch/test_forward.py | 17 +
.../relax/test_analysis_contains_impure_call.py | 108 +++++
.../relax/test_analysis_struct_info_analysis.py | 4 +-
tests/python/relax/test_analysis_well_formed.py | 72 +++
tests/python/relax/test_ast_printer.py | 6 +-
.../relax/test_backend_transform_shape_lower.py | 28 +-
tests/python/relax/test_codegen_cutlass.py | 7 -
tests/python/relax/test_frontend_dynamo.py | 53 +++
tests/python/relax/test_frontend_from_fx.py | 522 +++++----------------
tests/python/relax/test_pipeline.py | 5 +-
tests/python/relax/test_relax_operators.py | 23 +
tests/python/relax/test_transform.py | 139 +++++-
.../test_transform_annotate_tir_op_pattern.py | 34 ++
.../relax/test_transform_attach_global_symbol.py | 87 +++-
tests/python/relax/test_transform_decompose_ops.py | 2 +-
tests/python/relax/test_transform_fuse_ops.py | 10 +-
tests/python/relax/test_transform_fuse_tir.py | 2 +-
tests/python/relax/test_transform_lambda_lift.py | 49 +-
.../relax/test_transform_lazy_transform_params.py | 57 +--
..._transform_legalize_ops_index_linear_algebra.py | 4 +-
.../test_transform_legalize_ops_manipulate.py | 98 +---
.../python/relax/test_transform_legalize_ops_nn.py | 153 ++++++
.../relax/test_transform_rewrite_cuda_graph.py | 10 +
.../test_transform_static_plan_block_memory.py | 39 +-
tests/python/relax/test_tvmscript_parser.py | 42 ++
tests/python/relax/test_tvmscript_printer_relax.py | 59 ++-
tests/python/relax/test_vm_build.py | 136 ++++--
tests/python/relay/test_any.py | 23 +
tests/python/relay/test_pass_convert_op_layout.py | 49 ++
.../test_pass_fake_quantization_to_integer.py | 48 ++
tests/python/relay/test_pass_simplify_expr.py | 22 +
tests/python/topi/python/test_topi_reduce.py | 33 +-
.../unittest/test_meta_schedule_trace_apply.py | 18 +-
tests/python/unittest/test_target_codegen_blob.py | 17 +-
.../python/unittest/test_target_codegen_vulkan.py | 128 +++++
.../python/unittest/test_tir_schedule_blockize.py | 49 ++
.../test_tir_transform_compact_buffer_region.py | 62 +++
tests/python/unittest/test_tvmscript_roundtrip.py | 17 +
tests/scripts/request_hook/request_hook.py | 1 +
tests/scripts/task_config_build_cpu.sh | 2 +-
web/emcc/wasm_runtime.cc | 4 +
web/src/runtime.ts | 38 ++
web/tests/node/test_object.js | 10 +
224 files changed, 4906 insertions(+), 1475 deletions(-)
create mode 100644 src/relax/transform/remove_purity_checking.cc
create mode 100644 src/relay/qnn/op/softmax.cc
delete mode 100644 src/script/printer/ir/relay.cc
create mode 100644 tests/python/relax/test_analysis_contains_impure_call.py