You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tvm.apache.org by tq...@apache.org on 2021/09/15 22:18:33 UTC

[tvm-site] branch asf-site updated: Docs build at Wed Sep 15 18:18:24 EDT 2021

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

tqchen pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/tvm-site.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new f974754  Docs build at Wed Sep 15 18:18:24 EDT 2021
f974754 is described below

commit f97475446b216df12b6b3835049a93c1c2b17f38
Author: tqchen <ti...@gmail.com>
AuthorDate: Wed Sep 15 18:18:25 2021 -0400

    Docs build at Wed Sep 15 18:18:24 EDT 2021
---
 docs/_images/sphx_glr_from_onnx_001.png            | Bin 164348 -> 164343 bytes
 docs/_images/sphx_glr_from_onnx_thumb.png          | Bin 65645 -> 65645 bytes
 docs/_images/sphx_glr_micro_autotune_thumb.png     | Bin 35467 -> 26786 bytes
 .../auto_scheduler/sg_execution_times.rst.txt      |  16 +--
 .../auto_scheduler/tune_conv2d_layer_cuda.rst.txt  |   8 +-
 .../auto_scheduler/tune_network_arm.rst.txt        |  44 +++---
 .../auto_scheduler/tune_network_cuda.rst.txt       |  50 +++----
 .../auto_scheduler/tune_network_mali.rst.txt       |  44 +++---
 .../auto_scheduler/tune_network_x86.rst.txt        |  60 ++++-----
 .../auto_scheduler/tune_sparse_x86.rst.txt         |  41 +++---
 .../tutorials/autotvm/sg_execution_times.rst.txt   |  12 +-
 .../tutorials/autotvm/tune_conv2d_cuda.rst.txt     |  42 +++---
 .../tutorials/dev/low_level_custom_pass.rst.txt    |   4 +-
 .../tutorials/dev/sg_execution_times.rst.txt       |  10 +-
 .../tutorials/dev/use_pass_instrument.rst.txt      |  16 +--
 docs/_sources/tutorials/frontend/build_gcn.rst.txt |   7 +-
 .../frontend/deploy_model_on_android.rst.txt       |   2 +-
 .../deploy_object_detection_pytorch.rst.txt        |   4 +-
 .../tutorials/frontend/deploy_prequantized.rst.txt |  20 ++-
 .../frontend/deploy_prequantized_tflite.rst.txt    |   4 +-
 .../tutorials/frontend/deploy_quantized.rst.txt    |   5 +
 .../tutorials/frontend/deploy_ssd_gluoncv.rst.txt  |   4 +-
 .../tutorials/frontend/from_caffe2.rst.txt         |  16 +++
 .../tutorials/frontend/from_darknet.rst.txt        |   5 +
 .../_sources/tutorials/frontend/from_mxnet.rst.txt |   1 +
 docs/_sources/tutorials/frontend/from_onnx.rst.txt |   2 +-
 .../tutorials/frontend/from_pytorch.rst.txt        |   9 ++
 .../tutorials/frontend/from_tensorflow.rst.txt     | 149 +--------------------
 .../tutorials/frontend/sg_execution_times.rst.txt  |  40 +++---
 .../get_started/auto_scheduler_matmul_x86.rst.txt  |   3 +-
 .../get_started/autotvm_relay_x86.rst.txt          |  75 +++++------
 .../get_started/cross_compilation_and_rpc.rst.txt  |   2 +-
 .../get_started/sg_execution_times.rst.txt         |  20 +--
 .../get_started/tensor_expr_get_started.rst.txt    |  61 ++++-----
 docs/_sources/tutorials/language/reduction.rst.txt |   4 +-
 .../tutorials/language/schedule_primitives.rst.txt |   6 +-
 .../tutorials/language/sg_execution_times.rst.txt  |  18 +--
 docs/_sources/tutorials/language/tensorize.rst.txt |   4 +-
 .../tutorials/language/tuple_inputs.rst.txt        |  16 +--
 .../tutorials/micro/micro_autotune.rst.txt         |  18 +--
 docs/_sources/tutorials/micro/micro_tflite.rst.txt |  10 +-
 .../tutorials/micro/sg_execution_times.rst.txt     |   4 +-
 .../tutorials/optimize/opt_conv_cuda.rst.txt       |   2 +-
 .../tutorials/optimize/opt_conv_tensorcore.rst.txt |   6 +-
 docs/_sources/tutorials/optimize/opt_gemm.rst.txt  |  16 +--
 .../tutorials/optimize/sg_execution_times.rst.txt  |   8 +-
 docs/_sources/tutorials/topi/intro_topi.rst.txt    |   2 +-
 .../tutorials/topi/sg_execution_times.rst.txt      |   4 +-
 .../tutorials/autotvm/sg_execution_times.rst.txt   |   6 +-
 .../frontend/deploy_classification.rst.txt         |   2 +-
 .../tutorials/frontend/deploy_detection.rst.txt    |   2 +-
 .../tutorials/frontend/sg_execution_times.rst.txt  |   6 +-
 .../_sources/vta/tutorials/matrix_multiply.rst.txt |   4 +-
 .../vta/tutorials/optimize/convolution_opt.rst.txt |   4 +-
 .../tutorials/optimize/matrix_multiply_opt.rst.txt |   4 +-
 .../tutorials/optimize/sg_execution_times.rst.txt  |   6 +-
 .../vta/tutorials/sg_execution_times.rst.txt       |   6 +-
 docs/_static/documentation_options.js              |   2 +-
 .../javadoc/org/apache/tvm/class-use/Function.html |  16 +--
 .../javadoc/org/apache/tvm/class-use/Module.html   |   8 +-
 .../org/apache/tvm/class-use/NDArrayBase.html      |   4 +-
 docs/api/links.html                                |   4 +-
 docs/api/python/auto_scheduler.html                |  10 +-
 docs/api/python/autotvm.html                       |   4 +-
 docs/api/python/contrib.html                       |   4 +-
 docs/api/python/driver.html                        |   4 +-
 docs/api/python/error.html                         |   4 +-
 docs/api/python/graph_executor.html                |   4 +-
 docs/api/python/index.html                         |   4 +-
 docs/api/python/ir.html                            |   4 +-
 docs/api/python/micro.html                         |   4 +-
 docs/api/python/ndarray.html                       |   4 +-
 docs/api/python/relay/analysis.html                |   4 +-
 docs/api/python/relay/backend.html                 |   4 +-
 docs/api/python/relay/dataflow_pattern.html        |   4 +-
 docs/api/python/relay/frontend.html                |  11 +-
 docs/api/python/relay/image.html                   |   4 +-
 docs/api/python/relay/index.html                   |   4 +-
 docs/api/python/relay/nn.html                      |   4 +-
 docs/api/python/relay/testing.html                 |   4 +-
 docs/api/python/relay/transform.html               |   4 +-
 docs/api/python/relay/vision.html                  |   4 +-
 docs/api/python/rpc.html                           |   4 +-
 docs/api/python/runtime.html                       |   4 +-
 docs/api/python/target.html                        |   4 +-
 docs/api/python/te.html                            |   4 +-
 docs/api/python/tir.html                           |   4 +-
 docs/api/python/topi.html                          |   4 +-
 docs/api/python/vta/index.html                     |   4 +-
 docs/api/typedoc/classes/bytestreamreader.html     |  12 +-
 docs/api/typedoc/classes/cachedcallstack.html      |  34 ++---
 docs/api/typedoc/classes/dldatatype.html           |  12 +-
 docs/api/typedoc/classes/dldevice.html             |  10 +-
 docs/api/typedoc/classes/environment.html          |  12 +-
 docs/api/typedoc/classes/ffilibrary.html           |  20 +--
 docs/api/typedoc/classes/graphexecutor.html        |  16 +--
 docs/api/typedoc/classes/instance.html             |  40 +++---
 docs/api/typedoc/classes/memory.html               |  34 ++---
 docs/api/typedoc/classes/module.html               |  10 +-
 docs/api/typedoc/classes/ndarray.html              |  22 +--
 docs/api/typedoc/classes/packedfunccell.html       |   6 +-
 docs/api/typedoc/classes/rpcserver.html            |  14 +-
 docs/api/typedoc/classes/scalar.html               |   6 +-
 docs/api/typedoc/classes/webgpucontext.html        |  12 +-
 docs/api/typedoc/enums/argtypecode.html            |  30 ++---
 docs/api/typedoc/enums/aynccallbackcode.html       |   4 +-
 docs/api/typedoc/enums/dldatatypecode.html         |   8 +-
 docs/api/typedoc/enums/rpcserverstate.html         |  12 +-
 docs/api/typedoc/enums/sizeof.html                 |  18 +--
 docs/api/typedoc/index.html                        | 112 ++++++++--------
 docs/api/typedoc/interfaces/disposable.html        |   2 +-
 docs/api/typedoc/interfaces/functioninfo.html      |   6 +-
 docs/api/typedoc/interfaces/libraryprovider.html   |   4 +-
 docs/contribute/code_guide.html                    |   4 +-
 docs/contribute/code_review.html                   |   4 +-
 docs/contribute/committer_guide.html               |   4 +-
 docs/contribute/community.html                     |   4 +-
 docs/contribute/document.html                      |   4 +-
 docs/contribute/error_handling.html                |   4 +-
 docs/contribute/git_howto.html                     |   4 +-
 docs/contribute/index.html                         |   4 +-
 docs/contribute/pull_request.html                  |   4 +-
 docs/contribute/release_process.html               |   4 +-
 docs/deploy/android.html                           |   4 +-
 docs/deploy/arm_compute_lib.html                   |   4 +-
 docs/deploy/bnns.html                              |   4 +-
 docs/deploy/cpp_deploy.html                        |   4 +-
 docs/deploy/hls.html                               |   4 +-
 docs/deploy/index.html                             |   4 +-
 docs/deploy/integrate.html                         |   4 +-
 docs/deploy/tensorrt.html                          |   4 +-
 docs/deploy/vitis_ai.html                          |   4 +-
 docs/dev/benchmark.html                            |   4 +-
 docs/dev/codebase_walkthrough.html                 |   4 +-
 docs/dev/convert_layout.html                       |   4 +-
 docs/dev/debugger.html                             |   4 +-
 docs/dev/device_target_interactions.html           |   4 +-
 docs/dev/frontend/tensorflow.html                  |   4 +-
 docs/dev/how_to.html                               |   4 +-
 docs/dev/hybrid_script.html                        |   4 +-
 docs/dev/index.html                                |   4 +-
 docs/dev/inferbound.html                           |   4 +-
 docs/dev/introduction_to_module_serialization.html |   4 +-
 docs/dev/microtvm_design.html                      |   4 +-
 docs/dev/model_library_format.html                 |   4 +-
 docs/dev/pass_infra.html                           |   4 +-
 docs/dev/pytest_target_parametrization.html        |   4 +-
 docs/dev/relay_add_op.html                         |   4 +-
 docs/dev/relay_add_pass.html                       |   4 +-
 docs/dev/relay_bring_your_own_codegen.html         |   4 +-
 docs/dev/relay_intro.html                          |   4 +-
 docs/dev/relay_op_strategy.html                    |   4 +-
 docs/dev/runtime.html                              |   4 +-
 docs/dev/runtimes/vulkan.html                      |   4 +-
 docs/dev/security.html                             |   4 +-
 docs/dev/virtual_machine.html                      |   4 +-
 docs/errors.html                                   |   4 +-
 docs/faq.html                                      |   4 +-
 docs/genindex.html                                 |   4 +-
 docs/index.html                                    |   4 +-
 docs/install/docker.html                           |   4 +-
 docs/install/from_source.html                      |   4 +-
 docs/install/index.html                            |   4 +-
 docs/install/nnpack.html                           |   4 +-
 docs/langref/hybrid_script.html                    |   4 +-
 docs/langref/index.html                            |   4 +-
 docs/langref/relay_adt.html                        |   4 +-
 docs/langref/relay_expr.html                       |   4 +-
 docs/langref/relay_op.html                         |   4 +-
 docs/langref/relay_pattern.html                    |   4 +-
 docs/langref/relay_type.html                       |   4 +-
 docs/microtvm/index.html                           |   4 +-
 docs/objects.inv                                   | Bin 19940 -> 19926 bytes
 docs/profiling/index.html                          |   4 +-
 docs/profiling/papi.html                           |   4 +-
 docs/py-modindex.html                              |   4 +-
 docs/search.html                                   |   4 +-
 docs/searchindex.js                                |   2 +-
 .../auto_scheduler/sg_execution_times.html         |  18 +--
 .../auto_scheduler/tune_conv2d_layer_cuda.html     |   7 +-
 .../tutorials/auto_scheduler/tune_network_arm.html |  48 +++----
 .../auto_scheduler/tune_network_cuda.html          |  54 ++++----
 .../auto_scheduler/tune_network_mali.html          |  48 +++----
 .../tutorials/auto_scheduler/tune_network_x86.html |  64 ++++-----
 docs/tutorials/auto_scheduler/tune_sparse_x86.html |  44 +++---
 docs/tutorials/autotvm/sg_execution_times.html     |  16 +--
 docs/tutorials/autotvm/tune_conv2d_cuda.html       |  46 +++----
 docs/tutorials/autotvm/tune_relay_arm.html         |   4 +-
 docs/tutorials/autotvm/tune_relay_cuda.html        |   4 +-
 docs/tutorials/autotvm/tune_relay_mobile_gpu.html  |   4 +-
 docs/tutorials/autotvm/tune_relay_x86.html         |   4 +-
 docs/tutorials/dev/bring_your_own_datatypes.html   |   4 +-
 docs/tutorials/dev/low_level_custom_pass.html      |   8 +-
 docs/tutorials/dev/sg_execution_times.html         |  14 +-
 docs/tutorials/dev/use_pass_infra.html             |   4 +-
 docs/tutorials/dev/use_pass_instrument.html        |  20 +--
 docs/tutorials/frontend/build_gcn.html             |  15 ++-
 .../frontend/deploy_model_on_android.html          |   6 +-
 docs/tutorials/frontend/deploy_model_on_rasp.html  |   4 +-
 .../frontend/deploy_object_detection_pytorch.html  |  52 ++++++-
 docs/tutorials/frontend/deploy_prequantized.html   |  20 ++-
 .../frontend/deploy_prequantized_tflite.html       |   8 +-
 docs/tutorials/frontend/deploy_quantized.html      |   5 +-
 docs/tutorials/frontend/deploy_sparse.html         |   4 +-
 docs/tutorials/frontend/deploy_ssd_gluoncv.html    |  31 ++++-
 docs/tutorials/frontend/from_caffe2.html           |  15 ++-
 docs/tutorials/frontend/from_coreml.html           |   4 +-
 docs/tutorials/frontend/from_darknet.html          |   5 +-
 docs/tutorials/frontend/from_keras.html            |   4 +-
 docs/tutorials/frontend/from_mxnet.html            |   7 +-
 docs/tutorials/frontend/from_onnx.html             |   6 +-
 docs/tutorials/frontend/from_pytorch.html          |  13 +-
 docs/tutorials/frontend/from_tensorflow.html       | 145 +-------------------
 docs/tutorials/frontend/from_tflite.html           |   4 +-
 docs/tutorials/frontend/sg_execution_times.html    |  44 +++---
 docs/tutorials/frontend/using_external_lib.html    |   4 +-
 .../get_started/auto_scheduler_matmul_x86.html     |   6 +-
 docs/tutorials/get_started/autotvm_matmul_x86.html |   4 +-
 docs/tutorials/get_started/autotvm_relay_x86.html  | 134 ++++++++++++------
 .../get_started/cross_compilation_and_rpc.html     |   6 +-
 docs/tutorials/get_started/install.html            |   4 +-
 docs/tutorials/get_started/introduction.html       |   4 +-
 docs/tutorials/get_started/relay_quick_start.html  |   4 +-
 docs/tutorials/get_started/sg_execution_times.html |  24 ++--
 .../get_started/tensor_expr_get_started.html       |  61 +++++----
 .../get_started/tvmc_command_line_driver.html      |   4 +-
 docs/tutorials/index.html                          |   4 +-
 docs/tutorials/language/extern_op.html             |   4 +-
 docs/tutorials/language/intrin_math.html           |   4 +-
 docs/tutorials/language/reduction.html             |   8 +-
 docs/tutorials/language/scan.html                  |   4 +-
 docs/tutorials/language/schedule_primitives.html   |  10 +-
 docs/tutorials/language/sg_execution_times.html    |  22 +--
 docs/tutorials/language/tedd.html                  |   4 +-
 docs/tutorials/language/tensorize.html             |   8 +-
 docs/tutorials/language/tuple_inputs.html          |  20 +--
 docs/tutorials/micro/micro_autotune.html           |  44 +++---
 docs/tutorials/micro/micro_reference_vm.html       |   4 +-
 docs/tutorials/micro/micro_tflite.html             |  14 +-
 docs/tutorials/micro/sg_execution_times.html       |   8 +-
 docs/tutorials/optimize/opt_conv_cuda.html         |   6 +-
 docs/tutorials/optimize/opt_conv_tensorcore.html   |  10 +-
 docs/tutorials/optimize/opt_gemm.html              |  20 +--
 docs/tutorials/optimize/sg_execution_times.html    |  12 +-
 docs/tutorials/topi/intro_topi.html                |   6 +-
 docs/tutorials/topi/sg_execution_times.html        |   8 +-
 docs/vta/dev/config.html                           |   4 +-
 docs/vta/dev/hardware.html                         |   4 +-
 docs/vta/dev/index.html                            |   4 +-
 docs/vta/index.html                                |   4 +-
 docs/vta/install.html                              |   4 +-
 docs/vta/tutorials/autotvm/sg_execution_times.html |  10 +-
 docs/vta/tutorials/autotvm/tune_alu_vta.html       |   4 +-
 docs/vta/tutorials/autotvm/tune_relay_vta.html     |   4 +-
 .../tutorials/frontend/deploy_classification.html  |   6 +-
 docs/vta/tutorials/frontend/deploy_detection.html  |   6 +-
 .../vta/tutorials/frontend/sg_execution_times.html |  10 +-
 docs/vta/tutorials/index.html                      |   4 +-
 docs/vta/tutorials/matrix_multiply.html            |   8 +-
 docs/vta/tutorials/optimize/convolution_opt.html   |   8 +-
 .../tutorials/optimize/matrix_multiply_opt.html    |   8 +-
 .../vta/tutorials/optimize/sg_execution_times.html |  10 +-
 docs/vta/tutorials/sg_execution_times.html         |  10 +-
 docs/vta/tutorials/vta_get_started.html            |   4 +-
 264 files changed, 1568 insertions(+), 1621 deletions(-)

diff --git a/docs/_images/sphx_glr_from_onnx_001.png b/docs/_images/sphx_glr_from_onnx_001.png
index c4edf1c..9b6e8e3 100644
Binary files a/docs/_images/sphx_glr_from_onnx_001.png and b/docs/_images/sphx_glr_from_onnx_001.png differ
diff --git a/docs/_images/sphx_glr_from_onnx_thumb.png b/docs/_images/sphx_glr_from_onnx_thumb.png
index 0416e96..669223c 100644
Binary files a/docs/_images/sphx_glr_from_onnx_thumb.png and b/docs/_images/sphx_glr_from_onnx_thumb.png differ
diff --git a/docs/_images/sphx_glr_micro_autotune_thumb.png b/docs/_images/sphx_glr_micro_autotune_thumb.png
index b06c4e6..233f8e6 100644
Binary files a/docs/_images/sphx_glr_micro_autotune_thumb.png and b/docs/_images/sphx_glr_micro_autotune_thumb.png differ
diff --git a/docs/_sources/tutorials/auto_scheduler/sg_execution_times.rst.txt b/docs/_sources/tutorials/auto_scheduler/sg_execution_times.rst.txt
index 5d6eca1..7b9f037 100644
--- a/docs/_sources/tutorials/auto_scheduler/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/sg_execution_times.rst.txt
@@ -5,11 +5,11 @@
 
 Computation times
 =================
-**02:43.083** total execution time for **tutorials_auto_scheduler** files:
-
-- **00:54.913**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_x86.py` (``tune_network_x86.py``)
-- **00:51.988**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_conv2d_layer_cuda.py` (``tune_conv2d_layer_cuda.py``)
-- **00:30.251**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_cuda.py` (``tune_network_cuda.py``)
-- **00:10.337**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_sparse_x86.py` (``tune_sparse_x86.py``)
-- **00:08.422**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_mali.py` (``tune_network_mali.py``)
-- **00:07.172**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_arm.py` (``tune_network_arm.py``)
+**04:07.859** total execution time for **tutorials_auto_scheduler** files:
+
+- **02:12.551**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_conv2d_layer_cuda.py` (``tune_conv2d_layer_cuda.py``)
+- **00:52.866**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_x86.py` (``tune_network_x86.py``)
+- **00:30.958**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_cuda.py` (``tune_network_cuda.py``)
+- **00:17.657**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_sparse_x86.py` (``tune_sparse_x86.py``)
+- **00:07.020**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_mali.py` (``tune_network_mali.py``)
+- **00:06.806**: :ref:`sphx_glr_tutorials_auto_scheduler_tune_network_arm.py` (``tune_network_arm.py``)
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_conv2d_layer_cuda.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_conv2d_layer_cuda.rst.txt
index 53b9906..4a9a1ec 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_conv2d_layer_cuda.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_conv2d_layer_cuda.rst.txt
@@ -191,6 +191,7 @@ file and apply it.
 
 
 
+
 We can lower the schedule to see the IR after auto-scheduling.
 The auto-scheduler correctly performs optimizations including multi-level tiling,
 cooperative fetching, unrolling and operator fusion.
@@ -745,7 +746,7 @@ We build the binary and check its correctness and performance.
 
  .. code-block:: none
 
-    Execution time of this operator: 0.275 ms
+    Execution time of this operator: 0.353 ms
 
 
 
@@ -1343,6 +1344,11 @@ In the example below we resume the status and do more 5 trials.
 
 
 
+.. rst-class:: sphx-glr-timing
+
+   **Total running time of the script:** ( 2 minutes  12.551 seconds)
+
+
 .. _sphx_glr_download_tutorials_auto_scheduler_tune_conv2d_layer_cuda.py:
 
 
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_network_arm.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_network_arm.rst.txt
index 39ff416..6d0e132 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_network_arm.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_network_arm.rst.txt
@@ -304,14 +304,14 @@ The task scheduler will just optimize this objective.
 
     Get model...
     Extract tasks...
-    ========== Task 0  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", [1, 1024], [1000, 1024], [1, 1000], [1, 1000]]) ==========
+    ========== Task 0  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", 1, 1024, 1000, 1024, 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1024]
     placeholder = PLACEHOLDER [1000, 1024]
     T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
     placeholder = PLACEHOLDER [1, 1000]
     T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-    ========== Task 1  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 28, 28, 128], [1, 1, 128, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 1  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 28, 28, 128, 1, 1, 128, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 256]
@@ -320,7 +320,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 2  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 28, 28, 256], [1, 1, 256, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 2  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 28, 28, 256, 1, 1, 256, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 256]
@@ -329,7 +329,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 3  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 3  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -338,7 +338,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 4  (workload key: ["98418eda02701ddd175ad50e364a0638", [1, 224, 224, 3], [3, 3, 3, 32], [1, 112, 1, 1], [1, 112, 1, 1], [1, 112, 112, 32]]) ==========
+    ========== Task 4  (workload key: ["98418eda02701ddd175ad50e364a0638", 1, 224, 224, 3, 3, 3, 3, 32, 1, 112, 1, 1, 1, 112, 1, 1, 1, 112, 112, 32]) ==========
     placeholder = PLACEHOLDER [1, 224, 224, 3]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 225)) && (i2 >= 1)) && (i2 < 225)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 3, 32]
@@ -349,7 +349,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, 0, 0])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 5  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 5  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -358,7 +358,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 6  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 14, 14, 512], [1, 1, 512, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 6  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 14, 14, 512, 1, 1, 512, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 512]
@@ -367,7 +367,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 7  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 7  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -376,7 +376,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 8  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 7, 7, 1024], [1, 1, 1024, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 8  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 7, 7, 1024, 1, 1, 1024, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 1024, 1024]
@@ -385,7 +385,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 128], [1, 1, 128, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 128, 1, 1, 128, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 128]
@@ -394,7 +394,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 10  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 10  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -403,7 +403,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 11  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 11  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -412,12 +412,12 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 12  (workload key: ["69115f188984ae34ede37c3b8ca40b43", [1, 7, 7, 1024], [1, 1, 1, 1024]]) ==========
+    ========== Task 12  (workload key: ["69115f188984ae34ede37c3b8ca40b43", 1, 7, 7, 1024, 1, 1, 1, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
     tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-    ========== Task 13  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 7, 7, 512], [1, 1, 512, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 13  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 7, 7, 512, 1, 1, 512, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 1024]
@@ -426,7 +426,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 14  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 14, 14, 256], [1, 1, 256, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 14  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 14, 14, 256, 1, 1, 256, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -435,7 +435,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 15  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 15  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -444,7 +444,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 16  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 7, 7, 1024], [3, 3, 1024, 1], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 16  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 7, 7, 1024, 3, 3, 1024, 1, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 1024, 1]
@@ -453,7 +453,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 17  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 64], [1, 1, 64, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 17  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 64, 1, 1, 64, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 128]
@@ -462,7 +462,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 18  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 112, 112, 64], [3, 3, 64, 1], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 18  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 112, 112, 64, 3, 3, 64, 1, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 64]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 113)) && (i2 >= 1)) && (i2 < 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 64, 1]
@@ -471,14 +471,14 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 19  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", [1, 1000], [1, 1000]]) ==========
+    ========== Task 19  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1000]
     T_softmax_maxelem(i0) max= placeholder[i0, k]
     T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
     T_softmax_expsum(i0) += T_softmax_exp[i0, k]
     T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-    ========== Task 20  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 112, 112, 32], [3, 3, 32, 1], [1, 1, 1, 32], [1, 112, 112, 32]]) ==========
+    ========== Task 20  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 112, 112, 32, 3, 3, 32, 1, 1, 1, 1, 32, 1, 112, 112, 32]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 32]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 113)) && (i2 >= 1)) && (i2 < 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 32, 1]
@@ -487,7 +487,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 112, 112, 32], [1, 1, 32, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 112, 112, 32, 1, 1, 32, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 32]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 32, 64]
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_network_cuda.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_network_cuda.rst.txt
index bbb0c17..289476d 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_network_cuda.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_network_cuda.rst.txt
@@ -182,7 +182,7 @@ The task scheduler will just optimize this objective.
  .. code-block:: none
 
     Extract tasks...
-    ========== Task 0  (workload key: ["d374e472bd9d8164892b9e28a0a8cb59", [1, 14, 14, 256], [4, 4, 256, 256], [1, 14, 14, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 0  (workload key: ["d374e472bd9d8164892b9e28a0a8cb59", 1, 14, 14, 256, 4, 4, 256, 256, 1, 14, 14, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -196,14 +196,14 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 1  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", [1, 1000], [1, 1000]]) ==========
+    ========== Task 1  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1000]
     T_softmax_maxelem(i0) max= placeholder[i0, k]
     T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
     T_softmax_expsum(i0) += T_softmax_exp[i0, k]
     T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-    ========== Task 2  (workload key: ["64b98c71af70a904fdbb81d7d4188d84", [1, 112, 112, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 2  (workload key: ["64b98c71af70a904fdbb81d7d4188d84", 1, 112, 112, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 64]
     pad_temp(ax0, ax1, ax2, ax3) = tir.if_then_else(((((ax1 >= 1) && (ax1 < 113)) && (ax2 >= 1)) && (ax2 < 113)), placeholder[ax0, (ax1 - 1), (ax2 - 1), ax3], -3.40282e+38f)
     tensor(ax0, ax1, ax2, ax3) max= pad_temp[ax0, ((ax1*2) + rv0), ((ax2*2) + rv1), ax3]
@@ -211,13 +211,13 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 3  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 56, 56, 64], [1, 1, 64, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 3  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 56, 56, 64, 1, 1, 64, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 128]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 4  (workload key: ["c4500b4e2fd04e695c32d2f31bbdc14a", [1, 28, 28, 128], [4, 4, 128, 128], [1, 28, 28, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 4  (workload key: ["c4500b4e2fd04e695c32d2f31bbdc14a", 1, 28, 28, 128, 4, 4, 128, 128, 1, 28, 28, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -234,13 +234,13 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 5  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 28, 28, 128], [1, 1, 128, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 5  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 28, 28, 128, 1, 1, 128, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 256]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 6  (workload key: ["e4cdf917b876dbdd64488c3818d9c141", [1, 28, 28, 128], [4, 4, 128, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 6  (workload key: ["e4cdf917b876dbdd64488c3818d9c141", 1, 28, 28, 128, 4, 4, 128, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -255,7 +255,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 7  (workload key: ["dac19035dd5fe9424ee8617421b9c817", [1, 28, 28, 128], [4, 4, 128, 128], [1, 28, 28, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 7  (workload key: ["dac19035dd5fe9424ee8617421b9c817", 1, 28, 28, 128, 4, 4, 128, 128, 1, 28, 28, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -269,7 +269,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 8  (workload key: ["3ea73fb9b0364374730d09e068821f95", [1, 56, 56, 64], [6, 6, 64, 64], [1, 56, 56, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 8  (workload key: ["3ea73fb9b0364374730d09e068821f95", 1, 56, 56, 64, 6, 6, 64, 64, 1, 56, 56, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -283,7 +283,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 9  (workload key: ["d730bcd28f0920f6b97245e2a11bd8d6", [1, 7, 7, 512], [4, 4, 512, 512], [1, 7, 7, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 9  (workload key: ["d730bcd28f0920f6b97245e2a11bd8d6", 1, 7, 7, 512, 4, 4, 512, 512, 1, 7, 7, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -297,7 +297,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 10  (workload key: ["12b88bedece6984af589a28b43e0f3c4", [1, 14, 14, 256], [3, 3, 256, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 10  (workload key: ["12b88bedece6984af589a28b43e0f3c4", 1, 14, 14, 256, 3, 3, 256, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 256, 512]
@@ -306,7 +306,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 11  (workload key: ["1e3c4211ffd2f2db91078ae4d04b779d", [1, 56, 56, 64], [6, 6, 64, 64], [1, 56, 56, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 11  (workload key: ["1e3c4211ffd2f2db91078ae4d04b779d", 1, 56, 56, 64, 6, 6, 64, 64, 1, 56, 56, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -323,12 +323,12 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 12  (workload key: ["69115f188984ae34ede37c3b8ca40b43", [1, 7, 7, 512], [1, 1, 1, 512]]) ==========
+    ========== Task 12  (workload key: ["69115f188984ae34ede37c3b8ca40b43", 1, 7, 7, 512, 1, 1, 1, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
     tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-    ========== Task 13  (workload key: ["12b88bedece6984af589a28b43e0f3c4", [1, 56, 56, 64], [3, 3, 64, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 13  (workload key: ["12b88bedece6984af589a28b43e0f3c4", 1, 56, 56, 64, 3, 3, 64, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 64, 128]
@@ -337,7 +337,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 14  (workload key: ["f3b6c10fcc6ce01ff01add933e4d21e9", [1, 14, 14, 256], [4, 4, 256, 256], [1, 14, 14, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 14  (workload key: ["f3b6c10fcc6ce01ff01add933e4d21e9", 1, 14, 14, 256, 4, 4, 256, 256, 1, 14, 14, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -354,7 +354,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 15  (workload key: ["b8b52b9be9df6102466a22a014c44c1f", [1, 14, 14, 256], [4, 4, 256, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 15  (workload key: ["b8b52b9be9df6102466a22a014c44c1f", 1, 14, 14, 256, 4, 4, 256, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -369,7 +369,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 16  (workload key: ["12b88bedece6984af589a28b43e0f3c4", [1, 28, 28, 128], [3, 3, 128, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 16  (workload key: ["12b88bedece6984af589a28b43e0f3c4", 1, 28, 28, 128, 3, 3, 128, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 128, 256]
@@ -378,7 +378,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 17  (workload key: ["ad6cecbf5d85cb1cda3c2bb7af170211", [1, 7, 7, 512], [4, 4, 512, 512], [1, 7, 7, 512], [1, 1, 1, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 17  (workload key: ["ad6cecbf5d85cb1cda3c2bb7af170211", 1, 7, 7, 512, 4, 4, 512, 512, 1, 7, 7, 512, 1, 1, 1, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -397,7 +397,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 18  (workload key: ["3a69f9fbc63760d99e36b4c17b3bfc57", [1, 7, 7, 512], [4, 4, 512, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 18  (workload key: ["3a69f9fbc63760d99e36b4c17b3bfc57", 1, 7, 7, 512, 4, 4, 512, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -412,7 +412,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 19  (workload key: ["12b88bedece6984af589a28b43e0f3c4", [1, 224, 224, 3], [7, 7, 3, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+    ========== Task 19  (workload key: ["12b88bedece6984af589a28b43e0f3c4", 1, 224, 224, 3, 7, 7, 3, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
     placeholder = PLACEHOLDER [1, 224, 224, 3]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 3) && (i1 < 227)) && (i2 >= 3)) && (i2 < 227)), placeholder[i0, (i1 - 3), (i2 - 3), i3], 0f)
     placeholder = PLACEHOLDER [7, 7, 3, 64]
@@ -421,20 +421,20 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 20  (workload key: ["7006235cfc29b73be524cf390ed5a977", [1, 56, 56, 64], [1, 1, 64, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 20  (workload key: ["7006235cfc29b73be524cf390ed5a977", 1, 56, 56, 64, 1, 1, 64, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 64]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 21  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", [1, 512], [1000, 512], [1, 1000], [1, 1000]]) ==========
+    ========== Task 21  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", 1, 512, 1000, 512, 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 512]
     placeholder = PLACEHOLDER [1000, 512]
     T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
     placeholder = PLACEHOLDER [1, 1000]
     T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-    ========== Task 22  (workload key: ["b818b53148cd450f86569dfc3e04cb8a", [1, 56, 56, 64], [6, 6, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 22  (workload key: ["b818b53148cd450f86569dfc3e04cb8a", 1, 56, 56, 64, 6, 6, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -449,7 +449,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 23  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 14, 14, 256], [1, 1, 256, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 23  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 14, 14, 256, 1, 1, 256, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -614,7 +614,7 @@ so we can read the log file and load the best schedules.
     Evaluate inference time cost...
     Execution time summary:
      mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)  
-       1.6973       1.6973       1.6973       1.6972       0.0000   
+       3.1068       3.1042       3.1168       3.0995       0.0073   
                
 
 
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_network_mali.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_network_mali.rst.txt
index 6520763..65ab69f 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_network_mali.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_network_mali.rst.txt
@@ -207,14 +207,14 @@ The task scheduler will just optimize this objective.
  .. code-block:: none
 
     Extract tasks...
-    ========== Task 0  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", [1, 1024], [1000, 1024], [1, 1000], [1, 1000]]) ==========
+    ========== Task 0  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", 1, 1024, 1000, 1024, 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1024]
     placeholder = PLACEHOLDER [1000, 1024]
     T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
     placeholder = PLACEHOLDER [1, 1000]
     T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-    ========== Task 1  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 28, 28, 128], [1, 1, 128, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 1  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 28, 28, 128, 1, 1, 128, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 256]
@@ -223,7 +223,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 2  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 28, 28, 256], [1, 1, 256, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 2  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 28, 28, 256, 1, 1, 256, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 256]
@@ -232,7 +232,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 3  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 3  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -241,7 +241,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 4  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 14, 14, 512], [1, 1, 512, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 4  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 14, 14, 512, 1, 1, 512, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 512]
@@ -250,7 +250,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 5  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 5  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -259,7 +259,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 6  (workload key: ["98418eda02701ddd175ad50e364a0638", [1, 224, 224, 3], [3, 3, 3, 32], [1, 112, 1, 1], [1, 112, 1, 1], [1, 112, 112, 32]]) ==========
+    ========== Task 6  (workload key: ["98418eda02701ddd175ad50e364a0638", 1, 224, 224, 3, 3, 3, 3, 32, 1, 112, 1, 1, 1, 112, 1, 1, 1, 112, 112, 32]) ==========
     placeholder = PLACEHOLDER [1, 224, 224, 3]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 225)) && (i2 >= 1)) && (i2 < 225)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 3, 32]
@@ -270,7 +270,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, 0, 0])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 7  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+    ========== Task 7  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -279,7 +279,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 8  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 7, 7, 1024], [1, 1, 1024, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 8  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 7, 7, 1024, 1, 1, 1024, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 1024, 1024]
@@ -288,7 +288,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 128], [1, 1, 128, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 128, 1, 1, 128, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 128]
@@ -297,7 +297,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 10  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 10  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 128]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -306,7 +306,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 11  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 11  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 256]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -315,7 +315,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 12  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 12  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 512]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -324,7 +324,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 13  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 14, 14, 256], [1, 1, 256, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+    ========== Task 13  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 14, 14, 256, 1, 1, 256, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -333,12 +333,12 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 14  (workload key: ["69115f188984ae34ede37c3b8ca40b43", [1, 7, 7, 1024], [1, 1, 1, 1024]]) ==========
+    ========== Task 14  (workload key: ["69115f188984ae34ede37c3b8ca40b43", 1, 7, 7, 1024, 1, 1, 1, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
     tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-    ========== Task 15  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 7, 7, 512], [1, 1, 512, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 15  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 7, 7, 512, 1, 1, 512, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 1024]
@@ -347,7 +347,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 16  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 7, 7, 1024], [3, 3, 1024, 1], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+    ========== Task 16  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 7, 7, 1024, 3, 3, 1024, 1, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 1024]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 1024, 1]
@@ -356,7 +356,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 17  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 64], [1, 1, 64, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+    ========== Task 17  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 64, 1, 1, 64, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 128]
@@ -365,7 +365,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 18  (workload key: ["c87ba68bc180312f5716af09a77ca15b", [1, 112, 112, 64], [3, 3, 64, 1], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 18  (workload key: ["c87ba68bc180312f5716af09a77ca15b", 1, 112, 112, 64, 3, 3, 64, 1, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 64]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 113)) && (i2 >= 1)) && (i2 < 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 64, 1]
@@ -374,14 +374,14 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 19  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", [1, 1000], [1, 1000]]) ==========
+    ========== Task 19  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1000]
     T_softmax_maxelem(i0) max= placeholder[i0, k]
     T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
     T_softmax_expsum(i0) += T_softmax_exp[i0, k]
     T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-    ========== Task 20  (workload key: ["06fce76bd84cb904eee50b905ca9449a", [1, 112, 112, 32], [3, 3, 32, 1], [1, 1, 1, 32], [1, 112, 112, 32]]) ==========
+    ========== Task 20  (workload key: ["06fce76bd84cb904eee50b905ca9449a", 1, 112, 112, 32, 3, 3, 32, 1, 1, 1, 1, 32, 1, 112, 112, 32]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 32]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 113)) && (i2 >= 1)) && (i2 < 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 32, 1]
@@ -390,7 +390,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 112, 112, 32], [1, 1, 32, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 112, 112, 32, 1, 1, 32, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 32]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 32, 64]
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_network_x86.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_network_x86.rst.txt
index 7f4e2ab..68ef50d 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_network_x86.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_network_x86.rst.txt
@@ -205,13 +205,13 @@ The task scheduler will just optimize this objective.
 
     Get model...
     Extract tasks...
-    ========== Task 0  (workload key: ["7006235cfc29b73be524cf390ed5a977", [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256]]) ==========
+    ========== Task 0  (workload key: ["7006235cfc29b73be524cf390ed5a977", 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 256]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 1  (workload key: ["1b524af89dd867d26059e1f621cf987c", [1, 28, 28, 128], [1, 1, 128, 512], [1, 28, 28, 512], [1, 1, 1, 512], [1, 28, 28, 512]]) ==========
+    ========== Task 1  (workload key: ["1b524af89dd867d26059e1f621cf987c", 1, 28, 28, 128, 1, 1, 128, 512, 1, 28, 28, 512, 1, 1, 1, 512, 1, 28, 28, 512]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 512]
@@ -222,7 +222,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 2  (workload key: ["12b88bedece6984af589a28b43e0f3c4", [1, 224, 224, 3], [7, 7, 3, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+    ========== Task 2  (workload key: ["12b88bedece6984af589a28b43e0f3c4", 1, 224, 224, 3, 7, 7, 3, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
     placeholder = PLACEHOLDER [1, 224, 224, 3]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 3) && (i1 < 227)) && (i2 >= 3)) && (i2 < 227)), placeholder[i0, (i1 - 3), (i2 - 3), i3], 0f)
     placeholder = PLACEHOLDER [7, 7, 3, 64]
@@ -231,7 +231,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 3  (workload key: ["1cc666833c122282e3fcf3595901b12b", [1, 28, 28, 128], [1, 1, 128, 512], [1, 28, 28, 512], [1, 28, 28, 512]]) ==========
+    ========== Task 3  (workload key: ["1cc666833c122282e3fcf3595901b12b", 1, 28, 28, 128, 1, 1, 128, 512, 1, 28, 28, 512, 1, 28, 28, 512]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 128, 512]
@@ -239,7 +239,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 28, 28, 512]
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 4  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 256], [1, 1, 256, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 4  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 256, 1, 1, 256, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 64]
@@ -248,7 +248,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 5  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 28, 28, 512], [1, 1, 512, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 5  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 28, 28, 512, 1, 1, 512, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 128]
@@ -257,7 +257,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 6  (workload key: ["de7d1695278cf52778b038e6573d7626", [1, 28, 28, 512], [1, 1, 512, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 6  (workload key: ["de7d1695278cf52778b038e6573d7626", 1, 28, 28, 512, 1, 1, 512, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 256]
@@ -266,13 +266,13 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 7  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 56, 56, 256], [1, 1, 256, 512], [1, 28, 28, 512]]) ==========
+    ========== Task 7  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 56, 56, 256, 1, 1, 256, 512, 1, 28, 28, 512]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 512]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 8  (workload key: ["1cc666833c122282e3fcf3595901b12b", [1, 14, 14, 256], [1, 1, 256, 1024], [1, 14, 14, 1024], [1, 14, 14, 1024]]) ==========
+    ========== Task 8  (workload key: ["1cc666833c122282e3fcf3595901b12b", 1, 14, 14, 256, 1, 1, 256, 1024, 1, 14, 14, 1024, 1, 14, 14, 1024]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 1024]
@@ -280,7 +280,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 14, 14, 1024]
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 56, 56, 64], [1, 1, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 9  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 56, 56, 64, 1, 1, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 64]
@@ -289,13 +289,13 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 10  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 28, 28, 512], [1, 1, 512, 1024], [1, 14, 14, 1024]]) ==========
+    ========== Task 10  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 28, 28, 512, 1, 1, 512, 1024, 1, 14, 14, 1024]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 1024]
     Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-    ========== Task 11  (workload key: ["2350d19dc42a0665244368384c66b3a5", [1, 7, 7, 512], [3, 3, 512, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 11  (workload key: ["2350d19dc42a0665244368384c66b3a5", 1, 7, 7, 512, 3, 3, 512, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 8)) && (i2 >= 1)) && (i2 < 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 512, 512]
@@ -304,7 +304,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 12  (workload key: ["1b524af89dd867d26059e1f621cf987c", [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256], [1, 1, 1, 256], [1, 56, 56, 256]]) ==========
+    ========== Task 12  (workload key: ["1b524af89dd867d26059e1f621cf987c", 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256, 1, 1, 1, 256, 1, 56, 56, 256]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 256]
@@ -315,7 +315,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 13  (workload key: ["2350d19dc42a0665244368384c66b3a5", [1, 56, 56, 64], [3, 3, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 13  (workload key: ["2350d19dc42a0665244368384c66b3a5", 1, 56, 56, 64, 3, 3, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 57)) && (i2 >= 1)) && (i2 < 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     placeholder = PLACEHOLDER [3, 3, 64, 64]
@@ -324,7 +324,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 14  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 14, 14, 1024], [1, 1, 1024, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 14  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 14, 14, 1024, 1, 1, 1024, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 1024]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 1024, 256]
@@ -333,12 +333,12 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 15  (workload key: ["69115f188984ae34ede37c3b8ca40b43", [1, 7, 7, 2048], [1, 1, 1, 2048]]) ==========
+    ========== Task 15  (workload key: ["69115f188984ae34ede37c3b8ca40b43", 1, 7, 7, 2048, 1, 1, 1, 2048]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 2048]
     tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
     tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-    ========== Task 16  (workload key: ["1cc666833c122282e3fcf3595901b12b", [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256], [1, 56, 56, 256]]) ==========
+    ========== Task 16  (workload key: ["1cc666833c122282e3fcf3595901b12b", 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256, 1, 56, 56, 256]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 64]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 64, 256]
@@ -346,7 +346,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 56, 56, 256]
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 17  (workload key: ["de7d1695278cf52778b038e6573d7626", [1, 56, 56, 256], [1, 1, 256, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 17  (workload key: ["de7d1695278cf52778b038e6573d7626", 1, 56, 56, 256, 1, 1, 256, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 56, 56, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 128]
@@ -355,7 +355,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 18  (workload key: ["de7d1695278cf52778b038e6573d7626", [1, 14, 14, 1024], [1, 1, 1024, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 18  (workload key: ["de7d1695278cf52778b038e6573d7626", 1, 14, 14, 1024, 1, 1, 1024, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 1024]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 1024, 512]
@@ -364,7 +364,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 19  (workload key: ["ecec634b4882c5731f86cce3109db636", [1, 28, 28, 128], [6, 6, 128, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+    ========== Task 19  (workload key: ["ecec634b4882c5731f86cce3109db636", 1, 28, 28, 128, 6, 6, 128, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
     placeholder = PLACEHOLDER [1, 28, 28, 128]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 29)) && (i2 >= 1)) && (i2 < 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*4) + eps), ((floormod(p, 7)*4) + nu), ci]
@@ -379,7 +379,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 20  (workload key: ["1cc666833c122282e3fcf3595901b12b", [1, 7, 7, 512], [1, 1, 512, 2048], [1, 7, 7, 2048], [1, 7, 7, 2048]]) ==========
+    ========== Task 20  (workload key: ["1cc666833c122282e3fcf3595901b12b", 1, 7, 7, 512, 1, 1, 512, 2048, 1, 7, 7, 2048, 1, 7, 7, 2048]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 2048]
@@ -387,7 +387,7 @@ The task scheduler will just optimize this objective.
     placeholder = PLACEHOLDER [1, 7, 7, 2048]
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", [1, 7, 7, 2048], [1, 1, 2048, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+    ========== Task 21  (workload key: ["6b7583cf23c7c37d3212cad9d06e58c1", 1, 7, 7, 2048, 1, 1, 2048, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 2048]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 2048, 512]
@@ -396,7 +396,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 22  (workload key: ["875556d12d0be2269206a7775d5296a6", [1, 7, 7, 512], [1, 1, 512, 2048], [1, 7, 7, 2048], [1, 1, 1, 2048], [1, 1, 1, 2048], [1, 7, 7, 2048]]) ==========
+    ========== Task 22  (workload key: ["875556d12d0be2269206a7775d5296a6", 1, 7, 7, 512, 1, 1, 512, 2048, 1, 7, 7, 2048, 1, 1, 1, 2048, 1, 1, 1, 2048, 1, 7, 7, 2048]) ==========
     placeholder = PLACEHOLDER [1, 7, 7, 512]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 512, 2048]
@@ -409,7 +409,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 23  (workload key: ["c68f92478eb18145106184c587d212b6", [1, 14, 14, 256], [6, 6, 256, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+    ========== Task 23  (workload key: ["c68f92478eb18145106184c587d212b6", 1, 14, 14, 256, 6, 6, 256, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 >= 1) && (i1 < 15)) && (i2 >= 1)) && (i2 < 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
     input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*4) + eps), ((floormod(p, 4)*4) + nu), ci]
@@ -424,21 +424,21 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 24  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", [1, 2048], [1000, 2048], [1, 1000], [1, 1000]]) ==========
+    ========== Task 24  (workload key: ["7d44c6e3c81cd80f61ff2265b2bae89a", 1, 2048, 1000, 2048, 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 2048]
     placeholder = PLACEHOLDER [1000, 2048]
     T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
     placeholder = PLACEHOLDER [1, 1000]
     T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-    ========== Task 25  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", [1, 1000], [1, 1000]]) ==========
+    ========== Task 25  (workload key: ["d7b65649a4dd54becea0a52aabbc5af5", 1, 1000, 1, 1000]) ==========
     placeholder = PLACEHOLDER [1, 1000]
     T_softmax_maxelem(i0) max= placeholder[i0, k]
     T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
     T_softmax_expsum(i0) += T_softmax_exp[i0, k]
     T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-    ========== Task 26  (workload key: ["64b98c71af70a904fdbb81d7d4188d84", [1, 112, 112, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+    ========== Task 26  (workload key: ["64b98c71af70a904fdbb81d7d4188d84", 1, 112, 112, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
     placeholder = PLACEHOLDER [1, 112, 112, 64]
     pad_temp(ax0, ax1, ax2, ax3) = tir.if_then_else(((((ax1 >= 1) && (ax1 < 113)) && (ax2 >= 1)) && (ax2 < 113)), placeholder[ax0, (ax1 - 1), (ax2 - 1), ax3], -3.40282e+38f)
     tensor(ax0, ax1, ax2, ax3) max= pad_temp[ax0, ((ax1*2) + rv0), ((ax2*2) + rv1), ax3]
@@ -446,7 +446,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 27  (workload key: ["1b524af89dd867d26059e1f621cf987c", [1, 14, 14, 256], [1, 1, 256, 1024], [1, 14, 14, 1024], [1, 1, 1, 1024], [1, 14, 14, 1024]]) ==========
+    ========== Task 27  (workload key: ["1b524af89dd867d26059e1f621cf987c", 1, 14, 14, 256, 1, 1, 256, 1024, 1, 14, 14, 1024, 1, 1, 1, 1024, 1, 14, 14, 1024]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 256]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 256, 1024]
@@ -457,7 +457,7 @@ The task scheduler will just optimize this objective.
     T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
     T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-    ========== Task 28  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", [1, 14, 14, 1024], [1, 1, 1024, 2048], [1, 7, 7, 2048]]) ==========
+    ========== Task 28  (workload key: ["f4380bb1dc62422a69ad4a1a9771f927", 1, 14, 14, 1024, 1, 1, 1024, 2048, 1, 7, 7, 2048]) ==========
     placeholder = PLACEHOLDER [1, 14, 14, 1024]
     PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
     placeholder = PLACEHOLDER [1, 1, 1024, 2048]
@@ -633,7 +633,7 @@ so we can read the log file and load the best schedules.
     Evaluate inference time cost...
     Execution time summary:
      mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)  
-      561.6463     561.3978     563.6430     559.8980      1.5390   
+      552.8841     552.2991     554.2759     552.0773      0.9883   
                
 
 
diff --git a/docs/_sources/tutorials/auto_scheduler/tune_sparse_x86.rst.txt b/docs/_sources/tutorials/auto_scheduler/tune_sparse_x86.rst.txt
index b1c835d..e0788f1 100644
--- a/docs/_sources/tutorials/auto_scheduler/tune_sparse_x86.rst.txt
+++ b/docs/_sources/tutorials/auto_scheduler/tune_sparse_x86.rst.txt
@@ -330,6 +330,7 @@ file and apply it.
 
 
 
+
 We can lower the schedule to see the IR after auto-scheduling.
 The auto-scheduler correctly performs optimizations including multi-level tiling,
 layout transformation, parallelization, vectorization, unrolling, and operator fusion.
@@ -355,26 +356,32 @@ layout transformation, parallelization, vectorization, unrolling, and operator f
     primfn(placeholder_5: handle, placeholder_6: handle, placeholder_7: handle, placeholder_8: handle, placeholder_9: handle, compute_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {compute: Buffer(compute_2: Pointer(float32), float32, [128, 512], []),
-                 placeholder_4: Buffer(placeholder_10: Pointer(float32), float32, [128, 256], []),
-                 placeholder_3: Buffer(placeholder_11: Pointer(float32), float32, [128, 512], []),
-                 placeholder_2: Buffer(placeholder_12: Pointer(int32), int32, [33], []),
-                 placeholder: Buffer(placeholder_13: Pointer(float32), float32, [4916, 16, 1], []),
-                 placeholder_1: Buffer(placeholder_14: Pointer(int32), int32, [4916], [])}
-      buffer_map = {placeholder_6: placeholder, placeholder_7: placeholder_1, placeholder_8: placeholder_2, placeholder_9: placeholder_3, placeholder_5: placeholder_4, compute_1: compute} {
-      for (i0.outer.i1.outer.fused: int32, 0, 32) "parallel" {
-        allocate(compute_3: Pointer(global float32), float32, [2048]), storage_scope = global {
-          for (i.outer.inner: int32, 0, 128) {
-            for (j.init: int32, 0, 16) {
-              compute_3[((i.outer.inner*16) + j.init)] = 0f32
+                 placeholder_2: Buffer(placeholder_10: Pointer(int32), int32, [4916], []),
+                 placeholder: Buffer(placeholder_11: Pointer(float32), float32, [128, 512], []),
+                 placeholder_4: Buffer(placeholder_12: Pointer(float32), float32, [4916, 16, 1], []),
+                 placeholder_3: Buffer(placeholder_13: Pointer(int32), int32, [33], []),
+                 placeholder_1: Buffer(placeholder_14: Pointer(float32), float32, [128, 256], [])}
+      buffer_map = {placeholder_9: placeholder, placeholder_5: placeholder_1, placeholder_7: placeholder_2, placeholder_8: placeholder_3, compute_1: compute, placeholder_6: placeholder_4} {
+      for (i0.outer.i1.outer.fused: int32, 0, 512) "parallel" {
+        allocate(compute_3: Pointer(global float32), float32, [128]), storage_scope = global {
+          for (i.outer.inner: int32, 0, 2) {
+            for (i.inner.init: int32, 0, 4) {
+              for (j.init: int32, 0, 16) {
+                compute_3[(((i.outer.inner*64) + (i.inner.init*16)) + j.init)] = 0f32
+              }
             }
-            for (elem_idx: int32, 0, ((int32*)placeholder_12[(i0.outer.i1.outer.fused + 1)] - (int32*)placeholder_12[i0.outer.i1.outer.fused])) {
-              for (j: int32, 0, 16) {
-                compute_3[((i.outer.inner*16) + j)] = ((float32*)compute_3[((i.outer.inner*16) + j)] + ((float32*)placeholder_13[((((int32*)placeholder_12[i0.outer.i1.outer.fused]*16) + (elem_idx*16)) + j)]*max((float32*)placeholder_10[((i.outer.inner*256) + (int32*)placeholder_14[((int32*)placeholder_12[i0.outer.i1.outer.fused] + elem_idx)])], 0f32)))
+            for (elem_idx: int32, 0, ((int32*)placeholder_13[(floormod(i0.outer.i1.outer.fused, 32) + 1)] - (int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)])) {
+              for (i.inner: int32, 0, 4) {
+                for (j: int32, 0, 16) {
+                  compute_3[(((i.outer.inner*64) + (i.inner*16)) + j)] = ((float32*)compute_3[(((i.outer.inner*64) + (i.inner*16)) + j)] + ((float32*)placeholder_12[((((int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)]*16) + (elem_idx*16)) + j)]*max((float32*)placeholder_14[((((floordiv(i0.outer.i1.outer.fused, 32)*2048) + (i.outer.inner*1024)) + (i.inner*256)) + (int32*)placeholder_10[((int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)] + elem_idx)])], 0f32)))
+                }
               }
             }
           }
-          for (i0.inner: int32, 0, 128) {
-            compute_2[ramp(((i0.inner*512) + (i0.outer.i1.outer.fused*16)), 1, 16)] = max(((float32x16*)compute_3[ramp((i0.inner*16), 1, 16)] + (float32x16*)placeholder_11[ramp(((i0.inner*512) + (i0.outer.i1.outer.fused*16)), 1, 16)]), broadcast(0f32, 16))
+          for (i0.inner: int32, 0, 8) {
+            for (i1.inner: int32, 0, 16) {
+              compute_2[((((floordiv(i0.outer.i1.outer.fused, 32)*4096) + (i0.inner*512)) + (floormod(i0.outer.i1.outer.fused, 32)*16)) + i1.inner)] = max(((float32*)compute_3[((i0.inner*16) + i1.inner)] + (float32*)placeholder_11[((((floordiv(i0.outer.i1.outer.fused, 32)*4096) + (i0.inner*512)) + (floormod(i0.outer.i1.outer.fused, 32)*16)) + i1.inner)]), 0f32)
+            }
           }
         }
       }
@@ -428,7 +435,7 @@ We build the binary and check its correctness and performance.
 
  .. code-block:: none
 
-    Execution time of this operator: 1.277 ms
+    Execution time of this operator: 1.368 ms
 
 
 
diff --git a/docs/_sources/tutorials/autotvm/sg_execution_times.rst.txt b/docs/_sources/tutorials/autotvm/sg_execution_times.rst.txt
index dd076e8..08bc1a8 100644
--- a/docs/_sources/tutorials/autotvm/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/autotvm/sg_execution_times.rst.txt
@@ -5,10 +5,10 @@
 
 Computation times
 =================
-**00:39.245** total execution time for **tutorials_autotvm** files:
+**00:39.734** total execution time for **tutorials_autotvm** files:
 
-- **00:38.648**: :ref:`sphx_glr_tutorials_autotvm_tune_conv2d_cuda.py` (``tune_conv2d_cuda.py``)
-- **00:00.156**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_x86.py` (``tune_relay_x86.py``)
-- **00:00.148**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_arm.py` (``tune_relay_arm.py``)
-- **00:00.146**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_mobile_gpu.py` (``tune_relay_mobile_gpu.py``)
-- **00:00.146**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_cuda.py` (``tune_relay_cuda.py``)
+- **00:39.040**: :ref:`sphx_glr_tutorials_autotvm_tune_conv2d_cuda.py` (``tune_conv2d_cuda.py``)
+- **00:00.181**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_x86.py` (``tune_relay_x86.py``)
+- **00:00.172**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_cuda.py` (``tune_relay_cuda.py``)
+- **00:00.171**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_mobile_gpu.py` (``tune_relay_mobile_gpu.py``)
+- **00:00.170**: :ref:`sphx_glr_tutorials_autotvm_tune_relay_arm.py` (``tune_relay_arm.py``)
diff --git a/docs/_sources/tutorials/autotvm/tune_conv2d_cuda.rst.txt b/docs/_sources/tutorials/autotvm/tune_conv2d_cuda.rst.txt
index 5a51cb1..b6cac63 100644
--- a/docs/_sources/tutorials/autotvm/tune_conv2d_cuda.rst.txt
+++ b/docs/_sources/tutorials/autotvm/tune_conv2d_cuda.rst.txt
@@ -242,26 +242,26 @@ for this template
        7 unroll_explicit: OtherOption([0, 1]) len=2
     )
     Get devices for measurement successfully!
-    No: 1   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 2   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 3   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 4   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 5   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 6   GFLOPS: 201.58/201.58   result: MeasureResult(costs=(0.001148416731958763,), error_no=MeasureErrorNo.NO_ERROR, all_cost=1.6018972396850586, timestamp=1631673064.161226)        [('tile_f', [-1, 1, 1, 1]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 1, 7, 1]), ('tile_rc', [-1, 4, 4]), ('tile_ry', [-1, 3, 1]), ('tile_rx', [-1, 1, 1]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,3754080
-    No: 7   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 8   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 9   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 10  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(TimeoutError(),), error_no=MeasureErrorNo.BUILD_TIMEOUT, all_cost=10, timestamp=1631673060.8658895)        [('tile_f', [-1, 32, 2, 4]), ('tile_y', [-1, 1, 7, 1]), ('tile_x', [-1, 1, 1, 7]), ('tile_rc', [-1, 4, 2]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,4691833
-    No: 11  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 12  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 13  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 14  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 15  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 16  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 17  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 18  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs [...]
-    No: 19  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(RuntimeError('Traceback (most recent call last):\n  11: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  10: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  9: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm:: [...]
-    No: 20  GFLOPS: 280.06/280.06   result: MeasureResult(costs=(0.0008266168206896552,), error_no=MeasureErrorNo.NO_ERROR, all_cost=1.2443122863769531, timestamp=1631673072.5713875)      [('tile_f', [-1, 1, 4, 1]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 7, 1, 1]), ('tile_rc', [-1, 4, 1]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 1)],None,9881539
+    No: 1   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 2   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 3   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 4   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 5   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 6   GFLOPS: 89.05/89.05     result: MeasureResult(costs=(0.0025997949565217393,), error_no=0, all_cost=2.115823268890381, timestamp=1630092140.2873092)     [('tile_f', [-1, 1, 1, 1]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 1, 7, 1]), ('tile_rc', [-1, 4, 4]), ('tile_ry', [-1, 3, 1]), ('tile_rx', [-1, 1, 1]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,3754080
+    No: 7   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 8   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 9   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 10  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(TimeoutError(),), error_no=6, all_cost=10, timestamp=1630092151.3702137)   [('tile_f', [-1, 32, 2, 4]), ('tile_y', [-1, 1, 7, 1]), ('tile_x', [-1, 1, 1, 7]), ('tile_rc', [-1, 4, 2]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 0)],None,4691833
+    No: 11  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 12  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 13  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 14  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 15  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 16  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 17  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 18  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError('Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function<void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)>::operator()(tvm::runtime::TVMArgs, tvm::runtime::TVMRet [...]
+    No: 19  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(RuntimeError('Traceback (most recent call last):\n  99: 0x00000000005099ff\n  98: 0x0000000000507cd3\n  97: _PyEval_EvalFrameDefault\n  96: 0x000000000050a3fc\n  95: 0x00000000005096c7\n  94: _PyEval_EvalFrameDefault\n  93: 0x000000000050a3fc\n  92: 0x00000000005096c7\n  91: _PyEval_EvalFrameDefault\n  90: 0x000000000050a3fc\n  89: 0x00000000005096c7\n  88: _PyEval_EvalFrameDefault\n  87: 0x000000000050a532\n  86: _PyObject [...]
+    No: 20  GFLOPS: 144.01/144.01   result: MeasureResult(costs=(0.0016075873015873017,), error_no=0, all_cost=1.4732651710510254, timestamp=1630092163.9221466)    [('tile_f', [-1, 1, 4, 1]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 7, 1, 1]), ('tile_rc', [-1, 4, 1]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 1)],None,9881539
 
 
 
@@ -314,7 +314,7 @@ and measure running time.
 
     Best config:
     [('tile_f', [-1, 1, 4, 1]), ('tile_y', [-1, 1, 1, 1]), ('tile_x', [-1, 7, 1, 1]), ('tile_rc', [-1, 4, 1]), ('tile_ry', [-1, 1, 1]), ('tile_rx', [-1, 1, 3]), ('auto_unroll_max_step', 1500), ('unroll_explicit', 1)],None,9881539
-    Time cost of this operator: 0.000934
+    Time cost of this operator: 0.002075
 
 
 
diff --git a/docs/_sources/tutorials/dev/low_level_custom_pass.rst.txt b/docs/_sources/tutorials/dev/low_level_custom_pass.rst.txt
index 69f7b32..7d13f7d 100644
--- a/docs/_sources/tutorials/dev/low_level_custom_pass.rst.txt
+++ b/docs/_sources/tutorials/dev/low_level_custom_pass.rst.txt
@@ -221,8 +221,8 @@ Thus, a good place to put this transformation pass is just after Phase 1.
 
     primfn(a_1: handle, b_1: handle, c_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {c: Buffer(c_2: Pointer(float32), float32, [128], []),
-                 a: Buffer(a_2: Pointer(float32), float32, [128], []),
+      buffers = {a: Buffer(a_2: Pointer(float32), float32, [128], []),
+                 c: Buffer(c_2: Pointer(float32), float32, [128], []),
                  b: Buffer(b_2: Pointer(float32), float32, [128], [])}
       buffer_map = {a_1: a, b_1: b, c_1: c} {
       for (i.outer: int32, 0, 16) {
diff --git a/docs/_sources/tutorials/dev/sg_execution_times.rst.txt b/docs/_sources/tutorials/dev/sg_execution_times.rst.txt
index e301c61..2194a53 100644
--- a/docs/_sources/tutorials/dev/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/dev/sg_execution_times.rst.txt
@@ -5,9 +5,9 @@
 
 Computation times
 =================
-**00:35.311** total execution time for **tutorials_dev** files:
+**00:49.008** total execution time for **tutorials_dev** files:
 
-- **00:31.575**: :ref:`sphx_glr_tutorials_dev_bring_your_own_datatypes.py` (``bring_your_own_datatypes.py``)
-- **00:02.244**: :ref:`sphx_glr_tutorials_dev_use_pass_instrument.py` (``use_pass_instrument.py``)
-- **00:01.344**: :ref:`sphx_glr_tutorials_dev_use_pass_infra.py` (``use_pass_infra.py``)
-- **00:00.148**: :ref:`sphx_glr_tutorials_dev_low_level_custom_pass.py` (``low_level_custom_pass.py``)
+- **00:49.008**: :ref:`sphx_glr_tutorials_dev_bring_your_own_datatypes.py` (``bring_your_own_datatypes.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_dev_low_level_custom_pass.py` (``low_level_custom_pass.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_dev_use_pass_infra.py` (``use_pass_infra.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_dev_use_pass_instrument.py` (``use_pass_instrument.py``)
diff --git a/docs/_sources/tutorials/dev/use_pass_instrument.rst.txt b/docs/_sources/tutorials/dev/use_pass_instrument.rst.txt
index eaa6578..e694db2 100644
--- a/docs/_sources/tutorials/dev/use_pass_instrument.rst.txt
+++ b/docs/_sources/tutorials/dev/use_pass_instrument.rst.txt
@@ -199,10 +199,10 @@ profile the execution time of each passes.
  .. code-block:: none
 
     Printing results of timing profile...
-    InferType: 3752us [3752us] (45.67%; 45.67%)
-    FoldScaleAxis: 4464us [2us] (54.33%; 54.33%)
-            FoldConstant: 4463us [920us] (54.31%; 99.96%)
-                    InferType: 3542us [3542us] (43.12%; 79.38%)
+    InferType: 5181us [5181us] (45.61%; 45.61%)
+    FoldScaleAxis: 6179us [2us] (54.39%; 54.39%)
+            FoldConstant: 6177us [1335us] (54.38%; 99.97%)
+                    InferType: 4842us [4842us] (42.62%; 78.39%)
 
 
 
@@ -239,10 +239,10 @@ Refer to following sections and :py:func:`tvm.instrument.pass_instrument` for th
  .. code-block:: none
 
     Printing results of timing profile...
-    InferType: 3532us [3532us] (44.22%; 44.22%)
-    FoldScaleAxis: 4455us [2us] (55.78%; 55.78%)
-            FoldConstant: 4454us [969us] (55.76%; 99.97%)
-                    InferType: 3485us [3485us] (43.63%; 78.24%)
+    InferType: 4919us [4919us] (44.75%; 44.75%)
+    FoldScaleAxis: 6074us [2us] (55.25%; 55.25%)
+            FoldConstant: 6072us [1337us] (55.23%; 99.97%)
+                    InferType: 4734us [4734us] (43.07%; 77.97%)
 
 
 
diff --git a/docs/_sources/tutorials/frontend/build_gcn.rst.txt b/docs/_sources/tutorials/frontend/build_gcn.rst.txt
index 5fe422d..4a27976 100644
--- a/docs/_sources/tutorials/frontend/build_gcn.rst.txt
+++ b/docs/_sources/tutorials/frontend/build_gcn.rst.txt
@@ -70,6 +70,8 @@ This part reuses the code from the above example.
 
  .. code-block:: none
 
+    DGL backend not selected or invalid.  Assuming PyTorch for now.
+    Setting the default backend to "pytorch". You can change it in the ~/.dgl/config.json file or export the DGLBACKEND environment variable.  Valid options are: pytorch, mxnet, tensorflow (all lowercase)
     Using backend: pytorch
 
 
@@ -155,6 +157,9 @@ Load the data and set up model parameters
 
  .. code-block:: none
 
+    Downloading /workspace/.dgl/cora_v2.zip from https://data.dgl.ai/dataset/cora_v2.zip...
+    Extracting file to /workspace/.dgl/cora_v2
+    Finished data loading and preprocessing.
       NumNodes: 2708
       NumEdges: 10556
       NumFeats: 1433
@@ -162,7 +167,7 @@ Load the data and set up model parameters
       NumTrainingSamples: 140
       NumValidationSamples: 500
       NumTestSamples: 1000
-    Done loading data from cached files.
+    Done saving data into cached files.
     /usr/local/lib/python3.6/dist-packages/dgl/data/utils.py:285: UserWarning: Property dataset.graph will be deprecated, please use dataset[0] instead.
       warnings.warn('Property {} will be deprecated, please use {} instead.'.format(old, new))
     /usr/local/lib/python3.6/dist-packages/dgl/data/utils.py:285: UserWarning: Property dataset.feat will be deprecated, please use g.ndata['feat'] instead.
diff --git a/docs/_sources/tutorials/frontend/deploy_model_on_android.rst.txt b/docs/_sources/tutorials/frontend/deploy_model_on_android.rst.txt
index ce1bc0c..9618d6c 100644
--- a/docs/_sources/tutorials/frontend/deploy_model_on_android.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_model_on_android.rst.txt
@@ -393,7 +393,7 @@ Execute on TVM
     Evaluate inference time cost...
     Execution time summary:
      mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)  
-       7.3173       7.2984       7.3807       7.2587       0.0423   
+      11.0604      10.7861      12.7899      10.6342       0.6586   
                
 
 
diff --git a/docs/_sources/tutorials/frontend/deploy_object_detection_pytorch.rst.txt b/docs/_sources/tutorials/frontend/deploy_object_detection_pytorch.rst.txt
index a1afc65..b7061a0 100644
--- a/docs/_sources/tutorials/frontend/deploy_object_detection_pytorch.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_object_detection_pytorch.rst.txt
@@ -107,6 +107,8 @@ Load pre-trained maskrcnn from torchvision and do tracing
 
  .. code-block:: none
 
+    Downloading: "https://download.pytorch.org/models/maskrcnn_resnet50_fpn_coco-bf2d0c1e.pth" to /workspace/.cache/torch/hub/checkpoints/maskrcnn_resnet50_fpn_coco-bf2d0c1e.pth
+
      0%|          | 0.00/170M [00:00<?, ?B/s]
      0%|          | 8.00k/170M [00:00<1:36:57, 30.6kB/s]
      1%|1         | 2.31M/170M [00:00<00:20, 8.39MB/s]  
      4%|4         | 7.31M/170M [00:00<00:07, 22.9MB/s]
      7%|7         | 12.0M/170M [00:00<00:05, 31.3MB/s]
      9%|9         | 15.7M/170M [00:00<00:05, 30.0MB/s]
     11%|#1        | 19.4M/170M [00:00<00:04, 32.4MB/s]
     13%|#3        | 22.8M/170M [00:00<00:04, 31.7MB/s]
     15%|#5        | 26.1M/170M [00:01<00:04, 30.5MB/s]
     17%|#7        | 29.1M/170M [00:01<00:04, 30.3MB/s]
     20%|##        | 34.5M/170M [00:01<00:03, 37.5MB/s]
     24%|##3       | 40.2M/170M [00:01<00:03, 43.9MB/s]
     26%|##6       | 44.6M/170M [00:01<00:03, 43.0MB/s]
     29%|##8       | 49.1M/170M [00:01<00:02, 44.3MB/s]
     31%|###1      | 53.4M/170M [00:01<00:02, 44.5MB/s]
     34%|###4      | 58.2M/170M [00:01<00:02, 46.1MB/s]
     37%|###6      | 62.7M/170M [00:01<00:02, 42.7MB/s]
     39%|###9      | 66.8M/170M [00:02<00:02, 42.
 1MB/s]
     42%|####1     | 70.9M/170M [00:02<00:02, 40.7MB/s]
     44%|####4     | 75.5M/170M [00:02<00:02, 42.9MB/s]
     47%|####6     | 79.6M/170M [00:02<00:02, 36.4MB/s]
     50%|####9     | 84.3M/170M [00:02<00:02, 39.6MB/s]
     53%|#####2    | 89.9M/170M [00:02<00:01, 44.8MB/s]
     56%|#####5    | 94.4M/170M [00:02<00:01, 44.8MB/s]
     58%|#####8    | 98.8M/170M [00:02<00:01, 44.0MB/s]
     61%|######    | 103M/170M [00:02<00:01, 41.7MB/s] 
     63%|######3   | 107M/170M [00:03<00:01, 33.8MB/s]
     66%|######5   | 111M/170M [00:03<00:01, 36.0MB/s]
     68%|######8   | 116M/170M [00:03<00:01, 39.7MB/s]
     71%|#######1  | 121M/170M [00:03<00:01, 42.3MB/s]
     74%|#######3  | 125M/170M [00:03<00:01, 43.8MB/s]
     76%|#######6  | 130M/170M [00:03<00:01, 31.9MB/s]
     79%|#######8  | 133M/170M [00:03<00:01, 33.3MB/s]
     81%|########  | 137M/170M [00:03<00:00, 35.0MB/s]
     83%|########3 | 141M/170M [00:04<00:00, 37.2MB/s]
     86%|########5 | 146M/170M [00:04<00:00, 38
 .9MB/s]
     88%|########8 | 150M/170M [00:04<00:00, 41.6MB/s]
     91%|######### | 154M/170M [00:04<00:00, 38.4MB/s]
     94%|#########4| 160M/170M [00:04<00:00, 43.7MB/s]
     97%|#########6| 164M/170M [00:04<00:00, 42.7MB/s]
     99%|#########9| 169M/170M [00:04<00:00, 42.2MB/s]
    100%|##########| 170M/170M [00:04<00:00, 37.6MB/s]
     /usr/local/lib/python3.6/dist-packages/torch/tensor.py:593: RuntimeWarning: Iterating over a tensor might cause the trace to be incorrect. Passing a tensor of different shape won't change the number of iterations executed (and might lead to errors or silently give incorrect results).
       'incorrect results).', category=RuntimeWarning)
     /usr/local/lib/python3.6/dist-packages/torch/nn/functional.py:3123: UserWarning: To copy construct from a tensor, it is recommended to use sourceTensor.clone().detach() or sourceTensor.clone().detach().requires_grad_(True), rather than torch.tensor(sourceTensor).
@@ -238,7 +240,7 @@ Get boxes with score larger than 0.9
 
 .. rst-class:: sphx-glr-timing
 
-   **Total running time of the script:** ( 1 minutes  42.237 seconds)
+   **Total running time of the script:** ( 6 minutes  34.821 seconds)
 
 
 .. _sphx_glr_download_tutorials_frontend_deploy_object_detection_pytorch.py:
diff --git a/docs/_sources/tutorials/frontend/deploy_prequantized.rst.txt b/docs/_sources/tutorials/frontend/deploy_prequantized.rst.txt
index cf9ec7d..47bb3d5 100644
--- a/docs/_sources/tutorials/frontend/deploy_prequantized.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_prequantized.rst.txt
@@ -180,6 +180,15 @@ training. Other models require a full post training calibration.
 
 
 
+.. rst-class:: sphx-glr-script-out
+
+ Out:
+
+ .. code-block:: none
+
+    Downloading: "https://download.pytorch.org/models/mobilenet_v2-b0353104.pth" to /workspace/.cache/torch/hub/checkpoints/mobilenet_v2-b0353104.pth
+
      0%|          | 0.00/13.6M [00:00<?, ?B/s]
     29%|##9       | 3.98M/13.6M [00:00<00:00, 41.7MB/s]
     62%|######1   | 8.36M/13.6M [00:00<00:00, 44.2MB/s]
    100%|##########| 13.6M/13.6M [00:00<00:00, 63.1MB/s]
+
 
 
 Quantize, trace and run the PyTorch Mobilenet v2 model
@@ -283,7 +292,7 @@ We should see identical labels printed.
 
  .. code-block:: none
 
-    PyTorch top3 labels: ['tiger cat', 'Egyptian cat', 'tabby, tabby cat']
+    PyTorch top3 labels: ['tiger cat', 'Egyptian cat', 'lynx, catamount']
     TVM top3 labels: ['tiger cat', 'Egyptian cat', 'tabby, tabby cat']
 
 
@@ -307,7 +316,7 @@ output values are identical out of 1000 outputs from mobilenet v2.
 
  .. code-block:: none
 
-    140 in 1000 raw floating outputs identical.
+    132 in 1000 raw floating outputs identical.
 
 
 
@@ -334,7 +343,7 @@ Here we give an example of how to measure performance of TVM compiled models.
 
     Execution time summary:
      mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)  
-      18.4986      18.4725      19.6626      18.3014       0.1583   
+      39.4568      38.9747      58.8311      38.6383       2.0381   
                
 
 
@@ -372,6 +381,11 @@ Deploy a quantized TFLite Model
 TODO
 
 
+.. rst-class:: sphx-glr-timing
+
+   **Total running time of the script:** ( 1 minutes  37.273 seconds)
+
+
 .. _sphx_glr_download_tutorials_frontend_deploy_prequantized.py:
 
 
diff --git a/docs/_sources/tutorials/frontend/deploy_prequantized_tflite.rst.txt b/docs/_sources/tutorials/frontend/deploy_prequantized_tflite.rst.txt
index aa8a01b..ccb3b1e 100644
--- a/docs/_sources/tutorials/frontend/deploy_prequantized_tflite.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_prequantized_tflite.rst.txt
@@ -352,7 +352,7 @@ Here we give an example of how to measure performance of TVM compiled models.
 
     Execution time summary:
      mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)  
-      34.6676      34.3071      55.0247      33.8788       2.1488   
+      72.0695      71.4769      89.6603      69.9658       2.3134   
                
 
 
@@ -386,7 +386,7 @@ Here we give an example of how to measure performance of TVM compiled models.
 
 .. rst-class:: sphx-glr-timing
 
-   **Total running time of the script:** ( 2 minutes  9.880 seconds)
+   **Total running time of the script:** ( 2 minutes  19.036 seconds)
 
 
 .. _sphx_glr_download_tutorials_frontend_deploy_prequantized_tflite.py:
diff --git a/docs/_sources/tutorials/frontend/deploy_quantized.rst.txt b/docs/_sources/tutorials/frontend/deploy_quantized.rst.txt
index 28e6f9d..a367ea8 100644
--- a/docs/_sources/tutorials/frontend/deploy_quantized.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_quantized.rst.txt
@@ -210,6 +210,11 @@ We create a Relay VM to build and execute the model.
 
 
 
+.. rst-class:: sphx-glr-timing
+
+   **Total running time of the script:** ( 1 minutes  24.981 seconds)
+
+
 .. _sphx_glr_download_tutorials_frontend_deploy_quantized.py:
 
 
diff --git a/docs/_sources/tutorials/frontend/deploy_ssd_gluoncv.rst.txt b/docs/_sources/tutorials/frontend/deploy_ssd_gluoncv.rst.txt
index 92210d6..773bc51 100644
--- a/docs/_sources/tutorials/frontend/deploy_ssd_gluoncv.rst.txt
+++ b/docs/_sources/tutorials/frontend/deploy_ssd_gluoncv.rst.txt
@@ -136,6 +136,8 @@ Convert and compile model for CPU.
     /usr/local/lib/python3.6/dist-packages/mxnet/gluon/block.py:1389: UserWarning: Cannot decide type for the following arguments. Consider providing them as input:
             data: None
       input_sym_arg_type = in_param.infer_type()[0]
+    Downloading /workspace/.mxnet/models/ssd_512_resnet50_v1_voc-9c8b225a.zip from https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/models/ssd_512_resnet50_v1_voc-9c8b225a.zip...
+
      0%|          | 0/132723 [00:00<?, ?KB/s]
      2%|1         | 2136/132723 [00:00<00:14, 9070.09KB/s]
      4%|3         | 4955/132723 [00:00<00:07, 16289.03KB/s]
      8%|7         | 10343/132723 [00:00<00:04, 29460.18KB/s]
     10%|#         | 13908/132723 [00:00<00:04, 29404.22KB/s]
     13%|#2        | 17223/132723 [00:00<00:04, 28235.72KB/s]
     17%|#6        | 21954/132723 [00:00<00:03, 33744.53KB/s]
     19%|#9        | 25584/132723 [00:00<00:03, 33127.69KB/s]
     25%|##4       | 32757/132723 [00:01<00:02, 37422.81KB/s]
     28%|##7       | 37099/132723 [00:01<00:02, 35875.46KB/s]
     31%|###       | 40711/132723 [00:01<00:02, 35048.87KB/s]
     37%|###6      | 48894/132723 [00:01<00:01, 47232.76KB/s]
     41%|####      | 53835/132723 [00:01<00:02, 38447.61KB/s]
     48%|####8     | 64078/132723 [00:01<00:01, 53641.55KB/s]
     53%|#####2    | 70129/132723 [00:01<00:01, 49190.34KB/s]
     59%|#####9    | 78360/132723 [00:01<00:00, 57245.79KB/s]
     64%|######3   | 8
 4644/132723 [00:02<00:00, 51620.82KB/s]
     71%|#######1  | 94737/132723 [00:02<00:00, 63687.46KB/s]
     77%|#######6  | 101708/132723 [00:02<00:00, 39024.85KB/s]
     84%|########4 | 111833/132723 [00:02<00:00, 50300.89KB/s]
     89%|########9 | 118693/132723 [00:02<00:00, 46824.58KB/s]
     97%|#########7| 128849/132723 [00:02<00:00, 57925.56KB/s]
    100%|##########| 132723/132723 [00:03<00:00, 43823.76KB/s]
 
 
 
@@ -200,7 +202,7 @@ Display result
 
 .. rst-class:: sphx-glr-timing
 
-   **Total running time of the script:** ( 2 minutes  44.102 seconds)
+   **Total running time of the script:** ( 3 minutes  23.389 seconds)
 
 
 .. _sphx_glr_download_tutorials_frontend_deploy_ssd_gluoncv.py:
diff --git a/docs/_sources/tutorials/frontend/from_caffe2.rst.txt b/docs/_sources/tutorials/frontend/from_caffe2.rst.txt
index 79f5b61..265e2a5 100644
--- a/docs/_sources/tutorials/frontend/from_caffe2.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_caffe2.rst.txt
@@ -50,6 +50,22 @@ We load a pretrained resnet50 classification model provided by Caffe2.
 
 
 
+.. rst-class:: sphx-glr-script-out
+
+ Out:
+
+ .. code-block:: none
+
+    Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/predict_net.pb
+    Writing to /workspace/.caffe2/models/resnet50/predict_net.pb
+
+    Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/init_net.pb
+    Writing to /workspace/.caffe2/models/resnet50/init_net.pb
+
+    Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/value_info.json
+    Writing to /workspace/.caffe2/models/resnet50/value_info.json
+
+
 
 
 Load a test image
diff --git a/docs/_sources/tutorials/frontend/from_darknet.rst.txt b/docs/_sources/tutorials/frontend/from_darknet.rst.txt
index 1d8dd29..e49e4b8 100644
--- a/docs/_sources/tutorials/frontend/from_darknet.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_darknet.rst.txt
@@ -285,6 +285,11 @@ The process is no different from other examples.
 
 
 
+.. rst-class:: sphx-glr-timing
+
+   **Total running time of the script:** ( 1 minutes  22.353 seconds)
+
+
 .. _sphx_glr_download_tutorials_frontend_from_darknet.py:
 
 
diff --git a/docs/_sources/tutorials/frontend/from_mxnet.rst.txt b/docs/_sources/tutorials/frontend/from_mxnet.rst.txt
index 51b8664..c431922 100644
--- a/docs/_sources/tutorials/frontend/from_mxnet.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_mxnet.rst.txt
@@ -98,6 +98,7 @@ In this section, we download a pretrained imagenet model and classify an image.
 
  .. code-block:: none
 
+    Downloading /workspace/.mxnet/models/resnet18_v1-a0666292.zipfaa14738-16e4-4da0-8285-ae245f11b665 from https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/models/resnet18_v1-a0666292.zip...
     x (1, 3, 224, 224)
 
 
diff --git a/docs/_sources/tutorials/frontend/from_onnx.rst.txt b/docs/_sources/tutorials/frontend/from_onnx.rst.txt
index a917c9e..b23c784 100644
--- a/docs/_sources/tutorials/frontend/from_onnx.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_onnx.rst.txt
@@ -128,7 +128,7 @@ provides a static definition of the input size.
 
  .. code-block:: none
 
-    ../../python/tvm/relay/frontend/onnx.py:4206: UserWarning: Mismatched attribute type in ' : kernel_shape'
+    ../../python/tvm/relay/frontend/onnx.py:4025: UserWarning: Mismatched attribute type in ' : kernel_shape'
 
     ==> Context: Bad node spec: input: "1" input: "2" output: "11" op_type: "Conv" attribute { name: "kernel_shape" ints: 5 ints: 5 } attribute { name: "strides" ints: 1 ints: 1 } attribute { name: "pads" ints: 2 ints: 2 ints: 2 ints: 2 } attribute { name: "dilations" ints: 1 ints: 1 } attribute { name: "group" i: 1 }
       warnings.warn(str(e))
diff --git a/docs/_sources/tutorials/frontend/from_pytorch.rst.txt b/docs/_sources/tutorials/frontend/from_pytorch.rst.txt
index a672a16..cea6e6a 100644
--- a/docs/_sources/tutorials/frontend/from_pytorch.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_pytorch.rst.txt
@@ -72,6 +72,15 @@ Load a pretrained PyTorch model
 
 
 
+.. rst-class:: sphx-glr-script-out
+
+ Out:
+
+ .. code-block:: none
+
+    Downloading: "https://download.pytorch.org/models/resnet18-5c106cde.pth" to /workspace/.cache/torch/hub/checkpoints/resnet18-5c106cde.pth
+
      0%|          | 0.00/44.7M [00:00<?, ?B/s]
     28%|##8       | 12.6M/44.7M [00:00<00:00, 132MB/s]
     77%|#######7  | 34.5M/44.7M [00:00<00:00, 189MB/s]
    100%|##########| 44.7M/44.7M [00:00<00:00, 194MB/s]
+
 
 
 Load a test image
diff --git a/docs/_sources/tutorials/frontend/from_tensorflow.rst.txt b/docs/_sources/tutorials/frontend/from_tensorflow.rst.txt
index 9279808..1453dbb 100644
--- a/docs/_sources/tutorials/frontend/from_tensorflow.rst.txt
+++ b/docs/_sources/tutorials/frontend/from_tensorflow.rst.txt
@@ -233,150 +233,6 @@ Results:
 
 
 
-.. rst-class:: sphx-glr-script-out
-
- Out:
-
- .. code-block:: none
-
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-    conv2d NHWC layout is not optimized for x86 with autotvm.
-
 
 
 Execute the portable graph on TVM
@@ -522,6 +378,11 @@ Run the corresponding model on tensorflow
 
 
 
+.. rst-class:: sphx-glr-timing
+
+   **Total running time of the script:** ( 1 minutes  20.985 seconds)
+
+
 .. _sphx_glr_download_tutorials_frontend_from_tensorflow.py:
 
 
diff --git a/docs/_sources/tutorials/frontend/sg_execution_times.rst.txt b/docs/_sources/tutorials/frontend/sg_execution_times.rst.txt
index 3cac5c2..466ae67 100644
--- a/docs/_sources/tutorials/frontend/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/frontend/sg_execution_times.rst.txt
@@ -5,24 +5,24 @@
 
 Computation times
 =================
-**12:48.781** total execution time for **tutorials_frontend** files:
+**00:20.583** total execution time for **tutorials_frontend** files:
 
-- **02:44.102**: :ref:`sphx_glr_tutorials_frontend_deploy_ssd_gluoncv.py` (``deploy_ssd_gluoncv.py``)
-- **02:09.880**: :ref:`sphx_glr_tutorials_frontend_deploy_prequantized_tflite.py` (``deploy_prequantized_tflite.py``)
-- **01:42.237**: :ref:`sphx_glr_tutorials_frontend_deploy_object_detection_pytorch.py` (``deploy_object_detection_pytorch.py``)
-- **00:58.362**: :ref:`sphx_glr_tutorials_frontend_deploy_prequantized.py` (``deploy_prequantized.py``)
-- **00:51.534**: :ref:`sphx_glr_tutorials_frontend_from_tensorflow.py` (``from_tensorflow.py``)
-- **00:49.915**: :ref:`sphx_glr_tutorials_frontend_deploy_quantized.py` (``deploy_quantized.py``)
-- **00:44.022**: :ref:`sphx_glr_tutorials_frontend_from_darknet.py` (``from_darknet.py``)
-- **00:33.724**: :ref:`sphx_glr_tutorials_frontend_from_caffe2.py` (``from_caffe2.py``)
-- **00:25.786**: :ref:`sphx_glr_tutorials_frontend_deploy_model_on_android.py` (``deploy_model_on_android.py``)
-- **00:22.924**: :ref:`sphx_glr_tutorials_frontend_from_tflite.py` (``from_tflite.py``)
-- **00:20.266**: :ref:`sphx_glr_tutorials_frontend_deploy_model_on_rasp.py` (``deploy_model_on_rasp.py``)
-- **00:18.185**: :ref:`sphx_glr_tutorials_frontend_from_coreml.py` (``from_coreml.py``)
-- **00:16.801**: :ref:`sphx_glr_tutorials_frontend_from_pytorch.py` (``from_pytorch.py``)
-- **00:15.877**: :ref:`sphx_glr_tutorials_frontend_from_mxnet.py` (``from_mxnet.py``)
-- **00:10.187**: :ref:`sphx_glr_tutorials_frontend_from_keras.py` (``from_keras.py``)
-- **00:02.287**: :ref:`sphx_glr_tutorials_frontend_using_external_lib.py` (``using_external_lib.py``)
-- **00:01.525**: :ref:`sphx_glr_tutorials_frontend_from_onnx.py` (``from_onnx.py``)
-- **00:01.027**: :ref:`sphx_glr_tutorials_frontend_build_gcn.py` (``build_gcn.py``)
-- **00:00.141**: :ref:`sphx_glr_tutorials_frontend_deploy_sparse.py` (``deploy_sparse.py``)
+- **00:18.527**: :ref:`sphx_glr_tutorials_frontend_from_keras.py` (``from_keras.py``)
+- **00:02.056**: :ref:`sphx_glr_tutorials_frontend_from_onnx.py` (``from_onnx.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_build_gcn.py` (``build_gcn.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_model_on_android.py` (``deploy_model_on_android.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_model_on_rasp.py` (``deploy_model_on_rasp.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_object_detection_pytorch.py` (``deploy_object_detection_pytorch.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_prequantized.py` (``deploy_prequantized.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_prequantized_tflite.py` (``deploy_prequantized_tflite.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_quantized.py` (``deploy_quantized.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_sparse.py` (``deploy_sparse.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_deploy_ssd_gluoncv.py` (``deploy_ssd_gluoncv.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_caffe2.py` (``from_caffe2.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_coreml.py` (``from_coreml.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_darknet.py` (``from_darknet.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_mxnet.py` (``from_mxnet.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_pytorch.py` (``from_pytorch.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_tensorflow.py` (``from_tensorflow.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_from_tflite.py` (``from_tflite.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_frontend_using_external_lib.py` (``using_external_lib.py``)
diff --git a/docs/_sources/tutorials/get_started/auto_scheduler_matmul_x86.rst.txt b/docs/_sources/tutorials/get_started/auto_scheduler_matmul_x86.rst.txt
index 13c6c0b..fa63d5b 100644
--- a/docs/_sources/tutorials/get_started/auto_scheduler_matmul_x86.rst.txt
+++ b/docs/_sources/tutorials/get_started/auto_scheduler_matmul_x86.rst.txt
@@ -186,6 +186,7 @@ trials, we can load the best schedule from the log file and apply it.
 
 
 
+
 Inspecting the Optimized Schedule
 ---------------------------------
 We can lower the schedule to see the IR after auto-scheduling.  The
@@ -297,7 +298,7 @@ We build the binary and check its correctness and performance.
 
  .. code-block:: none
 
-    Execution time of this operator: 21.160 ms
+    Execution time of this operator: 45.432 ms
 
 
 
diff --git a/docs/_sources/tutorials/get_started/autotvm_relay_x86.rst.txt b/docs/_sources/tutorials/get_started/autotvm_relay_x86.rst.txt
index e702ac7..48485c9 100644
--- a/docs/_sources/tutorials/get_started/autotvm_relay_x86.rst.txt
+++ b/docs/_sources/tutorials/get_started/autotvm_relay_x86.rst.txt
@@ -207,14 +207,6 @@ runtime module from the library.
 
 
 
-.. rst-class:: sphx-glr-script-out
-
- Out:
-
- .. code-block:: none
-
-    One or more operators have not been tuned. Please tune your model for better performance. Use DEBUG logging level to see more details.
-
 
 
 Execute on the TVM Runtime
@@ -280,7 +272,7 @@ standard deviation.
 
  .. code-block:: none
 
-    {'mean': 100.97112998832017, 'median': 100.64726648852229, 'std': 0.9355632830933527}
+    {'mean': 226.42689668997264, 'median': 226.24714619996666, 'std': 0.646916386317958}
 
 
 
@@ -324,8 +316,8 @@ for the model.
 
  .. code-block:: none
 
-    class='n02123045 tabby, tabby cat' with probability=0.610551
-    class='n02123159 tiger cat' with probability=0.367180
+    class='n02123045 tabby, tabby cat' with probability=0.610552
+    class='n02123159 tiger cat' with probability=0.367179
     class='n02124075 Egyptian cat' with probability=0.019365
     class='n02129604 tiger, Panthera tigris' with probability=0.001273
     class='n04040759 radiator' with probability=0.000261
@@ -474,31 +466,32 @@ In the simplest form, tuning requires you to provide three things:
 
  .. code-block:: none
 
-
    [Task  1/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  1/25]  Current/Best:   13.44/  26.27 GFLOPS | Progress: (10/10) | 95.13 s
    [Task  2/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  2/25]  Current/Best:    1.81/   1.81 GFLOPS | Progress: (10/10) | 36.88 s
    [Task  3/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  3/25]  Current/Best:   42.58/  74.66 GFLOPS | Progress: (10/10) | 37.79 s
    [Task  4/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  4/25]  Current/Best:   53.23/  96.78 GFLOPS | Progress: (10/10) | 9.82 s Done.
-
    [Task  5/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  5/25]  Current/Best:    6.82/  60.22 GFLOPS | Progress: (10/10) | 16.41 s Done.
-
    [Task  6/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  6/25]  Current/Best:   69.75/  69.75 GFLOPS | Progress: (10/10) | 14.71 s Done.
-
    [Task  7/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  7/25]  Current/Best:   64.33/  90.56 GFLOPS | Progress: (10/10) | 15.68 s Done.
-
    [Task  8/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  8/25]  Current/Best:   41.50/  65.29 GFLOPS | Progress: (10/10) | 33.51 s
    [Task  9/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s Done.
-
    [Task  9/25]  Current/Best:   60.73/  82.22 GFLOPS | Progress: (10/10) | 11.42 s Done.
-
    [Task 10/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 10/25]  Current/Best:   27.21/  55.24 GFLOPS | Progress: (10/10) | 11.12 s Done.
-
    [Task 11/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 11/25]  Current/Best:   85.07/  85.07 GFLOPS | Progress: (10/10) | 10.00 s Done.
-
    [Task 12/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 12/25]  Current/Best:   50.72/  68.54 GFLOPS | Progress: (10/10) | 11.57 s Done.
-
    [Task 13/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 13/25]  Current/Best:   22.31/  65.46 GFLOPS | Progress: (10/10) | 19.41 s Done.
-
    [Task 14/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 14/25]  Current/Best:   87.35/  87.71 GFLOPS | Progress: (10/10) | 5.70 s Done.
-
    [Task 15/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 15/25]  Current/Best:   38.18/  51.59 GFLOPS | Progress: (10/10) | 5.07 s Done.
-
    [Task 16/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 16/25]  Current/Best:   30.83/  61.08 GFLOPS | Progress: (10/10) | 5.07 s Done.
-
    [Task 17/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 17/25]  Current/Best:   54.49/  68.61 GFLOPS | Progress: (10/10) | 6.46 s Done.
-
    [Task 18/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 18/25]  Current/Best:   45.63/  61.39 GFLOPS | Progress: (10/10) | 10.53 s Done.
-
    [Task 19/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 19/25]  Current/Best:   99.57/  99.57 GFLOPS | Progress: (10/10) | 5.14 s Done.
-
    [Task 20/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 20/25]  Current/Best:   34.33/  46.20 GFLOPS | Progress: (10/10) | 5.47 s Done.
-
    [Task 21/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 21/25]  Current/Best:   29.78/  40.29 GFLOPS | Progress: (10/10) | 4.88 s Done.
-
    [Task 22/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 22/25]  Current/Best:   59.79/ 102.15 GFLOPS | Progress: (10/10) | 6.66 s Done.
-
    [Task 23/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 23/25]  Current/Best:   60.67/  60.67 GFLOPS | Progress: (10/10) | 19.24 s
    [Task 24/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 24/25]  Current/Best:   62.59/  76.12 GFLOPS | Progress: (10/10) | 13.95 s Done.
-     Done.
-     Done.
-     Done.
-     Done.
-
    [Task 25/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 25/25]  Current/Best:   11.04/  47.06 GFLOPS | Progress: (10/10) | 36.98 s
+
    [Task  1/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  1/25]  Current/Best:   12.05/  14.13 GFLOPS | Progress: (4/10) | 11.61 s
    [Task  1/25]  Current/Best:   14.75/  14.75 GFLOPS | Progress: (8/10) | 22.10 s
    [Task  1/25]  Current/Best:    9.32/  14.75 GFLOPS | Progress: (10/10) | 32.45 s Done.
+
    [Task  2/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  2/25]  Current/Best:    6.24/  12.89 GFLOPS | Progress: (4/10) | 3.57 s
    [Task  2/25]  Current/Best:   19.53/  19.53 GFLOPS | Progress: (8/10) | 12.75 s
    [Task  2/25]  Current/Best:   19.58/  19.58 GFLOPS | Progress: (10/10) | 13.84 s Done.
+
    [Task  3/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  3/25]  Current/Best:   27.76/  39.82 GFLOPS | Progress: (4/10) | 3.83 s
    [Task  3/25]  Current/Best:   23.57/  46.16 GFLOPS | Progress: (8/10) | 6.40 s
    [Task  3/25]  Current/Best:   15.99/  46.16 GFLOPS | Progress: (10/10) | 8.16 s Done.
+
    [Task  4/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  4/25]  Current/Best:   33.28/  45.79 GFLOPS | Progress: (4/10) | 3.06 s
    [Task  4/25]  Current/Best:   28.97/  45.79 GFLOPS | Progress: (8/10) | 5.45 s
    [Task  4/25]  Current/Best:   45.86/  45.86 GFLOPS | Progress: (10/10) | 6.87 s Done.
+
    [Task  5/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  5/25]  Current/Best:   20.78/  38.54 GFLOPS | Progress: (4/10) | 2.22 s
    [Task  5/25]  Current/Best:   47.72/  47.72 GFLOPS | Progress: (8/10) | 3.87 s
    [Task  5/25]  Current/Best:   19.84/  47.72 GFLOPS | Progress: (10/10) | 4.61 s Done.
+
    [Task  6/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  6/25]  Current/Best:   24.75/  24.75 GFLOPS | Progress: (4/10) | 3.88 s
    [Task  6/25]  Current/Best:   36.38/  46.07 GFLOPS | Progress: (8/10) | 6.43 s
    [Task  6/25]  Current/Best:   23.05/  46.65 GFLOPS | Progress: (10/10) | 7.39 s Done.
+
    [Task  7/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  7/25]  Current/Best:   47.84/  47.84 GFLOPS | Progress: (4/10) | 2.21 s
    [Task  7/25]  Current/Best:   34.60/  47.84 GFLOPS | Progress: (8/10) | 3.98 s
    [Task  7/25]  Current/Best:   10.16/  47.84 GFLOPS | Progress: (10/10) | 4.97 s Done.
+
    [Task  8/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  8/25]  Current/Best:   30.68/  30.68 GFLOPS | Progress: (4/10) | 2.32 s
    [Task  8/25]  Current/Best:   37.35/  45.33 GFLOPS | Progress: (8/10) | 5.31 s
    [Task  8/25]  Current/Best:   46.41/  46.41 GFLOPS | Progress: (10/10) | 5.93 s Done.
+
    [Task  9/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task  9/25]  Current/Best:    8.46/  42.93 GFLOPS | Progress: (4/10) | 3.18 s
    [Task  9/25]  Current/Best:   41.72/  42.93 GFLOPS | Progress: (8/10) | 4.84 s
    [Task  9/25]  Current/Best:   43.40/  43.40 GFLOPS | Progress: (10/10) | 6.23 s Done.
+
    [Task 10/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 10/25]  Current/Best:   33.50/  36.81 GFLOPS | Progress: (4/10) | 2.17 s
    [Task 10/25]  Current/Best:   15.28/  36.81 GFLOPS | Progress: (8/10) | 3.77 s
    [Task 10/25]  Current/Best:   16.60/  36.81 GFLOPS | Progress: (10/10) | 5.26 s Done.
+
    [Task 11/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 11/25]  Current/Best:   46.46/  46.46 GFLOPS | Progress: (4/10) | 3.53 s
    [Task 11/25]  Current/Best:   38.92/  46.46 GFLOPS | Progress: (8/10) | 5.45 s
    [Task 11/25]  Current/Best:   27.07/  46.46 GFLOPS | Progress: (10/10) | 6.57 s Done.
+
    [Task 12/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 12/25]  Current/Best:   34.53/  39.45 GFLOPS | Progress: (4/10) | 2.36 s
    [Task 12/25]  Current/Best:   31.65/  44.32 GFLOPS | Progress: (8/10) | 3.91 s
    [Task 12/25]  Current/Best:   17.73/  44.32 GFLOPS | Progress: (10/10) | 7.64 s Done.
+
    [Task 13/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 13/25]  Current/Best:   25.99/  35.90 GFLOPS | Progress: (4/10) | 2.10 s
    [Task 13/25]  Current/Best:   28.48/  35.90 GFLOPS | Progress: (8/10) | 7.06 s
    [Task 13/25]  Current/Best:   35.65/  38.45 GFLOPS | Progress: (10/10) | 7.77 s Done.
+
    [Task 14/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 14/25]  Current/Best:   29.02/  47.75 GFLOPS | Progress: (4/10) | 2.58 s
    [Task 14/25]  Current/Best:   38.29/  47.75 GFLOPS | Progress: (8/10) | 4.64 s
    [Task 14/25]  Current/Best:   30.86/  47.75 GFLOPS | Progress: (10/10) | 5.71 s Done.
+
    [Task 15/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 15/25]  Current/Best:   41.66/  43.09 GFLOPS | Progress: (4/10) | 2.09 s
    [Task 15/25]  Current/Best:   22.98/  43.09 GFLOPS | Progress: (8/10) | 5.28 s
    [Task 15/25]  Current/Best:   12.10/  43.09 GFLOPS | Progress: (10/10) | 6.04 s Done.
+
    [Task 16/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 16/25]  Current/Best:   14.11/  47.00 GFLOPS | Progress: (4/10) | 4.16 s
    [Task 16/25]  Current/Best:   40.78/  47.00 GFLOPS | Progress: (8/10) | 5.93 s
    [Task 16/25]  Current/Best:   13.65/  47.00 GFLOPS | Progress: (10/10) | 6.82 s Done.
+
    [Task 17/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 17/25]  Current/Best:   25.74/  27.83 GFLOPS | Progress: (4/10) | 4.52 s
    [Task 17/25]  Current/Best:   46.56/  46.56 GFLOPS | Progress: (8/10) | 5.98 s
    [Task 17/25]  Current/Best:   12.30/  46.56 GFLOPS | Progress: (10/10) | 6.94 s Done.
+
    [Task 18/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 18/25]  Current/Best:   20.07/  34.05 GFLOPS | Progress: (4/10) | 2.56 s
    [Task 18/25]  Current/Best:   26.35/  42.79 GFLOPS | Progress: (8/10) | 5.79 s
    [Task 18/25]  Current/Best:   33.49/  42.79 GFLOPS | Progress: (10/10) | 6.79 s Done.
+
    [Task 19/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 19/25]  Current/Best:   44.44/  44.44 GFLOPS | Progress: (4/10) | 2.58 s
    [Task 19/25]  Current/Best:   45.86/  45.86 GFLOPS | Progress: (8/10) | 4.22 s
    [Task 19/25]  Current/Best:   32.42/  45.86 GFLOPS | Progress: (10/10) | 5.20 s Done.
+
    [Task 20/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 20/25]  Current/Best:   35.55/  38.18 GFLOPS | Progress: (4/10) | 2.58 s
    [Task 20/25]  Current/Best:   38.55/  38.55 GFLOPS | Progress: (8/10) | 4.25 s
    [Task 20/25]  Current/Best:    8.66/  38.55 GFLOPS | Progress: (10/10) | 5.12 s Done.
+
    [Task 21/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 21/25]  Current/Best:   22.51/  35.86 GFLOPS | Progress: (4/10) | 2.60 s
    [Task 21/25]  Current/Best:   11.92/  37.32 GFLOPS | Progress: (8/10) | 3.97 s
    [Task 21/25]  Current/Best:   13.60/  37.32 GFLOPS | Progress: (10/10) | 4.85 s Done.
+
    [Task 22/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 22/25]  Current/Best:   40.97/  48.00 GFLOPS | Progress: (4/10) | 2.28 s
    [Task 22/25]  Current/Best:   28.80/  48.86 GFLOPS | Progress: (8/10) | 4.65 s
    [Task 22/25]  Current/Best:   30.62/  48.86 GFLOPS | Progress: (10/10) | 5.65 s Done.
+
    [Task 23/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 23/25]  Current/Best:   26.07/  27.08 GFLOPS | Progress: (4/10) | 10.41 s
    [Task 23/25]  Current/Best:    9.40/  29.51 GFLOPS | Progress: (8/10) | 12.53 s
    [Task 23/25]  Current/Best:   17.33/  31.99 GFLOPS | Progress: (10/10) | 13.42 s Done.
+
    [Task 24/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 24/25]  Current/Best:   32.87/  34.13 GFLOPS | Progress: (4/10) | 4.51 s
    [Task 24/25]  Current/Best:   14.52/  34.13 GFLOPS | Progress: (8/10) | 11.00 s
    [Task 24/25]  Current/Best:   25.00/  34.13 GFLOPS | Progress: (10/10) | 11.98 s Done.
+
    [Task 25/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
    [Task 25/25]  Current/Best:   41.42/  41.42 GFLOPS | Progress: (4/10) | 2.39 s
    [Task 25/25]  Current/Best:   47.79/  47.79 GFLOPS | Progress: (8/10) | 4.58 s
    [Task 25/25]  Current/Best:   21.79/  47.79 GFLOPS | Progress: (10/10) | 5.46 s Done.
+
 
 
 The output from this tuning process will look something like this:
@@ -596,8 +589,8 @@ Verify that the optimized model runs and produces the same results:
 
  .. code-block:: none
 
-    class='n02123045 tabby, tabby cat' with probability=0.610552
-    class='n02123159 tiger cat' with probability=0.367179
+    class='n02123045 tabby, tabby cat' with probability=0.610551
+    class='n02123159 tiger cat' with probability=0.367181
     class='n02124075 Egyptian cat' with probability=0.019365
     class='n02129604 tiger, Panthera tigris' with probability=0.001273
     class='n04040759 radiator' with probability=0.000261
@@ -640,8 +633,8 @@ improvement in comparing the optimized model to the unoptimized model.
 
  .. code-block:: none
 
-    optimized: {'mean': 92.08956629503518, 'median': 92.06980434246361, 'std': 0.34333013824885233}
-    unoptimized: {'mean': 100.97112998832017, 'median': 100.64726648852229, 'std': 0.9355632830933527}
+    optimized: {'mean': 198.39967233001516, 'median': 198.3304240500729, 'std': 1.0845790622211036}
+    unoptimized: {'mean': 226.42689668997264, 'median': 226.24714619996666, 'std': 0.646916386317958}
 
 
 
@@ -661,7 +654,7 @@ profiling/benchmarking.
 
 .. rst-class:: sphx-glr-timing
 
-   **Total running time of the script:** ( 9 minutes  11.362 seconds)
+   **Total running time of the script:** ( 6 minutes  17.556 seconds)
 
 
 .. _sphx_glr_download_tutorials_get_started_autotvm_relay_x86.py:
diff --git a/docs/_sources/tutorials/get_started/cross_compilation_and_rpc.rst.txt b/docs/_sources/tutorials/get_started/cross_compilation_and_rpc.rst.txt
index c357f5c..4c18a7a 100644
--- a/docs/_sources/tutorials/get_started/cross_compilation_and_rpc.rst.txt
+++ b/docs/_sources/tutorials/get_started/cross_compilation_and_rpc.rst.txt
@@ -235,7 +235,7 @@ device and returns the measured cost. Network overhead is excluded.
 
  .. code-block:: none
 
-    1.633e-07 secs/op
+    1.21e-07 secs/op
 
 
 
diff --git a/docs/_sources/tutorials/get_started/sg_execution_times.rst.txt b/docs/_sources/tutorials/get_started/sg_execution_times.rst.txt
index 079e525..108e552 100644
--- a/docs/_sources/tutorials/get_started/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/get_started/sg_execution_times.rst.txt
@@ -5,14 +5,14 @@
 
 Computation times
 =================
-**11:29.665** total execution time for **tutorials_get_started** files:
+**08:43.899** total execution time for **tutorials_get_started** files:
 
-- **09:11.362**: :ref:`sphx_glr_tutorials_get_started_autotvm_relay_x86.py` (``autotvm_relay_x86.py``)
-- **01:19.733**: :ref:`sphx_glr_tutorials_get_started_tensor_expr_get_started.py` (``tensor_expr_get_started.py``)
-- **00:21.677**: :ref:`sphx_glr_tutorials_get_started_relay_quick_start.py` (``relay_quick_start.py``)
-- **00:19.898**: :ref:`sphx_glr_tutorials_get_started_auto_scheduler_matmul_x86.py` (``auto_scheduler_matmul_x86.py``)
-- **00:16.614**: :ref:`sphx_glr_tutorials_get_started_autotvm_matmul_x86.py` (``autotvm_matmul_x86.py``)
-- **00:00.266**: :ref:`sphx_glr_tutorials_get_started_cross_compilation_and_rpc.py` (``cross_compilation_and_rpc.py``)
-- **00:00.039**: :ref:`sphx_glr_tutorials_get_started_install.py` (``install.py``)
-- **00:00.039**: :ref:`sphx_glr_tutorials_get_started_introduction.py` (``introduction.py``)
-- **00:00.037**: :ref:`sphx_glr_tutorials_get_started_tvmc_command_line_driver.py` (``tvmc_command_line_driver.py``)
+- **06:17.556**: :ref:`sphx_glr_tutorials_get_started_autotvm_relay_x86.py` (``autotvm_relay_x86.py``)
+- **00:59.564**: :ref:`sphx_glr_tutorials_get_started_tensor_expr_get_started.py` (``tensor_expr_get_started.py``)
+- **00:32.871**: :ref:`sphx_glr_tutorials_get_started_auto_scheduler_matmul_x86.py` (``auto_scheduler_matmul_x86.py``)
+- **00:30.148**: :ref:`sphx_glr_tutorials_get_started_relay_quick_start.py` (``relay_quick_start.py``)
+- **00:23.501**: :ref:`sphx_glr_tutorials_get_started_autotvm_matmul_x86.py` (``autotvm_matmul_x86.py``)
+- **00:00.163**: :ref:`sphx_glr_tutorials_get_started_cross_compilation_and_rpc.py` (``cross_compilation_and_rpc.py``)
+- **00:00.032**: :ref:`sphx_glr_tutorials_get_started_introduction.py` (``introduction.py``)
+- **00:00.031**: :ref:`sphx_glr_tutorials_get_started_install.py` (``install.py``)
+- **00:00.031**: :ref:`sphx_glr_tutorials_get_started_tvmc_command_line_driver.py` (``tvmc_command_line_driver.py``)
diff --git a/docs/_sources/tutorials/get_started/tensor_expr_get_started.rst.txt b/docs/_sources/tutorials/get_started/tensor_expr_get_started.rst.txt
index 0be35f3..e981902 100644
--- a/docs/_sources/tutorials/get_started/tensor_expr_get_started.rst.txt
+++ b/docs/_sources/tutorials/get_started/tensor_expr_get_started.rst.txt
@@ -233,8 +233,8 @@ helper function to run a profile of the TVM generated code.
 
  .. code-block:: none
 
-    Numpy running time: 0.000005
-    naive: 0.000004
+    Numpy running time: 0.000007
+    naive: 0.000006
 
 
 
@@ -324,7 +324,7 @@ compile and run this new schedule with the parallel operation applied:
 
  .. code-block:: none
 
-    parallel: 0.000006
+    parallel: 0.000005
 
 
 
@@ -377,7 +377,7 @@ factor to be the number of threads on your CPU.
 
  .. code-block:: none
 
-    vector: 0.000019
+    vector: 0.000016
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {C: Buffer(C_2: Pointer(float32), float32, [n: int32], [stride: int32], type="auto"),
@@ -425,10 +425,10 @@ We can now compare the different schedules
  .. code-block:: none
 
                 Operator                  Timing             Performance
-                   numpy    5.340729840099811e-06                    1.0
-                   naive    3.968499999999999e-06     0.7430632364519366
-                parallel              6.4731e-06      1.2120253586687744
-                  vector             1.90829e-05       3.573088430109276
+                   numpy    7.028010004432872e-06                    1.0
+                   naive              5.6814e-06      0.8083938407054763
+                parallel              5.0607e-06      0.7200758104794951
+                  vector             1.61654e-05      2.3001390137185034
 
 
 
@@ -596,7 +596,7 @@ The following code first performs the following steps:
 
  .. code-block:: none
 
-    ['myadd.o', 'myadd.so']
+    ['myadd.so', 'myadd.o']
 
 
 
@@ -817,7 +817,7 @@ matrix multiplication.
 
  .. code-block:: none
 
-    Numpy running time: 0.013535
+    Numpy running time: 0.007486
 
 
 
@@ -873,7 +873,7 @@ optimizations.
 
  .. code-block:: none
 
-    none: 5.343914
+    none: 3.297487
 
 
 
@@ -969,7 +969,7 @@ schedule.
 
  .. code-block:: none
 
-    blocking: 0.132706
+    blocking: 0.292408
 
 
 
@@ -1057,11 +1057,11 @@ already cache friendly from our previous optimizations.
 
  .. code-block:: none
 
-    vectorization: 0.134709
+    vectorization: 0.325112
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {A: Buffer(A_2: Pointer(float32), float32, [1024, 1024], []),
-                 C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
+      buffers = {C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
+                 A: Buffer(A_2: Pointer(float32), float32, [1024, 1024], []),
                  B: Buffer(B_2: Pointer(float32), float32, [1024, 1024], [])}
       buffer_map = {A_1: A, B_1: B, C_1: C} {
       for (x.outer: int32, 0, 32) {
@@ -1125,7 +1125,7 @@ more cache friendly.
 
  .. code-block:: none
 
-    loop permutation: 0.065923
+    loop permutation: 0.113007
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
@@ -1218,7 +1218,7 @@ optimized schedule.
 
  .. code-block:: none
 
-    array packing: 0.063657
+    array packing: 0.214044
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
@@ -1305,7 +1305,7 @@ to `C` when all the block results are ready.
 
  .. code-block:: none
 
-    block caching: 0.063360
+    block caching: 0.199362
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
@@ -1382,11 +1382,11 @@ of thread-level parallelization.
 
  .. code-block:: none
 
-    parallelization: 0.017113
+    parallelization: 0.061192
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
-                 A: Buffer(A_2: Pointer(float32), float32, [1024, 1024], []),
+      buffers = {A: Buffer(A_2: Pointer(float32), float32, [1024, 1024], []),
+                 C: Buffer(C_2: Pointer(float32), float32, [1024, 1024], []),
                  B: Buffer(B_2: Pointer(float32), float32, [1024, 1024], [])}
       buffer_map = {A_1: A, B_1: B, C_1: C} {
       allocate(packedB: Pointer(global float32x32), float32x32, [32768]), storage_scope = global {
@@ -1454,13 +1454,13 @@ working, we can compare the results.
  .. code-block:: none
 
                 Operator                  Timing             Performance
-                    none            5.3439138899                     1.0
-                blocking            0.1327056972    0.024833053064499008
-           vectorization            0.1347089976    0.025207928191844572
-        loop permutation            0.0659230783    0.012336104147298228
-           array packing             0.063657088    0.011912072183706391
-           block caching     0.06336020049999999     0.01185651599284764
-         parallelization            0.0171132963    0.0032023899809359093
+                    none            3.2974874185                     1.0
+                blocking            0.2924084278     0.08867613145678481
+           vectorization            0.3251120154      0.0985938607607761
+        loop permutation            0.1130071469    0.034270683268112674
+           array packing            0.2140441853     0.06491129703759929
+           block caching            0.1993615194     0.06045861411980396
+         parallelization     0.06119195110000001     0.01855714467830653
 
 
 
@@ -1495,11 +1495,6 @@ operations with tunable parameters that allows you to automatically optimize
 the computation for specific platforms.
 
 
-.. rst-class:: sphx-glr-timing
-
-   **Total running time of the script:** ( 1 minutes  19.733 seconds)
-
-
 .. _sphx_glr_download_tutorials_get_started_tensor_expr_get_started.py:
 
 
diff --git a/docs/_sources/tutorials/language/reduction.rst.txt b/docs/_sources/tutorials/language/reduction.rst.txt
index 45a21b0..8eb5332 100644
--- a/docs/_sources/tutorials/language/reduction.rst.txt
+++ b/docs/_sources/tutorials/language/reduction.rst.txt
@@ -430,8 +430,8 @@ Here is an example for 2D convolution with filter size = [3, 3] and strides = [1
 
     primfn(Input_1: handle, Filter_1: handle, Output_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {Input: Buffer(Input_2: Pointer(float32), float32, [n: int32, n], [stride: int32, stride_1: int32], type="auto"),
-                 Output: Buffer(Output_2: Pointer(float32), float32, [(n - 2), (n - 2)], []),
+      buffers = {Output: Buffer(Output_2: Pointer(float32), float32, [(n: int32 - 2), (n - 2)], []),
+                 Input: Buffer(Input_2: Pointer(float32), float32, [n, n], [stride: int32, stride_1: int32], type="auto"),
                  Filter: Buffer(Filter_2: Pointer(float32), float32, [3, 3], [])}
       buffer_map = {Input_1: Input, Filter_1: Filter, Output_1: Output} {
       for (i: int32, 0, (n - 2)) {
diff --git a/docs/_sources/tutorials/language/schedule_primitives.rst.txt b/docs/_sources/tutorials/language/schedule_primitives.rst.txt
index 6ee9d56..124e339 100644
--- a/docs/_sources/tutorials/language/schedule_primitives.rst.txt
+++ b/docs/_sources/tutorials/language/schedule_primitives.rst.txt
@@ -85,13 +85,13 @@ schedule computes tensor in a serial manner in a row-major order.
 
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {A: Buffer(A_2: Pointer(float32), float32, [m: int32, n: int32], [stride: int32, stride_1: int32], type="auto"),
-                 C: Buffer(C_2: Pointer(float32), float32, [m, n], [stride_2: int32, stride_3: int32], type="auto"),
+      buffers = {C: Buffer(C_2: Pointer(float32), float32, [m: int32, n: int32], [stride: int32, stride_1: int32], type="auto"),
+                 A: Buffer(A_2: Pointer(float32), float32, [m, n], [stride_2: int32, stride_3: int32], type="auto"),
                  B: Buffer(B_2: Pointer(float32), float32, [m, n], [stride_4: int32, stride_5: int32], type="auto")}
       buffer_map = {A_1: A, B_1: B, C_1: C} {
       for (i: int32, 0, m) {
         for (j: int32, 0, n) {
-          C_2[((i*stride_2) + (j*stride_3))] = ((float32*)A_2[((i*stride) + (j*stride_1))]*(float32*)B_2[((i*stride_4) + (j*stride_5))])
+          C_2[((i*stride) + (j*stride_1))] = ((float32*)A_2[((i*stride_2) + (j*stride_3))]*(float32*)B_2[((i*stride_4) + (j*stride_5))])
         }
       }
     }
diff --git a/docs/_sources/tutorials/language/sg_execution_times.rst.txt b/docs/_sources/tutorials/language/sg_execution_times.rst.txt
index bd20d86..045327b 100644
--- a/docs/_sources/tutorials/language/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/language/sg_execution_times.rst.txt
@@ -5,13 +5,13 @@
 
 Computation times
 =================
-**00:05.534** total execution time for **tutorials_language** files:
+**00:04.897** total execution time for **tutorials_language** files:
 
-- **00:02.250**: :ref:`sphx_glr_tutorials_language_intrin_math.py` (``intrin_math.py``)
-- **00:01.114**: :ref:`sphx_glr_tutorials_language_tensorize.py` (``tensorize.py``)
-- **00:00.732**: :ref:`sphx_glr_tutorials_language_scan.py` (``scan.py``)
-- **00:00.696**: :ref:`sphx_glr_tutorials_language_reduction.py` (``reduction.py``)
-- **00:00.256**: :ref:`sphx_glr_tutorials_language_extern_op.py` (``extern_op.py``)
-- **00:00.168**: :ref:`sphx_glr_tutorials_language_schedule_primitives.py` (``schedule_primitives.py``)
-- **00:00.167**: :ref:`sphx_glr_tutorials_language_tedd.py` (``tedd.py``)
-- **00:00.152**: :ref:`sphx_glr_tutorials_language_tuple_inputs.py` (``tuple_inputs.py``)
+- **00:01.724**: :ref:`sphx_glr_tutorials_language_intrin_math.py` (``intrin_math.py``)
+- **00:01.047**: :ref:`sphx_glr_tutorials_language_tensorize.py` (``tensorize.py``)
+- **00:00.651**: :ref:`sphx_glr_tutorials_language_reduction.py` (``reduction.py``)
+- **00:00.639**: :ref:`sphx_glr_tutorials_language_scan.py` (``scan.py``)
+- **00:00.282**: :ref:`sphx_glr_tutorials_language_extern_op.py` (``extern_op.py``)
+- **00:00.190**: :ref:`sphx_glr_tutorials_language_schedule_primitives.py` (``schedule_primitives.py``)
+- **00:00.184**: :ref:`sphx_glr_tutorials_language_tedd.py` (``tedd.py``)
+- **00:00.179**: :ref:`sphx_glr_tutorials_language_tuple_inputs.py` (``tuple_inputs.py``)
diff --git a/docs/_sources/tutorials/language/tensorize.rst.txt b/docs/_sources/tutorials/language/tensorize.rst.txt
index 130d7e5..eff455c 100644
--- a/docs/_sources/tutorials/language/tensorize.rst.txt
+++ b/docs/_sources/tutorials/language/tensorize.rst.txt
@@ -313,8 +313,8 @@ The importing needs to happen before the tensorized GEMV being executed.
                  A: Buffer(A_2: Pointer(float32), float32, [1024, 64], []),
                  B: Buffer(B_2: Pointer(float32), float32, [512, 64], [])}
       buffer_map = {A_1: A, B_1: B, C_1: C} {
-      attr [IterVar(i: int32, (nullptr), "DataPar", "")] "pragma_import_llvm" = "; ModuleID = '/tmp/tmpc1vp5jds/input0.cc'
-    source_filename = "/tmp/tmpc1vp5jds/input0.cc"
+      attr [IterVar(i: int32, (nullptr), "DataPar", "")] "pragma_import_llvm" = "; ModuleID = '/tmp/tmp75lkgvp8/input0.cc'
+    source_filename = "/tmp/tmp75lkgvp8/input0.cc"
     target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
     target triple = "x86_64-pc-linux-gnu"
 
diff --git a/docs/_sources/tutorials/language/tuple_inputs.rst.txt b/docs/_sources/tutorials/language/tuple_inputs.rst.txt
index 3ce3cb7..fbfbb2d 100644
--- a/docs/_sources/tutorials/language/tuple_inputs.rst.txt
+++ b/docs/_sources/tutorials/language/tuple_inputs.rst.txt
@@ -65,14 +65,14 @@ together in the next schedule procedure.
     primfn(A0_1: handle, A1_1: handle, B_2: handle, B_3: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {B: Buffer(B_4: Pointer(float32), float32, [m: int32, n: int32], [stride: int32, stride_1: int32], type="auto"),
-                 B_1: Buffer(B_5: Pointer(float32), float32, [m, n], [stride_2: int32, stride_3: int32], type="auto"),
-                 A0: Buffer(A0_2: Pointer(float32), float32, [m, n], [stride_4: int32, stride_5: int32], type="auto"),
+                 A0: Buffer(A0_2: Pointer(float32), float32, [m, n], [stride_2: int32, stride_3: int32], type="auto"),
+                 B_1: Buffer(B_5: Pointer(float32), float32, [m, n], [stride_4: int32, stride_5: int32], type="auto"),
                  A1: Buffer(A1_2: Pointer(float32), float32, [m, n], [stride_6: int32, stride_7: int32], type="auto")}
       buffer_map = {A0_1: A0, A1_1: A1, B_2: B, B_3: B_1} {
       for (i: int32, 0, m) {
         for (j: int32, 0, n) {
-          B_4[((i*stride) + (j*stride_1))] = ((float32*)A0_2[((i*stride_4) + (j*stride_5))] + 2f32)
-          B_5[((i*stride_2) + (j*stride_3))] = ((float32*)A1_2[((i*stride_6) + (j*stride_7))]*3f32)
+          B_4[((i*stride) + (j*stride_1))] = ((float32*)A0_2[((i*stride_2) + (j*stride_3))] + 2f32)
+          B_5[((i*stride_4) + (j*stride_5))] = ((float32*)A1_2[((i*stride_6) + (j*stride_7))]*3f32)
         }
       }
     }
@@ -136,15 +136,15 @@ with :py:func:`te.comm_reducer` as below:
     primfn(idx_1: handle, val_1: handle, T_2: handle, T_3: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
       buffers = {T_1: Buffer(T_4: Pointer(int32), int32, [m: int32], [stride: int32], type="auto"),
-                 idx: Buffer(idx_2: Pointer(int32), int32, [m, n: int32], [stride_1: int32, stride_2: int32], type="auto"),
-                 T: Buffer(T_5: Pointer(int32), int32, [m], [stride_3: int32], type="auto"),
+                 T: Buffer(T_5: Pointer(int32), int32, [m], [stride_1: int32], type="auto"),
+                 idx: Buffer(idx_2: Pointer(int32), int32, [m, n: int32], [stride_2: int32, stride_3: int32], type="auto"),
                  val: Buffer(val_2: Pointer(int32), int32, [m, n], [stride_4: int32, stride_5: int32], type="auto")}
       buffer_map = {idx_1: idx, val_1: val, T_2: T, T_3: T_1} {
       for (i: int32, 0, m) {
-        T_5[(i*stride_3)] = -1
+        T_5[(i*stride_1)] = -1
         T_4[(i*stride)] = -2147483648
         for (k: int32, 0, n) {
-          T_5[(i*stride_3)] = @tir.if_then_else(((int32*)val_2[((i*stride_4) + (k*stride_5))] <= (int32*)T_4[(i*stride)]), (int32*)T_5[(i*stride_3)], (int32*)idx_2[((i*stride_1) + (k*stride_2))], dtype=int32)
+          T_5[(i*stride_1)] = @tir.if_then_else(((int32*)val_2[((i*stride_4) + (k*stride_5))] <= (int32*)T_4[(i*stride)]), (int32*)T_5[(i*stride_1)], (int32*)idx_2[((i*stride_2) + (k*stride_3))], dtype=int32)
           T_4[(i*stride)] = @tir.if_then_else(((int32*)val_2[((i*stride_4) + (k*stride_5))] <= (int32*)T_4[(i*stride)]), (int32*)T_4[(i*stride)], (int32*)val_2[((i*stride_4) + (k*stride_5))], dtype=int32)
         }
       }
diff --git a/docs/_sources/tutorials/micro/micro_autotune.rst.txt b/docs/_sources/tutorials/micro/micro_autotune.rst.txt
index 911708c..15a10b8 100644
--- a/docs/_sources/tutorials/micro/micro_autotune.rst.txt
+++ b/docs/_sources/tutorials/micro/micro_autotune.rst.txt
@@ -208,7 +208,7 @@ Configuring microTVM
 
  .. code-block:: none
 
-
     Current/Best:    0.00/   0.00 MFLOPS | Progress: (0/10) | 0.00 s
     Current/Best:  248.33/ 248.33 MFLOPS | Progress: (1/10) | 5.04 s
     Current/Best:  226.79/ 248.33 MFLOPS | Progress: (2/10) | 7.76 s
     Current/Best:  167.17/ 248.33 MFLOPS | Progress: (3/10) | 11.54 s
     Current/Best:  163.68/ 248.33 MFLOPS | Progress: (4/10) | 14.28 s
     Current/Best:  186.74/ 248.33 MFLOPS | Progress: (5/10) | 17.99 s
     Current/Best:  214.88/ 248.33 MFLOPS | Progress: (6/10) | 20.68 s
     Current/Best:  237.07/ 248.33 MFLOPS | Progress: (7/10) | 24.46 s
     Current/Best:  152.29/ 248.33 MFLOPS | Progress: (8/10) | 27.18 s
     Current/Best:  203.71/ 248.33 MFLOPS | Progress: (9/10) | 31.03 s
     Current/Best:   60.25/ 248.33 MFLOPS | Progress: (10/10) | 33.72 s Done.
+
     Current/Best:    0.00/   0.00 MFLOPS | Progress: (0/10) | 0.00 s
     Current/Best:  221.97/ 221.97 MFLOPS | Progress: (1/10) | 5.48 s
     Current/Best:  112.44/ 221.97 MFLOPS | Progress: (2/10) | 8.18 s
     Current/Best:  114.36/ 221.97 MFLOPS | Progress: (3/10) | 12.06 s
     Current/Best:  260.71/ 260.71 MFLOPS | Progress: (4/10) | 15.88 s
     Current/Best:  265.12/ 265.12 MFLOPS | Progress: (5/10) | 19.71 s
     Current/Best:  158.71/ 265.12 MFLOPS | Progress: (6/10) | 22.32 s
     Current/Best:  247.02/ 265.12 MFLOPS | Progress: (7/10) | 24.95 s
     Current/Best:  113.80/ 265.12 MFLOPS | Progress: (8/10) | 27.56 s
     Current/Best:  281.78/ 281.78 MFLOPS | Progress: (9/10) | 30.17 s
     Current/Best:  220.41/ 281.78 MFLOPS | Progress: (10/10) | 32.78 s Done.
 
 
 
@@ -269,10 +269,10 @@ Timing the untuned program
     ########## Build without Autotuning ##########
     Node Name                                     Ops                                           Time(us)  Time(%)  Shape              Inputs  Outputs  
     ---------                                     ---                                           --------  -------  -----              ------  -------  
-    tvmgen_default_fused_nn_contrib_conv2d_NCHWc  tvmgen_default_fused_nn_contrib_conv2d_NCHWc  501.4     98.275   (1, 2, 10, 10, 3)  2       1        
-    tvmgen_default_fused_layout_transform         tvmgen_default_fused_layout_transform         5.4       1.058    (1, 6, 10, 10)     1       1        
-    tvmgen_default_fused_layout_transform_1       tvmgen_default_fused_layout_transform_1       3.403     0.667    (1, 1, 10, 10, 3)  1       1        
-    Total_time                                    -                                             510.203   -        -                  -       -        
+    tvmgen_default_fused_nn_contrib_conv2d_NCHWc  tvmgen_default_fused_nn_contrib_conv2d_NCHWc  295.7     98.681   (1, 2, 10, 10, 3)  2       1        
+    tvmgen_default_fused_layout_transform         tvmgen_default_fused_layout_transform         3.024     1.009    (1, 6, 10, 10)     1       1        
+    tvmgen_default_fused_layout_transform_1       tvmgen_default_fused_layout_transform_1       0.93      0.31     (1, 1, 10, 10, 3)  1       1        
+    Total_time                                    -                                             299.653   -        -                  -       -        
 
 
 
@@ -331,10 +331,10 @@ Timing the tuned program
     ########## Build with Autotuning ##########
     Node Name                                     Ops                                           Time(us)  Time(%)  Shape              Inputs  Outputs  
     ---------                                     ---                                           --------  -------  -----              ------  -------  
-    tvmgen_default_fused_nn_contrib_conv2d_NCHWc  tvmgen_default_fused_nn_contrib_conv2d_NCHWc  347.0     97.334   (1, 6, 10, 10, 1)  2       1        
-    tvmgen_default_fused_layout_transform         tvmgen_default_fused_layout_transform         6.1       1.711    (1, 6, 10, 10)     1       1        
-    tvmgen_default_fused_layout_transform_1       tvmgen_default_fused_layout_transform_1       3.403     0.955    (1, 1, 10, 10, 3)  1       1        
-    Total_time                                    -                                             356.503   -        -                  -       -        
+    tvmgen_default_fused_nn_contrib_conv2d_NCHWc  tvmgen_default_fused_nn_contrib_conv2d_NCHWc  219.0     98.818   (1, 1, 10, 10, 6)  2       1        
+    tvmgen_default_fused_layout_transform         tvmgen_default_fused_layout_transform         1.802     0.813    (1, 6, 10, 10)     1       1        
+    tvmgen_default_fused_layout_transform_1       tvmgen_default_fused_layout_transform_1       0.817     0.369    (1, 3, 10, 10, 1)  1       1        
+    Total_time                                    -                                             221.619   -        -                  -       -        
 
 
 
diff --git a/docs/_sources/tutorials/micro/micro_tflite.rst.txt b/docs/_sources/tutorials/micro/micro_tflite.rst.txt
index f8ead0c..0835909 100644
--- a/docs/_sources/tutorials/micro/micro_tflite.rst.txt
+++ b/docs/_sources/tutorials/micro/micro_tflite.rst.txt
@@ -360,22 +360,22 @@ Now, compile the model for the target:
     #ifdef __cplusplus
     extern "C"
     #endif
-    TVM_DLL int32_t tvmgen_default_fused_nn_dense_add_nn_relu(void* args, void* arg_type_ids, int32_t num_args, void* out_ret_value, void* out_ret_tcode, void* resource_handle) {
+    TVM_DLL int32_t tvmgen_default_fused_reshape(void* args, void* arg_type_ids, int32_t num_args, void* out_ret_value, void* out_ret_tcode, void* resource_handle) {
       void* arg0 = (((TVMValue*)args)[0].v_handle);
      - .
-     - ./src
-     - ./src/relay.txt
      - ./codegen
      - ./codegen/host
      - ./codegen/host/src
-     - ./codegen/host/src/default_lib0.c
      - ./codegen/host/src/default_lib1.c
+     - ./codegen/host/src/default_lib0.c
      - ./parameters
      - ./parameters/default.params
-     - ./metadata.json
      - ./executor-config
      - ./executor-config/graph
      - ./executor-config/graph/graph.json
+     - ./metadata.json
+     - ./src
+     - ./src/relay.txt
 
 
 
diff --git a/docs/_sources/tutorials/micro/sg_execution_times.rst.txt b/docs/_sources/tutorials/micro/sg_execution_times.rst.txt
index fa49db0..72ebeb7 100644
--- a/docs/_sources/tutorials/micro/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/micro/sg_execution_times.rst.txt
@@ -5,8 +5,8 @@
 
 Computation times
 =================
-**00:40.442** total execution time for **tutorials_micro** files:
+**00:39.703** total execution time for **tutorials_micro** files:
 
-- **00:40.442**: :ref:`sphx_glr_tutorials_micro_micro_autotune.py` (``micro_autotune.py``)
+- **00:39.703**: :ref:`sphx_glr_tutorials_micro_micro_autotune.py` (``micro_autotune.py``)
 - **00:00.000**: :ref:`sphx_glr_tutorials_micro_micro_reference_vm.py` (``micro_reference_vm.py``)
 - **00:00.000**: :ref:`sphx_glr_tutorials_micro_micro_tflite.py` (``micro_tflite.py``)
diff --git a/docs/_sources/tutorials/optimize/opt_conv_cuda.rst.txt b/docs/_sources/tutorials/optimize/opt_conv_cuda.rst.txt
index af29a46..4f3fb05 100644
--- a/docs/_sources/tutorials/optimize/opt_conv_cuda.rst.txt
+++ b/docs/_sources/tutorials/optimize/opt_conv_cuda.rst.txt
@@ -296,7 +296,7 @@ latency of convolution.
 
  .. code-block:: none
 
-    Convolution: 14.026541 ms
+    Convolution: 54.178334 ms
 
 
 
diff --git a/docs/_sources/tutorials/optimize/opt_conv_tensorcore.rst.txt b/docs/_sources/tutorials/optimize/opt_conv_tensorcore.rst.txt
index bff795f..64d4dd6 100644
--- a/docs/_sources/tutorials/optimize/opt_conv_tensorcore.rst.txt
+++ b/docs/_sources/tutorials/optimize/opt_conv_tensorcore.rst.txt
@@ -405,8 +405,8 @@ one time.
 
     primfn(A_1: handle, W_1: handle, Conv_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {A: Buffer(A_2: Pointer(float16), float16, [16, 14, 14, 16, 16, 16], []),
-                 Conv: Buffer(Conv_2: Pointer(float32), float32, [16, 14, 14, 32, 16, 16], []),
+      buffers = {Conv: Buffer(Conv_2: Pointer(float32), float32, [16, 14, 14, 32, 16, 16], []),
+                 A: Buffer(A_2: Pointer(float16), float16, [16, 14, 14, 16, 16, 16], []),
                  W: Buffer(W_2: Pointer(float16), float16, [3, 3, 16, 32, 16, 16], [])}
       buffer_map = {A_1: A, W_1: W, Conv_1: Conv} {
       attr [IterVar(blockIdx.z: int32, (nullptr), "ThreadIndex", "blockIdx.z")] "thread_extent" = 196;
@@ -614,7 +614,7 @@ be able to run on our build server
 
  .. code-block:: none
 
-    conv2d with tensor core: 4.535341 ms
+    conv2d with tensor core: 6.580490 ms
 
 
 
diff --git a/docs/_sources/tutorials/optimize/opt_gemm.rst.txt b/docs/_sources/tutorials/optimize/opt_gemm.rst.txt
index 8cc24be..dc1dcbf 100644
--- a/docs/_sources/tutorials/optimize/opt_gemm.rst.txt
+++ b/docs/_sources/tutorials/optimize/opt_gemm.rst.txt
@@ -118,8 +118,8 @@ Then we write a baseline implementation, the simplest way to write a matrix mult
 
  .. code-block:: none
 
-    Numpy running time: 0.014014
-    Baseline: 6.117077
+    Numpy running time: 0.009345
+    Baseline: 3.291115
 
 
 
@@ -207,7 +207,7 @@ fill 32 * 32 * sizeof(float) which is 4KB in the cache whose total size is 32KB
 
  .. code-block:: none
 
-    Opt1: 0.130019
+    Opt1: 0.310688
 
 
 
@@ -302,7 +302,7 @@ In this tutorial, we chose to vectorize the inner loop row data since it is cach
 
  .. code-block:: none
 
-    Opt2: 0.131317
+    Opt2: 0.341067
 
 
 
@@ -390,7 +390,7 @@ the access pattern for A matrix is more cache friendly.
 
  .. code-block:: none
 
-    Opt3: 0.065470
+    Opt3: 0.111449
 
 
 
@@ -505,7 +505,7 @@ flattening.
 
  .. code-block:: none
 
-    Opt4: 0.064565
+    Opt4: 0.217310
 
 
 
@@ -619,7 +619,7 @@ write to C when all the block results are ready.
 
  .. code-block:: none
 
-    Opt5: 0.064228
+    Opt5: 0.215912
 
 
 
@@ -733,7 +733,7 @@ Futhermore, we can also utilize multi-core processors to do the thread-level par
 
  .. code-block:: none
 
-    Opt6: 0.018096
+    Opt6: 0.066558
 
 
 
diff --git a/docs/_sources/tutorials/optimize/sg_execution_times.rst.txt b/docs/_sources/tutorials/optimize/sg_execution_times.rst.txt
index f3c75f9..4b8d0d5 100644
--- a/docs/_sources/tutorials/optimize/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/optimize/sg_execution_times.rst.txt
@@ -5,8 +5,8 @@
 
 Computation times
 =================
-**00:29.154** total execution time for **tutorials_optimize** files:
+**00:29.655** total execution time for **tutorials_optimize** files:
 
-- **00:27.061**: :ref:`sphx_glr_tutorials_optimize_opt_gemm.py` (``opt_gemm.py``)
-- **00:01.137**: :ref:`sphx_glr_tutorials_optimize_opt_conv_tensorcore.py` (``opt_conv_tensorcore.py``)
-- **00:00.956**: :ref:`sphx_glr_tutorials_optimize_opt_conv_cuda.py` (``opt_conv_cuda.py``)
+- **00:29.655**: :ref:`sphx_glr_tutorials_optimize_opt_gemm.py` (``opt_gemm.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_optimize_opt_conv_cuda.py` (``opt_conv_cuda.py``)
+- **00:00.000**: :ref:`sphx_glr_tutorials_optimize_opt_conv_tensorcore.py` (``opt_conv_tensorcore.py``)
diff --git a/docs/_sources/tutorials/topi/intro_topi.rst.txt b/docs/_sources/tutorials/topi/intro_topi.rst.txt
index ec4c9dc..c85f172 100644
--- a/docs/_sources/tutorials/topi/intro_topi.rst.txt
+++ b/docs/_sources/tutorials/topi/intro_topi.rst.txt
@@ -226,7 +226,7 @@ As you can see, scheduled stages of computation have been accumulated and we can
 
  .. code-block:: none
 
-    [stage(a, placeholder(a, 0xba784780)), stage(b, placeholder(b, 0xda4d2800)), stage(T_add, compute(T_add, body=[(a[ax0, ax1, ax2] + b[ax1, ax2])], axis=[iter_var(ax0, range(min=0, ext=100)), iter_var(ax1, range(min=0, ext=10)), iter_var(ax2, range(min=0, ext=10))], reduce_axis=[], tag=broadcast, attrs={})), stage(T_multiply, compute(T_multiply, body=[(a[ax0, ax1, ax2]*b[ax1, ax2])], axis=[iter_var(ax0, range(min=0, ext=100)), iter_var(ax1, range(min=0, ext=10)), iter_var(ax2, range(mi [...]
+    [stage(a, placeholder(a, 0xd9c0fa00)), stage(b, placeholder(b, 0xe225cf70)), stage(T_add, compute(T_add, body=[(a[ax0, ax1, ax2] + b[ax1, ax2])], axis=[iter_var(ax0, range(min=0, ext=100)), iter_var(ax1, range(min=0, ext=10)), iter_var(ax2, range(min=0, ext=10))], reduce_axis=[], tag=broadcast, attrs={})), stage(T_multiply, compute(T_multiply, body=[(a[ax0, ax1, ax2]*b[ax1, ax2])], axis=[iter_var(ax0, range(min=0, ext=100)), iter_var(ax1, range(min=0, ext=10)), iter_var(ax2, range(mi [...]
 
 
 
diff --git a/docs/_sources/tutorials/topi/sg_execution_times.rst.txt b/docs/_sources/tutorials/topi/sg_execution_times.rst.txt
index e22d80d..d92fd6f 100644
--- a/docs/_sources/tutorials/topi/sg_execution_times.rst.txt
+++ b/docs/_sources/tutorials/topi/sg_execution_times.rst.txt
@@ -5,6 +5,6 @@
 
 Computation times
 =================
-**00:00.782** total execution time for **tutorials_topi** files:
+**00:00.704** total execution time for **tutorials_topi** files:
 
-- **00:00.782**: :ref:`sphx_glr_tutorials_topi_intro_topi.py` (``intro_topi.py``)
+- **00:00.704**: :ref:`sphx_glr_tutorials_topi_intro_topi.py` (``intro_topi.py``)
diff --git a/docs/_sources/vta/tutorials/autotvm/sg_execution_times.rst.txt b/docs/_sources/vta/tutorials/autotvm/sg_execution_times.rst.txt
index 74f5326..3a06795 100644
--- a/docs/_sources/vta/tutorials/autotvm/sg_execution_times.rst.txt
+++ b/docs/_sources/vta/tutorials/autotvm/sg_execution_times.rst.txt
@@ -5,7 +5,7 @@
 
 Computation times
 =================
-**00:19.286** total execution time for **vta_tutorials_autotvm** files:
+**00:17.724** total execution time for **vta_tutorials_autotvm** files:
 
-- **00:19.146**: :ref:`sphx_glr_vta_tutorials_autotvm_tune_relay_vta.py` (``tune_relay_vta.py``)
-- **00:00.140**: :ref:`sphx_glr_vta_tutorials_autotvm_tune_alu_vta.py` (``tune_alu_vta.py``)
+- **00:17.550**: :ref:`sphx_glr_vta_tutorials_autotvm_tune_relay_vta.py` (``tune_relay_vta.py``)
+- **00:00.173**: :ref:`sphx_glr_vta_tutorials_autotvm_tune_alu_vta.py` (``tune_alu_vta.py``)
diff --git a/docs/_sources/vta/tutorials/frontend/deploy_classification.rst.txt b/docs/_sources/vta/tutorials/frontend/deploy_classification.rst.txt
index 86bd39c..db7d470 100644
--- a/docs/_sources/vta/tutorials/frontend/deploy_classification.rst.txt
+++ b/docs/_sources/vta/tutorials/frontend/deploy_classification.rst.txt
@@ -259,7 +259,7 @@ The compilation steps are:
 
  .. code-block:: none
 
-    resnet18_v1 inference graph built in 18.95s!
+    resnet18_v1 inference graph built in 32.45s!
 
 
 
diff --git a/docs/_sources/vta/tutorials/frontend/deploy_detection.rst.txt b/docs/_sources/vta/tutorials/frontend/deploy_detection.rst.txt
index 8764f7c..1fd9ca3 100644
--- a/docs/_sources/vta/tutorials/frontend/deploy_detection.rst.txt
+++ b/docs/_sources/vta/tutorials/frontend/deploy_detection.rst.txt
@@ -297,7 +297,7 @@ The compilation steps are:
 
  .. code-block:: none
 
-    yolov3-tiny inference graph built in 13.16s!
+    yolov3-tiny inference graph built in 13.01s!
 
 
 
diff --git a/docs/_sources/vta/tutorials/frontend/sg_execution_times.rst.txt b/docs/_sources/vta/tutorials/frontend/sg_execution_times.rst.txt
index 2f76a01..30e6515 100644
--- a/docs/_sources/vta/tutorials/frontend/sg_execution_times.rst.txt
+++ b/docs/_sources/vta/tutorials/frontend/sg_execution_times.rst.txt
@@ -5,7 +5,7 @@
 
 Computation times
 =================
-**01:16.053** total execution time for **vta_tutorials_frontend** files:
+**00:54.952** total execution time for **vta_tutorials_frontend** files:
 
-- **00:39.493**: :ref:`sphx_glr_vta_tutorials_frontend_deploy_detection.py` (``deploy_detection.py``)
-- **00:36.559**: :ref:`sphx_glr_vta_tutorials_frontend_deploy_classification.py` (``deploy_classification.py``)
+- **00:54.952**: :ref:`sphx_glr_vta_tutorials_frontend_deploy_classification.py` (``deploy_classification.py``)
+- **00:00.000**: :ref:`sphx_glr_vta_tutorials_frontend_deploy_detection.py` (``deploy_detection.py``)
diff --git a/docs/_sources/vta/tutorials/matrix_multiply.rst.txt b/docs/_sources/vta/tutorials/matrix_multiply.rst.txt
index b0d76e6..d634e88 100644
--- a/docs/_sources/vta/tutorials/matrix_multiply.rst.txt
+++ b/docs/_sources/vta/tutorials/matrix_multiply.rst.txt
@@ -529,8 +529,8 @@ by the VTA runtime JIT compiler.
 
     primfn(A_1: handle, B_1: handle, C_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {C: Buffer(C_2: Pointer(int8), int8, [1, 16, 1, 16], []),
-                 A: Buffer(A_2: Pointer(int8), int8, [1, 16, 1, 16], []),
+      buffers = {A: Buffer(A_2: Pointer(int8), int8, [1, 16, 1, 16], []),
+                 C: Buffer(C_2: Pointer(int8), int8, [1, 16, 1, 16], []),
                  B: Buffer(B_2: Pointer(int8), int8, [16, 16, 16, 16], [])}
       buffer_map = {A_1: A, B_1: B, C_1: C} {
       attr [IterVar(vta: int32, (nullptr), "ThreadIndex", "vta")] "coproc_scope" = 2 {
diff --git a/docs/_sources/vta/tutorials/optimize/convolution_opt.rst.txt b/docs/_sources/vta/tutorials/optimize/convolution_opt.rst.txt
index 8396b54..7b1f915 100644
--- a/docs/_sources/vta/tutorials/optimize/convolution_opt.rst.txt
+++ b/docs/_sources/vta/tutorials/optimize/convolution_opt.rst.txt
@@ -445,8 +445,8 @@ below.
 
     primfn(data_1: handle, kernel_1: handle, res_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {data: Buffer(data_2: Pointer(int8), int8, [1, 16, 14, 14, 1, 16], []),
-                 res: Buffer(res_2: Pointer(int8), int8, [1, 16, 14, 14, 1, 16], []),
+      buffers = {res: Buffer(res_2: Pointer(int8), int8, [1, 16, 14, 14, 1, 16], []),
+                 data: Buffer(data_2: Pointer(int8), int8, [1, 16, 14, 14, 1, 16], []),
                  kernel: Buffer(kernel_2: Pointer(int8), int8, [16, 16, 3, 3, 16, 16], [])}
       buffer_map = {data_1: data, kernel_1: kernel, res_1: res} {
       allocate(data_buf: Pointer(global int8), int8, [65536]), storage_scope = global;
diff --git a/docs/_sources/vta/tutorials/optimize/matrix_multiply_opt.rst.txt b/docs/_sources/vta/tutorials/optimize/matrix_multiply_opt.rst.txt
index a8900fb..ce51043 100644
--- a/docs/_sources/vta/tutorials/optimize/matrix_multiply_opt.rst.txt
+++ b/docs/_sources/vta/tutorials/optimize/matrix_multiply_opt.rst.txt
@@ -348,8 +348,8 @@ below:
 
     primfn(data_1: handle, weight_1: handle, res_1: handle) -> ()
       attr = {"from_legacy_te_schedule": True, "global_symbol": "main", "tir.noalias": True}
-      buffers = {data: Buffer(data_2: Pointer(int8), int8, [1, 64, 1, 16], []),
-                 res: Buffer(res_2: Pointer(int8), int8, [1, 64, 1, 16], []),
+      buffers = {res: Buffer(res_2: Pointer(int8), int8, [1, 64, 1, 16], []),
+                 data: Buffer(data_2: Pointer(int8), int8, [1, 64, 1, 16], []),
                  weight: Buffer(weight_2: Pointer(int8), int8, [64, 64, 16, 16], [])}
       buffer_map = {data_1: data, weight_1: weight, res_1: res} {
       allocate(data_buf: Pointer(global int8), int8, [1024]), storage_scope = global;
diff --git a/docs/_sources/vta/tutorials/optimize/sg_execution_times.rst.txt b/docs/_sources/vta/tutorials/optimize/sg_execution_times.rst.txt
index 83c7e2c..8e0a369 100644
--- a/docs/_sources/vta/tutorials/optimize/sg_execution_times.rst.txt
+++ b/docs/_sources/vta/tutorials/optimize/sg_execution_times.rst.txt
@@ -5,7 +5,7 @@
 
 Computation times
 =================
-**00:03.801** total execution time for **vta_tutorials_optimize** files:
+**00:03.387** total execution time for **vta_tutorials_optimize** files:
 
-- **00:03.254**: :ref:`sphx_glr_vta_tutorials_optimize_convolution_opt.py` (``convolution_opt.py``)
-- **00:00.547**: :ref:`sphx_glr_vta_tutorials_optimize_matrix_multiply_opt.py` (``matrix_multiply_opt.py``)
+- **00:02.915**: :ref:`sphx_glr_vta_tutorials_optimize_convolution_opt.py` (``convolution_opt.py``)
+- **00:00.472**: :ref:`sphx_glr_vta_tutorials_optimize_matrix_multiply_opt.py` (``matrix_multiply_opt.py``)
diff --git a/docs/_sources/vta/tutorials/sg_execution_times.rst.txt b/docs/_sources/vta/tutorials/sg_execution_times.rst.txt
index 7feb567..2609365 100644
--- a/docs/_sources/vta/tutorials/sg_execution_times.rst.txt
+++ b/docs/_sources/vta/tutorials/sg_execution_times.rst.txt
@@ -5,7 +5,7 @@
 
 Computation times
 =================
-**00:01.133** total execution time for **vta_tutorials** files:
+**00:00.856** total execution time for **vta_tutorials** files:
 
-- **00:00.576**: :ref:`sphx_glr_vta_tutorials_matrix_multiply.py` (``matrix_multiply.py``)
-- **00:00.557**: :ref:`sphx_glr_vta_tutorials_vta_get_started.py` (``vta_get_started.py``)
+- **00:00.436**: :ref:`sphx_glr_vta_tutorials_matrix_multiply.py` (``matrix_multiply.py``)
+- **00:00.420**: :ref:`sphx_glr_vta_tutorials_vta_get_started.py` (``vta_get_started.py``)
diff --git a/docs/_static/documentation_options.js b/docs/_static/documentation_options.js
index 992760b..864266b 100644
--- a/docs/_static/documentation_options.js
+++ b/docs/_static/documentation_options.js
@@ -1,6 +1,6 @@
 var DOCUMENTATION_OPTIONS = {
     URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'),
-    VERSION: '0.8.dev1706+gdc2f70e3c',
+    VERSION: '0.8.dev0',
     LANGUAGE: 'None',
     COLLAPSE_INDEX: false,
     BUILDER: 'html',
diff --git a/docs/api/javadoc/org/apache/tvm/class-use/Function.html b/docs/api/javadoc/org/apache/tvm/class-use/Function.html
index df56f50..5e836f7 100644
--- a/docs/api/javadoc/org/apache/tvm/class-use/Function.html
+++ b/docs/api/javadoc/org/apache/tvm/class-use/Function.html
@@ -112,14 +112,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asFunction--">asFunction</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Function.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Function.html#asFunction--">asFunction</a></span>()</code>
 <div class="block">Easy for user to get the instance from returned TVMValue.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asFunction--">asFunction</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Function.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Function.html#convertFunc-org.apache.tvm.Function.Callback-">convertFunc</a></span>(<a href="../../../../org/apache/tvm/Function.Callback.html" title="interface in org.apache.tvm">Function.Callback</a>&nbsp;function)</code>
@@ -145,15 +145,15 @@
 </td>
 </tr>
 <tr class="altColor">
+<td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
+<td class="colLast"><span class="typeNameLabel">Module.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Module.html#getFunction-java.lang.String-">getFunction</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
+</tr>
+<tr class="rowColor">
 <td class="colFirst"><code>static <a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Function.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Function.html#getFunction-java.lang.String-">getFunction</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>
 <div class="block">Get registered function.</div>
 </td>
 </tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
-<td class="colLast"><span class="typeNameLabel">Module.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Module.html#getFunction-java.lang.String-">getFunction</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name)</code>&nbsp;</td>
-</tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/Function.html" title="class in org.apache.tvm">Function</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Module.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Module.html#getFunction-java.lang.String-boolean-">getFunction</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;name,
diff --git a/docs/api/javadoc/org/apache/tvm/class-use/Module.html b/docs/api/javadoc/org/apache/tvm/class-use/Module.html
index a68d126..f60731a 100644
--- a/docs/api/javadoc/org/apache/tvm/class-use/Module.html
+++ b/docs/api/javadoc/org/apache/tvm/class-use/Module.html
@@ -112,14 +112,14 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/Module.html" title="class in org.apache.tvm">Module</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asModule--">asModule</a></span>()</code>&nbsp;</td>
-</tr>
-<tr class="rowColor">
-<td class="colFirst"><code><a href="../../../../org/apache/tvm/Module.html" title="class in org.apache.tvm">Module</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Module.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Module.html#asModule--">asModule</a></span>()</code>
 <div class="block">Easy for user to get the instance from returned TVMValue.</div>
 </td>
 </tr>
+<tr class="rowColor">
+<td class="colFirst"><code><a href="../../../../org/apache/tvm/Module.html" title="class in org.apache.tvm">Module</a></code></td>
+<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asModule--">asModule</a></span>()</code>&nbsp;</td>
+</tr>
 <tr class="altColor">
 <td class="colFirst"><code>static <a href="../../../../org/apache/tvm/Module.html" title="class in org.apache.tvm">Module</a></code></td>
 <td class="colLast"><span class="typeNameLabel">Module.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/Module.html#load-java.lang.String-">load</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;path)</code>&nbsp;</td>
diff --git a/docs/api/javadoc/org/apache/tvm/class-use/NDArrayBase.html b/docs/api/javadoc/org/apache/tvm/class-use/NDArrayBase.html
index 161b3e5..33a9c7a 100644
--- a/docs/api/javadoc/org/apache/tvm/class-use/NDArrayBase.html
+++ b/docs/api/javadoc/org/apache/tvm/class-use/NDArrayBase.html
@@ -119,11 +119,11 @@
 <tbody>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/NDArrayBase.html" title="class in org.apache.tvm">NDArrayBase</a></code></td>
-<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asNDArray--">asNDArray</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">NDArrayBase.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/NDArrayBase.html#asNDArray--">asNDArray</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="rowColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/NDArrayBase.html" title="class in org.apache.tvm">NDArrayBase</a></code></td>
-<td class="colLast"><span class="typeNameLabel">NDArrayBase.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/NDArrayBase.html#asNDArray--">asNDArray</a></span>()</code>&nbsp;</td>
+<td class="colLast"><span class="typeNameLabel">TVMValue.</span><code><span class="memberNameLink"><a href="../../../../org/apache/tvm/TVMValue.html#asNDArray--">asNDArray</a></span>()</code>&nbsp;</td>
 </tr>
 <tr class="altColor">
 <td class="colFirst"><code><a href="../../../../org/apache/tvm/NDArrayBase.html" title="class in org.apache.tvm">NDArrayBase</a></code></td>
diff --git a/docs/api/links.html b/docs/api/links.html
index 212ba5f..5d48827 100644
--- a/docs/api/links.html
+++ b/docs/api/links.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Links to Other API References &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Links to Other API References &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/auto_scheduler.html b/docs/api/python/auto_scheduler.html
index 76d30de..8cdba68 100644
--- a/docs/api/python/auto_scheduler.html
+++ b/docs/api/python/auto_scheduler.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.auto_scheduler &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.auto_scheduler &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -1163,7 +1163,7 @@ initialization order?).</p>
 
 <dl class="py class">
 <dt class="sig sig-object py" id="tvm.auto_scheduler.LocalBuilder">
-<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">LocalBuilder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">15</span></span></em>, <em class="sig-param"><span class="n"><sp [...]
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">LocalBuilder</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">timeout</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">15</span></span></em>, <em class="sig-param"><span class="n"><sp [...]
 <dd><p>LocalBuilder use local CPU cores to build programs in parallel.</p>
 <dl class="field-list simple">
 <dt class="field-odd">Parameters</dt>
@@ -1718,7 +1718,7 @@ Can be the a function or the function name.</p></li>
 
 <dl class="py function">
 <dt class="sig sig-object py" id="tvm.auto_scheduler.auto_schedule">
-<span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">auto_schedule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">search_policy</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em clas [...]
+<span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">auto_schedule</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">search_policy</span></span><span class="o"><span class="pre">=</span></span><span class="default_value"><span class="pre">None</span></span></em>, <em clas [...]
 <dd><p>THIS API IS DEPRECATED.</p>
 <p>Run auto scheduling search for a task.</p>
 <dl class="field-list simple">
@@ -1755,7 +1755,7 @@ the initial naive schedule (state).</p>
 
 <dl class="py class">
 <dt class="sig sig-object py" id="tvm.auto_scheduler.SketchPolicy">
-<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">SketchPolicy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">program_cost_model</span></span><span class="o"><span class="pre">=</span></span><span class="defau [...]
+<em class="property"><span class="pre">class</span> </em><span class="sig-prename descclassname"><span class="pre">tvm.auto_scheduler.</span></span><span class="sig-name descname"><span class="pre">SketchPolicy</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">task</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">program_cost_model</span></span><span class="o"><span class="pre">=</span></span><span class="defau [...]
 <dd><p>The search policy that searches in a hierarchical search space defined by sketches.
 The policy randomly samples programs from the space defined by sketches and use evolutionary
 search to fine-tune them.</p>
diff --git a/docs/api/python/autotvm.html b/docs/api/python/autotvm.html
index 91b53fe..872046e 100644
--- a/docs/api/python/autotvm.html
+++ b/docs/api/python/autotvm.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.autotvm &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.autotvm &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/contrib.html b/docs/api/python/contrib.html
index 3220430..e64f05f 100644
--- a/docs/api/python/contrib.html
+++ b/docs/api/python/contrib.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.contrib &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.contrib &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/driver.html b/docs/api/python/driver.html
index abde031..a33196d 100644
--- a/docs/api/python/driver.html
+++ b/docs/api/python/driver.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.driver &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.driver &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/error.html b/docs/api/python/error.html
index 1ece2a7..78dc3c6 100644
--- a/docs/api/python/error.html
+++ b/docs/api/python/error.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.error &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.error &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/graph_executor.html b/docs/api/python/graph_executor.html
index 08e488f..47b45cb 100644
--- a/docs/api/python/graph_executor.html
+++ b/docs/api/python/graph_executor.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.contrib.graph_executor &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.contrib.graph_executor &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/index.html b/docs/api/python/index.html
index 08aec50..58dd226 100644
--- a/docs/api/python/index.html
+++ b/docs/api/python/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Python API &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Python API &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/ir.html b/docs/api/python/ir.html
index 002adf3..3d196b6 100644
--- a/docs/api/python/ir.html
+++ b/docs/api/python/ir.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.ir &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.ir &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/micro.html b/docs/api/python/micro.html
index d47cad6..6ec6f24 100644
--- a/docs/api/python/micro.html
+++ b/docs/api/python/micro.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.micro &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.micro &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/ndarray.html b/docs/api/python/ndarray.html
index 0807d09..0773c5c 100644
--- a/docs/api/python/ndarray.html
+++ b/docs/api/python/ndarray.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.runtime.ndarray &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.runtime.ndarray &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/analysis.html b/docs/api/python/relay/analysis.html
index 5196d96..9f9fe83 100644
--- a/docs/api/python/relay/analysis.html
+++ b/docs/api/python/relay/analysis.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.analysis &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.analysis &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/backend.html b/docs/api/python/relay/backend.html
index 56f31ed..c9cddf9 100644
--- a/docs/api/python/relay/backend.html
+++ b/docs/api/python/relay/backend.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.backend &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.backend &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/dataflow_pattern.html b/docs/api/python/relay/dataflow_pattern.html
index f8d7b93..2af08ab 100644
--- a/docs/api/python/relay/dataflow_pattern.html
+++ b/docs/api/python/relay/dataflow_pattern.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.dataflow_pattern &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.dataflow_pattern &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/frontend.html b/docs/api/python/relay/frontend.html
index 02199d9..fb916c1 100644
--- a/docs/api/python/relay/frontend.html
+++ b/docs/api/python/relay/frontend.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.frontend &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.frontend &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -637,7 +637,7 @@ to be transposed, may insert extra <cite>transpose</cite> to the original graph.
 
 <dl class="py function">
 <dt class="sig sig-object py" id="tvm.relay.frontend.from_pytorch">
-<span class="sig-prename descclassname"><span class="pre">tvm.relay.frontend.</span></span><span class="sig-name descname"><span class="pre">from_pytorch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">script_module</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">input_infos</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">custom_convert_map</span></span><span class="o"><span class [...]
+<span class="sig-prename descclassname"><span class="pre">tvm.relay.frontend.</span></span><span class="sig-name descname"><span class="pre">from_pytorch</span></span><span class="sig-paren">(</span><em class="sig-param"><span class="n"><span class="pre">script_module</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">input_infos</span></span></em>, <em class="sig-param"><span class="n"><span class="pre">custom_convert_map</span></span><span class="o"><span class [...]
 <dd><p>Load PyTorch model in the form of a scripted PyTorch model and convert into relay.
 The companion parameters will be handled automatically.</p>
 <dl class="field-list simple">
@@ -654,6 +654,11 @@ e.g.
 or
 [(‘input0’, ((1, 2), ‘int’)), (‘input1’, ((3, 4), ‘float’))]</p></li>
 <li><p><strong>custom_convert_map</strong> (<em>Dictionary of str to Relay op</em>) – A custom op conversion map in the same format as _convert_map above</p></li>
+<li><p><strong>default_type</strong> (<a class="reference external" href="https://docs.python.org/3/library/stdtypes.html#str" title="(in Python v3.9)"><em>str</em></a>) – The default dtype to use when type information is not provided by PyTorch.</p></li>
+<li><p><strong>use_parser_friendly_name</strong> (<a class="reference external" href="https://docs.python.org/3/library/functions.html#bool" title="(in Python v3.9)"><em>bool</em></a>) – When True, replace ‘.’ with <a href="#id1"><span class="problematic" id="id2">`</span></a>_’ in a original parameter name.
+The Relay text parser treats a variable name followed by a period as a tuple element access,
+so a variable name like “dense.weight” cannot be parsed correctly.
+Use this option when you want to run the AnnotateSpans pass on the imported module.</p></li>
 </ul>
 </dd>
 <dt class="field-even">Returns</dt>
diff --git a/docs/api/python/relay/image.html b/docs/api/python/relay/image.html
index 71c326a..a3740d1 100644
--- a/docs/api/python/relay/image.html
+++ b/docs/api/python/relay/image.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.image &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.image &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/index.html b/docs/api/python/relay/index.html
index 3ff5f8d..be98c0f 100644
--- a/docs/api/python/relay/index.html
+++ b/docs/api/python/relay/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/nn.html b/docs/api/python/relay/nn.html
index db2180d..568db9e 100644
--- a/docs/api/python/relay/nn.html
+++ b/docs/api/python/relay/nn.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.nn &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.nn &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/testing.html b/docs/api/python/relay/testing.html
index 1bd9be1..5ccffeb 100644
--- a/docs/api/python/relay/testing.html
+++ b/docs/api/python/relay/testing.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.testing &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.testing &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/transform.html b/docs/api/python/relay/transform.html
index 4db5ed6..5f10eec 100644
--- a/docs/api/python/relay/transform.html
+++ b/docs/api/python/relay/transform.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.transform &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.transform &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/relay/vision.html b/docs/api/python/relay/vision.html
index cd096b9..d412922 100644
--- a/docs/api/python/relay/vision.html
+++ b/docs/api/python/relay/vision.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.relay.vision &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.relay.vision &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/rpc.html b/docs/api/python/rpc.html
index 637d20b..5718442 100644
--- a/docs/api/python/rpc.html
+++ b/docs/api/python/rpc.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.rpc &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.rpc &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/runtime.html b/docs/api/python/runtime.html
index a11b713..3a14d6d 100644
--- a/docs/api/python/runtime.html
+++ b/docs/api/python/runtime.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.runtime &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.runtime &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/target.html b/docs/api/python/target.html
index fc11485..8c390ea 100644
--- a/docs/api/python/target.html
+++ b/docs/api/python/target.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.target &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.target &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/te.html b/docs/api/python/te.html
index 33e5a65..b6e5b08 100644
--- a/docs/api/python/te.html
+++ b/docs/api/python/te.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.te &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.te &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/tir.html b/docs/api/python/tir.html
index b329f52..b1ba6d2 100644
--- a/docs/api/python/tir.html
+++ b/docs/api/python/tir.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.tir &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.tir &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/topi.html b/docs/api/python/topi.html
index a5149ca..fb2a149 100644
--- a/docs/api/python/topi.html
+++ b/docs/api/python/topi.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>tvm.topi &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>tvm.topi &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/python/vta/index.html b/docs/api/python/vta/index.html
index 69d312a..ca410d3 100644
--- a/docs/api/python/vta/index.html
+++ b/docs/api/python/vta/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>vta &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>vta &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/api/typedoc/classes/bytestreamreader.html b/docs/api/typedoc/classes/bytestreamreader.html
index f6e99bc..b4623c9 100644
--- a/docs/api/typedoc/classes/bytestreamreader.html
+++ b/docs/api/typedoc/classes/bytestreamreader.html
@@ -119,7 +119,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L43">rpc_server.ts:43</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L43">rpc_server.ts:43</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -141,7 +141,7 @@
 					<div class="tsd-signature tsd-kind-icon">bytes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Uint8Array</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L43">rpc_server.ts:43</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L43">rpc_server.ts:43</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -151,7 +151,7 @@
 					<div class="tsd-signature tsd-kind-icon">offset<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 0</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L42">rpc_server.ts:42</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L42">rpc_server.ts:42</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -168,7 +168,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L63">rpc_server.ts:63</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L63">rpc_server.ts:63</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">Uint8Array</span></h4>
@@ -185,7 +185,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L49">rpc_server.ts:49</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L49">rpc_server.ts:49</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
@@ -202,7 +202,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L57">rpc_server.ts:57</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L57">rpc_server.ts:57</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
diff --git a/docs/api/typedoc/classes/cachedcallstack.html b/docs/api/typedoc/classes/cachedcallstack.html
index 0a3cb55..48fcf0a 100644
--- a/docs/api/typedoc/classes/cachedcallstack.html
+++ b/docs/api/typedoc/classes/cachedcallstack.html
@@ -144,7 +144,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L223">memory.ts:223</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L223">memory.ts:223</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -172,7 +172,7 @@
 					<div class="tsd-signature tsd-kind-icon">temp<wbr>Args<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><a href="../interfaces/disposable.html" class="tsd-signature-type">Disposable</a><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = []</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L208">memory.ts:208</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L208">memory.ts:208</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -194,7 +194,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L312">memory.ts:312</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L312">memory.ts:312</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -226,7 +226,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L284">memory.ts:284</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L284">memory.ts:284</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -262,7 +262,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L388">memory.ts:388</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L388">memory.ts:388</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -300,7 +300,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L376">memory.ts:376</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L376">memory.ts:376</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -340,7 +340,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L267">memory.ts:267</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L267">memory.ts:267</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -373,7 +373,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L243">memory.ts:243</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L243">memory.ts:243</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -390,7 +390,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L321">memory.ts:321</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L321">memory.ts:321</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -422,7 +422,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L252">memory.ts:252</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L252">memory.ts:252</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -444,7 +444,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L359">memory.ts:359</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L359">memory.ts:359</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -470,7 +470,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L342">memory.ts:342</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L342">memory.ts:342</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -496,7 +496,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L350">memory.ts:350</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L350">memory.ts:350</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -522,7 +522,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L326">memory.ts:326</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L326">memory.ts:326</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -548,7 +548,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L363">memory.ts:363</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L363">memory.ts:363</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -574,7 +574,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L346">memory.ts:346</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L346">memory.ts:346</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -600,7 +600,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L334">memory.ts:334</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L334">memory.ts:334</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
diff --git a/docs/api/typedoc/classes/dldatatype.html b/docs/api/typedoc/classes/dldatatype.html
index 5b8148e..d144136 100644
--- a/docs/api/typedoc/classes/dldatatype.html
+++ b/docs/api/typedoc/classes/dldatatype.html
@@ -119,7 +119,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L262">runtime.ts:262</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L262">runtime.ts:262</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -147,7 +147,7 @@
 					<div class="tsd-signature tsd-kind-icon">bits<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L260">runtime.ts:260</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L260">runtime.ts:260</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -162,7 +162,7 @@
 					<div class="tsd-signature tsd-kind-icon">code<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L258">runtime.ts:258</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L258">runtime.ts:258</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -177,7 +177,7 @@
 					<div class="tsd-signature tsd-kind-icon">lanes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L262">runtime.ts:262</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L262">runtime.ts:262</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -199,7 +199,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L279">runtime.ts:279</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L279">runtime.ts:279</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
@@ -216,7 +216,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L270">runtime.ts:270</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L270">runtime.ts:270</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
diff --git a/docs/api/typedoc/classes/dldevice.html b/docs/api/typedoc/classes/dldevice.html
index 862c289..f3784b0 100644
--- a/docs/api/typedoc/classes/dldevice.html
+++ b/docs/api/typedoc/classes/dldevice.html
@@ -118,7 +118,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L202">runtime.ts:202</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L202">runtime.ts:202</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -146,7 +146,7 @@
 					<div class="tsd-signature tsd-kind-icon">device<wbr>Id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L200">runtime.ts:200</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L200">runtime.ts:200</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -161,7 +161,7 @@
 					<div class="tsd-signature tsd-kind-icon">device<wbr>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L198">runtime.ts:198</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L198">runtime.ts:198</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -183,7 +183,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L223">runtime.ts:223</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L223">runtime.ts:223</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -205,7 +205,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L230">runtime.ts:230</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L230">runtime.ts:230</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">string</span></h4>
diff --git a/docs/api/typedoc/classes/environment.html b/docs/api/typedoc/classes/environment.html
index 0f9417f..6081cb9 100644
--- a/docs/api/typedoc/classes/environment.html
+++ b/docs/api/typedoc/classes/environment.html
@@ -125,7 +125,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L86">environment.ts:86</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L86">environment.ts:86</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -169,7 +169,7 @@
 					<aside class="tsd-sources">
 						<p>Implementation of <a href="../interfaces/libraryprovider.html">LibraryProvider</a>.<a href="../interfaces/libraryprovider.html#imports">imports</a></p>
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L70">environment.ts:70</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L70">environment.ts:70</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -179,7 +179,7 @@
 					<div class="tsd-signature tsd-kind-icon">logger<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>msg<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L69">environment.ts:69</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L69">environment.ts:69</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-type-declaration">
@@ -210,7 +210,7 @@
 					<div class="tsd-signature tsd-kind-icon">packedCFunc<wbr>Table<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">ctypes.FTVMWasmPackedCFunc</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = [undefined,]</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L78">environment.ts:78</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L78">environment.ts:78</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -228,7 +228,7 @@
 					<div class="tsd-signature tsd-kind-icon">packedCFunc<wbr>Table<wbr>Free<wbr>Id<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span><span class="tsd-signature-symbol"> = []</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L84">environment.ts:84</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L84">environment.ts:84</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -250,7 +250,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L105">environment.ts:105</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L105">environment.ts:105</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/ffilibrary.html b/docs/api/typedoc/classes/ffilibrary.html
index a7b74d8..df629c2 100644
--- a/docs/api/typedoc/classes/ffilibrary.html
+++ b/docs/api/typedoc/classes/ffilibrary.html
@@ -131,7 +131,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L49">runtime.ts:49</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L49">runtime.ts:49</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -156,7 +156,7 @@
 					<div class="tsd-signature tsd-kind-icon">exports<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Function</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L46">runtime.ts:46</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L46">runtime.ts:46</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -166,7 +166,7 @@
 					<div class="tsd-signature tsd-kind-icon">memory<span class="tsd-signature-symbol">:</span> <a href="memory.html" class="tsd-signature-type">Memory</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L45">runtime.ts:45</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L45">runtime.ts:45</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -176,7 +176,7 @@
 					<div class="tsd-signature tsd-kind-icon">wasm32<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L44">runtime.ts:44</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L44">runtime.ts:44</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -186,7 +186,7 @@
 					<div class="tsd-signature tsd-kind-icon">webGPUContext<span class="tsd-signature-symbol">:</span> <a href="webgpucontext.html" class="tsd-signature-type">WebGPUContext</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L47">runtime.ts:47</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L47">runtime.ts:47</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -203,7 +203,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L76">runtime.ts:76</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L76">runtime.ts:76</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -226,7 +226,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L66">runtime.ts:66</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L66">runtime.ts:66</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -243,7 +243,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L84">runtime.ts:84</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L84">runtime.ts:84</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <a href="cachedcallstack.html" class="tsd-signature-type">CachedCallStack</a></h4>
@@ -260,7 +260,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L95">runtime.ts:95</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L95">runtime.ts:95</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -283,7 +283,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L72">runtime.ts:72</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L72">runtime.ts:72</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
diff --git a/docs/api/typedoc/classes/graphexecutor.html b/docs/api/typedoc/classes/graphexecutor.html
index fdd2835..1c749b2 100644
--- a/docs/api/typedoc/classes/graphexecutor.html
+++ b/docs/api/typedoc/classes/graphexecutor.html
@@ -130,7 +130,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L583">runtime.ts:583</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L583">runtime.ts:583</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -162,7 +162,7 @@
 					<div class="tsd-signature tsd-kind-icon">module<span class="tsd-signature-symbol">:</span> <a href="module.html" class="tsd-signature-type">Module</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L579">runtime.ts:579</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L579">runtime.ts:579</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -179,7 +179,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L654">runtime.ts:654</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L654">runtime.ts:654</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -224,7 +224,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L597">runtime.ts:597</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L597">runtime.ts:597</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -241,7 +241,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L631">runtime.ts:631</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L631">runtime.ts:631</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -279,7 +279,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L644">runtime.ts:644</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L644">runtime.ts:644</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -310,7 +310,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L621">runtime.ts:621</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L621">runtime.ts:621</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -332,7 +332,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L609">runtime.ts:609</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L609">runtime.ts:609</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/instance.html b/docs/api/typedoc/classes/instance.html
index 7bdb148..497b3f3 100644
--- a/docs/api/typedoc/classes/instance.html
+++ b/docs/api/typedoc/classes/instance.html
@@ -139,7 +139,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L692">runtime.ts:692</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L692">runtime.ts:692</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -202,7 +202,7 @@
 					<div class="tsd-signature tsd-kind-icon">exports<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">Function</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L684">runtime.ts:684</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L684">runtime.ts:684</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -212,7 +212,7 @@
 					<div class="tsd-signature tsd-kind-icon">memory<span class="tsd-signature-symbol">:</span> <a href="memory.html" class="tsd-signature-type">Memory</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L683">runtime.ts:683</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L683">runtime.ts:683</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -229,7 +229,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L932">runtime.ts:932</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L932">runtime.ts:932</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -260,7 +260,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L994">runtime.ts:994</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L994">runtime.ts:994</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -303,7 +303,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L924">runtime.ts:924</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L924">runtime.ts:924</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -341,7 +341,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L732">runtime.ts:732</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L732">runtime.ts:732</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -358,7 +358,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L952">runtime.ts:952</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L952">runtime.ts:952</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -402,7 +402,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L816">runtime.ts:816</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L816">runtime.ts:816</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -434,7 +434,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L1033">runtime.ts:1033</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L1033">runtime.ts:1033</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -465,7 +465,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L846">runtime.ts:846</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L846">runtime.ts:846</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -497,7 +497,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L750">runtime.ts:750</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L750">runtime.ts:750</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -520,7 +520,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L1013">runtime.ts:1013</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L1013">runtime.ts:1013</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -568,7 +568,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L789">runtime.ts:789</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L789">runtime.ts:789</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -608,7 +608,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L914">runtime.ts:914</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L914">runtime.ts:914</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -646,7 +646,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L1134">runtime.ts:1134</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L1134">runtime.ts:1134</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -698,7 +698,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L740">runtime.ts:740</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L740">runtime.ts:740</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -722,7 +722,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L868">runtime.ts:868</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L868">runtime.ts:868</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -754,7 +754,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L857">runtime.ts:857</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L857">runtime.ts:857</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -786,7 +786,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L940">runtime.ts:940</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L940">runtime.ts:940</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/memory.html b/docs/api/typedoc/classes/memory.html
index f6c15e9..e9af2e9 100644
--- a/docs/api/typedoc/classes/memory.html
+++ b/docs/api/typedoc/classes/memory.html
@@ -130,7 +130,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L40">memory.ts:40</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L40">memory.ts:40</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -152,7 +152,7 @@
 					<div class="tsd-signature tsd-kind-icon">memory<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Memory</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L32">memory.ts:32</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L32">memory.ts:32</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -162,7 +162,7 @@
 					<div class="tsd-signature tsd-kind-icon">wasm32<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = true</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L33">memory.ts:33</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L33">memory.ts:33</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -179,7 +179,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L154">memory.ts:154</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L154">memory.ts:154</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -210,7 +210,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L90">memory.ts:90</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L90">memory.ts:90</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -233,7 +233,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L97">memory.ts:97</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L97">memory.ts:97</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -256,7 +256,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L74">memory.ts:74</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L74">memory.ts:74</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -279,7 +279,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L81">memory.ts:81</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L81">memory.ts:81</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -302,7 +302,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L104">memory.ts:104</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L104">memory.ts:104</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -325,7 +325,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L132">memory.ts:132</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L132">memory.ts:132</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -362,7 +362,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L145">memory.ts:145</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L145">memory.ts:145</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -393,7 +393,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L60">memory.ts:60</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L60">memory.ts:60</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -416,7 +416,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L67">memory.ts:67</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L67">memory.ts:67</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -439,7 +439,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L53">memory.ts:53</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L53">memory.ts:53</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -462,7 +462,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L114">memory.ts:114</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L114">memory.ts:114</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -485,7 +485,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L124">memory.ts:124</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L124">memory.ts:124</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4>
@@ -502,7 +502,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/memory.ts#L175">memory.ts:175</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/memory.ts#L175">memory.ts:175</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/module.html b/docs/api/typedoc/classes/module.html
index 670305d..3aaf7cb 100644
--- a/docs/api/typedoc/classes/module.html
+++ b/docs/api/typedoc/classes/module.html
@@ -124,7 +124,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L504">runtime.ts:504</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L504">runtime.ts:504</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -170,7 +170,7 @@
 					<div class="tsd-signature tsd-kind-icon">handle<span class="tsd-signature-symbol">:</span> <a href="../index.html#pointer" class="tsd-signature-type">Pointer</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L502">runtime.ts:502</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L502">runtime.ts:502</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -187,7 +187,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L516">runtime.ts:516</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L516">runtime.ts:516</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -204,7 +204,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L530">runtime.ts:530</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L530">runtime.ts:530</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -236,7 +236,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L561">runtime.ts:561</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L561">runtime.ts:561</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/ndarray.html b/docs/api/typedoc/classes/ndarray.html
index 512b1a5..dfbb723 100644
--- a/docs/api/typedoc/classes/ndarray.html
+++ b/docs/api/typedoc/classes/ndarray.html
@@ -130,7 +130,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L304">runtime.ts:304</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L304">runtime.ts:304</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -158,7 +158,7 @@
 					<div class="tsd-signature tsd-kind-icon">device<span class="tsd-signature-symbol">:</span> <a href="dldevice.html" class="tsd-signature-type">DLDevice</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L297">runtime.ts:297</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L297">runtime.ts:297</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -173,7 +173,7 @@
 					<div class="tsd-signature tsd-kind-icon">dtype<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L293">runtime.ts:293</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L293">runtime.ts:293</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -188,7 +188,7 @@
 					<div class="tsd-signature tsd-kind-icon">handle<span class="tsd-signature-symbol">:</span> <a href="../index.html#pointer" class="tsd-signature-type">Pointer</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L289">runtime.ts:289</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L289">runtime.ts:289</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -203,7 +203,7 @@
 					<div class="tsd-signature tsd-kind-icon">ndim<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L291">runtime.ts:291</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L291">runtime.ts:291</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -218,7 +218,7 @@
 					<div class="tsd-signature tsd-kind-icon">shape<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L295">runtime.ts:295</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L295">runtime.ts:295</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -240,7 +240,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L370">runtime.ts:370</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L370">runtime.ts:370</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -273,7 +273,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L414">runtime.ts:414</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L414">runtime.ts:414</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -305,7 +305,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L355">runtime.ts:355</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L355">runtime.ts:355</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
@@ -322,7 +322,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L474">runtime.ts:474</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L474">runtime.ts:474</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -346,7 +346,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L443">runtime.ts:443</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L443">runtime.ts:443</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/packedfunccell.html b/docs/api/typedoc/classes/packedfunccell.html
index 57b6603..12809ca 100644
--- a/docs/api/typedoc/classes/packedfunccell.html
+++ b/docs/api/typedoc/classes/packedfunccell.html
@@ -122,7 +122,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L158">runtime.ts:158</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L158">runtime.ts:158</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -147,7 +147,7 @@
 					<div class="tsd-signature tsd-kind-icon">handle<span class="tsd-signature-symbol">:</span> <a href="../index.html#pointer" class="tsd-signature-type">Pointer</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L157">runtime.ts:157</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L157">runtime.ts:157</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -164,7 +164,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L165">runtime.ts:165</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L165">runtime.ts:165</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
diff --git a/docs/api/typedoc/classes/rpcserver.html b/docs/api/typedoc/classes/rpcserver.html
index 2bd20b7..a50d2fe 100644
--- a/docs/api/typedoc/classes/rpcserver.html
+++ b/docs/api/typedoc/classes/rpcserver.html
@@ -115,7 +115,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L92">rpc_server.ts:92</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L92">rpc_server.ts:92</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -176,7 +176,7 @@
 					<div class="tsd-signature tsd-kind-icon">get<wbr>Imports<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">unknown</span><span class="tsd-signat [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L82">rpc_server.ts:82</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L82">rpc_server.ts:82</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-type-declaration">
@@ -201,7 +201,7 @@
 					<div class="tsd-signature tsd-kind-icon">key<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L78">rpc_server.ts:78</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L78">rpc_server.ts:78</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -211,7 +211,7 @@
 					<div class="tsd-signature tsd-kind-icon">logger<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>msg<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L81">rpc_server.ts:81</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L81">rpc_server.ts:81</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-type-declaration">
@@ -242,7 +242,7 @@
 					<div class="tsd-signature tsd-kind-icon">socket<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">WebSocket</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L79">rpc_server.ts:79</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L79">rpc_server.ts:79</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -252,7 +252,7 @@
 					<div class="tsd-signature tsd-kind-icon">state<span class="tsd-signature-symbol">:</span> <a href="../enums/rpcserverstate.html" class="tsd-signature-type">RPCServerState</a><span class="tsd-signature-symbol"> = RPCServerState.InitHeader</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L80">rpc_server.ts:80</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L80">rpc_server.ts:80</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -262,7 +262,7 @@
 					<div class="tsd-signature tsd-kind-icon">url<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L77">rpc_server.ts:77</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L77">rpc_server.ts:77</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/classes/scalar.html b/docs/api/typedoc/classes/scalar.html
index a02b1c9..5402606 100644
--- a/docs/api/typedoc/classes/scalar.html
+++ b/docs/api/typedoc/classes/scalar.html
@@ -112,7 +112,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L145">runtime.ts:145</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L145">runtime.ts:145</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -137,7 +137,7 @@
 					<div class="tsd-signature tsd-kind-icon">dtype<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L145">runtime.ts:145</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L145">runtime.ts:145</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -152,7 +152,7 @@
 					<div class="tsd-signature tsd-kind-icon">value<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L143">runtime.ts:143</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L143">runtime.ts:143</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/classes/webgpucontext.html b/docs/api/typedoc/classes/webgpucontext.html
index 7492bcc..4945f51 100644
--- a/docs/api/typedoc/classes/webgpucontext.html
+++ b/docs/api/typedoc/classes/webgpucontext.html
@@ -120,7 +120,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L57">webgpu.ts:57</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L57">webgpu.ts:57</a></li>
 								</ul>
 							</aside>
 							<h4 class="tsd-parameters-title">Parameters</h4>
@@ -145,7 +145,7 @@
 					<div class="tsd-signature tsd-kind-icon">device<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">GPUDevice</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L50">webgpu.ts:50</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L50">webgpu.ts:50</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -155,7 +155,7 @@
 					<div class="tsd-signature tsd-kind-icon">memory<span class="tsd-signature-symbol">:</span> <a href="memory.html" class="tsd-signature-type">Memory</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L51">webgpu.ts:51</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L51">webgpu.ts:51</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -172,7 +172,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L84">webgpu.ts:84</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L84">webgpu.ts:84</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -209,7 +209,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L170">webgpu.ts:170</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L170">webgpu.ts:170</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -238,7 +238,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L67">webgpu.ts:67</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L67">webgpu.ts:67</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/enums/argtypecode.html b/docs/api/typedoc/enums/argtypecode.html
index daf473c..775f7bd 100644
--- a/docs/api/typedoc/enums/argtypecode.html
+++ b/docs/api/typedoc/enums/argtypecode.html
@@ -106,7 +106,7 @@
 					<div class="tsd-signature tsd-kind-icon">DLDevice<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 6</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L220">ctypes.ts:220</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L220">ctypes.ts:220</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -116,7 +116,7 @@
 					<div class="tsd-signature tsd-kind-icon">Float<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 2</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L216">ctypes.ts:216</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L216">ctypes.ts:216</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -126,7 +126,7 @@
 					<div class="tsd-signature tsd-kind-icon">Int<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 0</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L214">ctypes.ts:214</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L214">ctypes.ts:214</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -136,7 +136,7 @@
 					<div class="tsd-signature tsd-kind-icon">Null<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 4</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L218">ctypes.ts:218</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L218">ctypes.ts:218</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -146,7 +146,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMBytes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 12</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L226">ctypes.ts:226</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L226">ctypes.ts:226</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -156,7 +156,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMDLTensor<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 7</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L221">ctypes.ts:221</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L221">ctypes.ts:221</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -166,7 +166,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMData<wbr>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 5</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L219">ctypes.ts:219</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L219">ctypes.ts:219</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -176,7 +176,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMModule<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 9</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L223">ctypes.ts:223</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L223">ctypes.ts:223</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -186,7 +186,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMNDArray<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 13</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L227">ctypes.ts:227</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L227">ctypes.ts:227</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -196,7 +196,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMObject<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 8</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L222">ctypes.ts:222</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L222">ctypes.ts:222</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -206,7 +206,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMObjectRValue<wbr>Ref<wbr>Arg<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 14</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L228">ctypes.ts:228</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L228">ctypes.ts:228</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -216,7 +216,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMOpaque<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 3</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L217">ctypes.ts:217</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L217">ctypes.ts:217</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -226,7 +226,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMPacked<wbr>Func<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 10</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L224">ctypes.ts:224</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L224">ctypes.ts:224</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -236,7 +236,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMStr<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 11</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L225">ctypes.ts:225</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L225">ctypes.ts:225</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -246,7 +246,7 @@
 					<div class="tsd-signature tsd-kind-icon">UInt<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 1</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L215">ctypes.ts:215</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L215">ctypes.ts:215</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/enums/aynccallbackcode.html b/docs/api/typedoc/enums/aynccallbackcode.html
index 6a329d7..3cc76d1 100644
--- a/docs/api/typedoc/enums/aynccallbackcode.html
+++ b/docs/api/typedoc/enums/aynccallbackcode.html
@@ -93,7 +93,7 @@
 					<div class="tsd-signature tsd-kind-icon">k<wbr>Exception<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 5</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L676">runtime.ts:676</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L676">runtime.ts:676</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -103,7 +103,7 @@
 					<div class="tsd-signature tsd-kind-icon">k<wbr>Return<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 4</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L675">runtime.ts:675</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L675">runtime.ts:675</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/enums/dldatatypecode.html b/docs/api/typedoc/enums/dldatatypecode.html
index 9457f93..d7440f9 100644
--- a/docs/api/typedoc/enums/dldatatypecode.html
+++ b/docs/api/typedoc/enums/dldatatypecode.html
@@ -95,7 +95,7 @@
 					<div class="tsd-signature tsd-kind-icon">Float<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 2</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L242">runtime.ts:242</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L242">runtime.ts:242</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -105,7 +105,7 @@
 					<div class="tsd-signature tsd-kind-icon">Int<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 0</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L240">runtime.ts:240</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L240">runtime.ts:240</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -115,7 +115,7 @@
 					<div class="tsd-signature tsd-kind-icon">Opaque<wbr>Handle<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 3</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L243">runtime.ts:243</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L243">runtime.ts:243</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -125,7 +125,7 @@
 					<div class="tsd-signature tsd-kind-icon">UInt<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 1</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L241">runtime.ts:241</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L241">runtime.ts:241</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/enums/rpcserverstate.html b/docs/api/typedoc/enums/rpcserverstate.html
index 1c1c120..0b7f4a4 100644
--- a/docs/api/typedoc/enums/rpcserverstate.html
+++ b/docs/api/typedoc/enums/rpcserverstate.html
@@ -90,7 +90,7 @@
 					<div class="tsd-signature tsd-kind-icon">Init<wbr>Header<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L27">rpc_server.ts:27</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L27">rpc_server.ts:27</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -100,7 +100,7 @@
 					<div class="tsd-signature tsd-kind-icon">Init<wbr>Header<wbr>Key<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L28">rpc_server.ts:28</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L28">rpc_server.ts:28</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -110,7 +110,7 @@
 					<div class="tsd-signature tsd-kind-icon">Init<wbr>Server<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L29">rpc_server.ts:29</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L29">rpc_server.ts:29</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -120,7 +120,7 @@
 					<div class="tsd-signature tsd-kind-icon">Receive<wbr>Packet<wbr>Body<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L32">rpc_server.ts:32</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L32">rpc_server.ts:32</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -130,7 +130,7 @@
 					<div class="tsd-signature tsd-kind-icon">Receive<wbr>Packet<wbr>Header<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L31">rpc_server.ts:31</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L31">rpc_server.ts:31</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -140,7 +140,7 @@
 					<div class="tsd-signature tsd-kind-icon">Wait<wbr>For<wbr>Callback<span class="tsd-signature-symbol">:</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L30">rpc_server.ts:30</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L30">rpc_server.ts:30</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/enums/sizeof.html b/docs/api/typedoc/enums/sizeof.html
index bd1ca7d..e0f40c4 100644
--- a/docs/api/typedoc/enums/sizeof.html
+++ b/docs/api/typedoc/enums/sizeof.html
@@ -100,7 +100,7 @@
 					<div class="tsd-signature tsd-kind-icon">DLData<wbr>Type<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = I32</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L206">ctypes.ts:206</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L206">ctypes.ts:206</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -110,7 +110,7 @@
 					<div class="tsd-signature tsd-kind-icon">DLDevice<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = I32 + I32</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L207">ctypes.ts:207</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L207">ctypes.ts:207</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -120,7 +120,7 @@
 					<div class="tsd-signature tsd-kind-icon">F32<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 4</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L203">ctypes.ts:203</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L203">ctypes.ts:203</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -130,7 +130,7 @@
 					<div class="tsd-signature tsd-kind-icon">F64<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 8</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L204">ctypes.ts:204</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L204">ctypes.ts:204</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -140,7 +140,7 @@
 					<div class="tsd-signature tsd-kind-icon">I32<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 4</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L201">ctypes.ts:201</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L201">ctypes.ts:201</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -150,7 +150,7 @@
 					<div class="tsd-signature tsd-kind-icon">I64<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 8</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L202">ctypes.ts:202</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L202">ctypes.ts:202</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -160,7 +160,7 @@
 					<div class="tsd-signature tsd-kind-icon">TVMValue<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 8</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L205">ctypes.ts:205</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L205">ctypes.ts:205</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -170,7 +170,7 @@
 					<div class="tsd-signature tsd-kind-icon">U16<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 2</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L200">ctypes.ts:200</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L200">ctypes.ts:200</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -180,7 +180,7 @@
 					<div class="tsd-signature tsd-kind-icon">U8<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol"> = 1</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L199">ctypes.ts:199</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L199">ctypes.ts:199</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/index.html b/docs/api/typedoc/index.html
index 9db8022..59ae220 100644
--- a/docs/api/typedoc/index.html
+++ b/docs/api/typedoc/index.html
@@ -174,7 +174,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMArray<wbr>Alloc<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>shape<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, ndim<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, dtypeCode<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, dtypeBits<span class="tsd [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L112">ctypes.ts:112</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L112">ctypes.ts:112</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -238,7 +238,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMArray<wbr>Copy<wbr>From<wbr>Bytes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, data<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, nbytes<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">num [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L128">ctypes.ts:128</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L128">ctypes.ts:128</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -282,7 +282,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMArray<wbr>Copy<wbr>From<wbr>To<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>from<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, to<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, stream<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-sig [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L144">ctypes.ts:144</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L144">ctypes.ts:144</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -326,7 +326,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMArray<wbr>Copy<wbr>ToBytes<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, data<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, nbytes<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</sp [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L136">ctypes.ts:136</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L136">ctypes.ts:136</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -370,7 +370,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMArray<wbr>Free<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>handle<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L121">ctypes.ts:121</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L121">ctypes.ts:121</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -406,7 +406,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMBackend<wbr>PackedCFunc<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>argValues<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, argCodes<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, nargs<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number< [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L160">ctypes.ts:160</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L160">ctypes.ts:160</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -458,7 +458,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMCFunc<wbr>Set<wbr>Return<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>ret<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, value<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, typeCode<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signa [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L77">ctypes.ts:77</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L77">ctypes.ts:77</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -506,7 +506,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMCb<wbr>Arg<wbr>ToReturn<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>value<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, code<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span c [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L83">ctypes.ts:83</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L83">ctypes.ts:83</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -545,7 +545,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMFunc<wbr>Call<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>func<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, argValues<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, typeCode<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-t [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L67">ctypes.ts:67</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L67">ctypes.ts:67</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -601,7 +601,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMFunc<wbr>Free<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>func<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L57">ctypes.ts:57</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L57">ctypes.ts:57</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -637,7 +637,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMFunc<wbr>Get<wbr>Global<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, out<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span cla [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L100">ctypes.ts:100</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L100">ctypes.ts:100</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -676,7 +676,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMFunc<wbr>List<wbr>Global<wbr>Names<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>outSize<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, outArray<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&g [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L88">ctypes.ts:88</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L88">ctypes.ts:88</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -715,7 +715,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMFunc<wbr>Register<wbr>Global<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>name<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, f<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, override<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</spa [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L94">ctypes.ts:94</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L94">ctypes.ts:94</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -758,7 +758,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMGet<wbr>Last<wbr>Error<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L34">ctypes.ts:34</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L34">ctypes.ts:34</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -788,7 +788,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMMod<wbr>Free<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>mod<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L52">ctypes.ts:52</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L52">ctypes.ts:52</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -824,7 +824,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMMod<wbr>Get<wbr>Function<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>mod<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, funcName<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, queryImports<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">numbe [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L42">ctypes.ts:42</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L42">ctypes.ts:42</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -872,7 +872,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMMod<wbr>Import<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>mod<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, dep<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-si [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L48">ctypes.ts:48</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L48">ctypes.ts:48</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -912,7 +912,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMSynchronize<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>deviceType<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, deviceId<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, stream<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signatur [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L150">ctypes.ts:150</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L150">ctypes.ts:150</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -954,7 +954,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMWasm<wbr>Alloc<wbr>Space<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>size<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L167">ctypes.ts:167</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L167">ctypes.ts:167</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -990,7 +990,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMWasm<wbr>Free<wbr>Space<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>ptr<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L170">ctypes.ts:170</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L170">ctypes.ts:170</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1026,7 +1026,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMWasm<wbr>Func<wbr>Create<wbr>FromCFunc<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>resource<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, out<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&g [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L187">ctypes.ts:187</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L187">ctypes.ts:187</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1066,7 +1066,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMWasm<wbr>PackedCFunc<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>args<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, typeCodes<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a>, nargs<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L179">ctypes.ts:179</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L179">ctypes.ts:179</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1118,7 +1118,7 @@
 					<div class="tsd-signature tsd-kind-icon">FTVMWasm<wbr>PackedCFunc<wbr>Finalizer<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>resourceHandle<span class="tsd-signature-symbol">: </span><a href="index.html#pointer" class="tsd-signature-type">Pointer</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L193">ctypes.ts:193</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L193">ctypes.ts:193</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1154,7 +1154,7 @@
 					<div class="tsd-signature tsd-kind-icon">GPUPointer<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L25">webgpu.ts:25</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L25">webgpu.ts:25</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1169,7 +1169,7 @@
 					<div class="tsd-signature tsd-kind-icon">Packed<wbr>Func<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">...</span>args<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol"> &amp; </span><a href="interfaces/disp [...]
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L36">runtime.ts:36</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L36">runtime.ts:36</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1184,7 +1184,7 @@
 					<div class="tsd-signature tsd-kind-icon">Pointer<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L25">ctypes.ts:25</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L25">ctypes.ts:25</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1199,7 +1199,7 @@
 					<div class="tsd-signature tsd-kind-icon">Ptr<wbr>Offset<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/ctypes.ts#L28">ctypes.ts:28</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/ctypes.ts#L28">ctypes.ts:28</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1217,7 +1217,7 @@
 					<div class="tsd-signature tsd-kind-icon">RPC_<wbr>MAGIC<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">1045105</span><span class="tsd-signature-symbol"> = 1045105</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/rpc_server.ts#L36">rpc_server.ts:36</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/rpc_server.ts#L36">rpc_server.ts:36</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -1239,7 +1239,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/support.ts#L25">support.ts:25</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/support.ts#L25">support.ts:25</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1271,7 +1271,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/support.ts#L39">support.ts:39</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/support.ts#L39">support.ts:39</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1300,7 +1300,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/support.ts#L52">support.ts:52</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/support.ts#L52">support.ts:52</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1337,7 +1337,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/compact.ts#L38">compact.ts:38</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/compact.ts#L38">compact.ts:38</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1368,7 +1368,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L30">webgpu.ts:30</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L30">webgpu.ts:30</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1390,7 +1390,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/environment.ts#L32">environment.ts:32</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/environment.ts#L32">environment.ts:32</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1421,7 +1421,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/compact.ts#L24">compact.ts:24</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/compact.ts#L24">compact.ts:24</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1443,7 +1443,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L1356">runtime.ts:1356</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L1356">runtime.ts:1356</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1508,7 +1508,7 @@
 						<li class="tsd-description">
 							<aside class="tsd-sources">
 								<ul>
-									<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/support.ts#L62">support.ts:62</a></li>
+									<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/support.ts#L62">support.ts:62</a></li>
 								</ul>
 							</aside>
 							<div class="tsd-comment tsd-typography">
@@ -1530,7 +1530,7 @@
 					<div class="tsd-signature tsd-kind-icon">DLData<wbr>Type<wbr>Code<wbr>ToStr<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L246">runtime.ts:246</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L246">runtime.ts:246</a></li>
 						</ul>
 					</aside>
 					<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
@@ -1539,7 +1539,7 @@
 						<div class="tsd-signature tsd-kind-icon">0<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;int&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L247">runtime.ts:247</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L247">runtime.ts:247</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1549,7 +1549,7 @@
 						<div class="tsd-signature tsd-kind-icon">1<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;uint&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L248">runtime.ts:248</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L248">runtime.ts:248</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1559,7 +1559,7 @@
 						<div class="tsd-signature tsd-kind-icon">2<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;float&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L249">runtime.ts:249</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L249">runtime.ts:249</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1569,7 +1569,7 @@
 						<div class="tsd-signature tsd-kind-icon">3<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;handle&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L250">runtime.ts:250</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L250">runtime.ts:250</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1580,7 +1580,7 @@
 					<div class="tsd-signature tsd-kind-icon">Device<wbr>Enum<wbr>ToStr<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L175">runtime.ts:175</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L175">runtime.ts:175</a></li>
 						</ul>
 					</aside>
 					<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
@@ -1589,7 +1589,7 @@
 						<div class="tsd-signature tsd-kind-icon">1<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;cpu&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L176">runtime.ts:176</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L176">runtime.ts:176</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1599,7 +1599,7 @@
 						<div class="tsd-signature tsd-kind-icon">15<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;webgpu&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L180">runtime.ts:180</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L180">runtime.ts:180</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1609,7 +1609,7 @@
 						<div class="tsd-signature tsd-kind-icon">2<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;cuda&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L177">runtime.ts:177</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L177">runtime.ts:177</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1619,7 +1619,7 @@
 						<div class="tsd-signature tsd-kind-icon">4<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;opencl&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L178">runtime.ts:178</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L178">runtime.ts:178</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1629,7 +1629,7 @@
 						<div class="tsd-signature tsd-kind-icon">8<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> = &quot;metal&quot;</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L179">runtime.ts:179</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L179">runtime.ts:179</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1640,7 +1640,7 @@
 					<div class="tsd-signature tsd-kind-icon">Device<wbr>Str<wbr>ToEnum<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L183">runtime.ts:183</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L183">runtime.ts:183</a></li>
 						</ul>
 					</aside>
 					<section class="tsd-panel tsd-member tsd-kind-variable tsd-parent-kind-object-literal">
@@ -1649,7 +1649,7 @@
 						<div class="tsd-signature tsd-kind-icon">cl<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 4</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L186">runtime.ts:186</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L186">runtime.ts:186</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1659,7 +1659,7 @@
 						<div class="tsd-signature tsd-kind-icon">cpu<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 1</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L184">runtime.ts:184</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L184">runtime.ts:184</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1669,7 +1669,7 @@
 						<div class="tsd-signature tsd-kind-icon">cuda<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 2</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L185">runtime.ts:185</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L185">runtime.ts:185</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1679,7 +1679,7 @@
 						<div class="tsd-signature tsd-kind-icon">metal<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 8</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L189">runtime.ts:189</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L189">runtime.ts:189</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1689,7 +1689,7 @@
 						<div class="tsd-signature tsd-kind-icon">opencl<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 4</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L187">runtime.ts:187</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L187">runtime.ts:187</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1699,7 +1699,7 @@
 						<div class="tsd-signature tsd-kind-icon">vulkan<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 7</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L188">runtime.ts:188</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L188">runtime.ts:188</a></li>
 							</ul>
 						</aside>
 					</section>
@@ -1709,7 +1709,7 @@
 						<div class="tsd-signature tsd-kind-icon">webgpu<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 15</span></div>
 						<aside class="tsd-sources">
 							<ul>
-								<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/runtime.ts#L190">runtime.ts:190</a></li>
+								<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/runtime.ts#L190">runtime.ts:190</a></li>
 							</ul>
 						</aside>
 					</section>
diff --git a/docs/api/typedoc/interfaces/disposable.html b/docs/api/typedoc/interfaces/disposable.html
index b7bfdc8..c624bd7 100644
--- a/docs/api/typedoc/interfaces/disposable.html
+++ b/docs/api/typedoc/interfaces/disposable.html
@@ -113,7 +113,7 @@
 					<div class="tsd-signature tsd-kind-icon">dispose<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/types.ts#L52">types.ts:52</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/types.ts#L52">types.ts:52</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
diff --git a/docs/api/typedoc/interfaces/functioninfo.html b/docs/api/typedoc/interfaces/functioninfo.html
index 2c1beeb..268ec00 100644
--- a/docs/api/typedoc/interfaces/functioninfo.html
+++ b/docs/api/typedoc/interfaces/functioninfo.html
@@ -95,7 +95,7 @@
 					<div class="tsd-signature tsd-kind-icon">arg_<wbr>types<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L41">webgpu.ts:41</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L41">webgpu.ts:41</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -105,7 +105,7 @@
 					<div class="tsd-signature tsd-kind-icon">launch_<wbr>param_<wbr>tags<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L42">webgpu.ts:42</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L42">webgpu.ts:42</a></li>
 						</ul>
 					</aside>
 				</section>
@@ -115,7 +115,7 @@
 					<div class="tsd-signature tsd-kind-icon">name<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/webgpu.ts#L40">webgpu.ts:40</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/webgpu.ts#L40">webgpu.ts:40</a></li>
 						</ul>
 					</aside>
 				</section>
diff --git a/docs/api/typedoc/interfaces/libraryprovider.html b/docs/api/typedoc/interfaces/libraryprovider.html
index 6ab5682..01ba1b2 100644
--- a/docs/api/typedoc/interfaces/libraryprovider.html
+++ b/docs/api/typedoc/interfaces/libraryprovider.html
@@ -112,7 +112,7 @@
 					<div class="tsd-signature tsd-kind-icon">imports<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Record</span><span class="tsd-signature-symbol">&lt;</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">, </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">&gt;</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/types.ts#L34">types.ts:34</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/types.ts#L34">types.ts:34</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
@@ -127,7 +127,7 @@
 					<div class="tsd-signature tsd-kind-icon">start<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-symbol">(</span>inst<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">Instance</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol"> =&gt; </span><span class="tsd-signature-type">void</span></div>
 					<aside class="tsd-sources">
 						<ul>
-							<li>Defined in <a href="https://github.com/apache/tvm/blob/dc2f70e3c/web/src/types.ts#L39">types.ts:39</a></li>
+							<li>Defined in <a href="https://github.com/apache/tvm/blob/57386a2da/web/src/types.ts#L39">types.ts:39</a></li>
 						</ul>
 					</aside>
 					<div class="tsd-comment tsd-typography">
diff --git a/docs/contribute/code_guide.html b/docs/contribute/code_guide.html
index c8b2a4c..e2aebbe 100644
--- a/docs/contribute/code_guide.html
+++ b/docs/contribute/code_guide.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Code Guide and Tips &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Code Guide and Tips &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/code_review.html b/docs/contribute/code_review.html
index 4d337f4..7a85af6 100644
--- a/docs/contribute/code_review.html
+++ b/docs/contribute/code_review.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Perform Code Reviews &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Perform Code Reviews &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/committer_guide.html b/docs/contribute/committer_guide.html
index 5093274..05121ec 100644
--- a/docs/contribute/committer_guide.html
+++ b/docs/contribute/committer_guide.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Committer Guide &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Committer Guide &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/community.html b/docs/contribute/community.html
index c2ee70f..b3c3078 100644
--- a/docs/contribute/community.html
+++ b/docs/contribute/community.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>TVM Community Guideline &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>TVM Community Guideline &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/document.html b/docs/contribute/document.html
index 4306441..7564557 100644
--- a/docs/contribute/document.html
+++ b/docs/contribute/document.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Write Document and Tutorials &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Write Document and Tutorials &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/error_handling.html b/docs/contribute/error_handling.html
index 7a857cc..ceed046 100644
--- a/docs/contribute/error_handling.html
+++ b/docs/contribute/error_handling.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Error Handling Guide &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Error Handling Guide &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/git_howto.html b/docs/contribute/git_howto.html
index b1078c8..1471ffc 100644
--- a/docs/contribute/git_howto.html
+++ b/docs/contribute/git_howto.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Git Usage Tips &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Git Usage Tips &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/index.html b/docs/contribute/index.html
index 352924e..635b485 100644
--- a/docs/contribute/index.html
+++ b/docs/contribute/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Contribute to TVM &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Contribute to TVM &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/pull_request.html b/docs/contribute/pull_request.html
index bf4e48f..496034e 100644
--- a/docs/contribute/pull_request.html
+++ b/docs/contribute/pull_request.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Submit a Pull Request &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Submit a Pull Request &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/contribute/release_process.html b/docs/contribute/release_process.html
index 94ffbd8..9aa8773 100644
--- a/docs/contribute/release_process.html
+++ b/docs/contribute/release_process.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Apache TVM Release Process &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Apache TVM Release Process &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/android.html b/docs/deploy/android.html
index 689c4ee..a690000 100644
--- a/docs/deploy/android.html
+++ b/docs/deploy/android.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy to Android &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy to Android &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/arm_compute_lib.html b/docs/deploy/arm_compute_lib.html
index 44385f5..73aac05 100644
--- a/docs/deploy/arm_compute_lib.html
+++ b/docs/deploy/arm_compute_lib.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay Arm® Compute Library Integration &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay Arm® Compute Library Integration &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/bnns.html b/docs/deploy/bnns.html
index c7bcfb5..2067b63 100644
--- a/docs/deploy/bnns.html
+++ b/docs/deploy/bnns.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay BNNS Integration &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay BNNS Integration &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/cpp_deploy.html b/docs/deploy/cpp_deploy.html
index c2d4858..d556592 100644
--- a/docs/deploy/cpp_deploy.html
+++ b/docs/deploy/cpp_deploy.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy TVM Module using C++ API &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy TVM Module using C++ API &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/hls.html b/docs/deploy/hls.html
index 9ae376a..9d5228f 100644
--- a/docs/deploy/hls.html
+++ b/docs/deploy/hls.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>HLS Backend Example &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>HLS Backend Example &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/index.html b/docs/deploy/index.html
index 654cd81..685ed13 100644
--- a/docs/deploy/index.html
+++ b/docs/deploy/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy and Integration &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy and Integration &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/integrate.html b/docs/deploy/integrate.html
index e2b3e68..2e6a3a6 100644
--- a/docs/deploy/integrate.html
+++ b/docs/deploy/integrate.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Integrate TVM into Your Project &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Integrate TVM into Your Project &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/tensorrt.html b/docs/deploy/tensorrt.html
index 355a03a..6a4c834 100644
--- a/docs/deploy/tensorrt.html
+++ b/docs/deploy/tensorrt.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay TensorRT Integration &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay TensorRT Integration &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/deploy/vitis_ai.html b/docs/deploy/vitis_ai.html
index d3ece13..8bfbf2f 100644
--- a/docs/deploy/vitis_ai.html
+++ b/docs/deploy/vitis_ai.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Vitis-AI Integration &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Vitis-AI Integration &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/benchmark.html b/docs/dev/benchmark.html
index aae29d7..034863c 100644
--- a/docs/dev/benchmark.html
+++ b/docs/dev/benchmark.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Benchmark Performance Log Format &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Benchmark Performance Log Format &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/codebase_walkthrough.html b/docs/dev/codebase_walkthrough.html
index 6742e72..092236b 100644
--- a/docs/dev/codebase_walkthrough.html
+++ b/docs/dev/codebase_walkthrough.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>TVM Codebase Walkthrough by Example &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>TVM Codebase Walkthrough by Example &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/convert_layout.html b/docs/dev/convert_layout.html
index e402451..6dff864 100644
--- a/docs/dev/convert_layout.html
+++ b/docs/dev/convert_layout.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Convert Layout Pass &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Convert Layout Pass &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/debugger.html b/docs/dev/debugger.html
index 87cfc5b..71c26f5 100644
--- a/docs/dev/debugger.html
+++ b/docs/dev/debugger.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Debugger &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Debugger &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/device_target_interactions.html b/docs/dev/device_target_interactions.html
index 380c7da..a14208a 100644
--- a/docs/dev/device_target_interactions.html
+++ b/docs/dev/device_target_interactions.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Device/Target Interactions &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Device/Target Interactions &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/frontend/tensorflow.html b/docs/dev/frontend/tensorflow.html
index 493a212..f171c99 100644
--- a/docs/dev/frontend/tensorflow.html
+++ b/docs/dev/frontend/tensorflow.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>TensorFlow Frontend &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>TensorFlow Frontend &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/how_to.html b/docs/dev/how_to.html
index 483248a..4032a4d 100644
--- a/docs/dev/how_to.html
+++ b/docs/dev/how_to.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Developer How-To Guide &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Developer How-To Guide &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/hybrid_script.html b/docs/dev/hybrid_script.html
index c4e9561..7952275 100644
--- a/docs/dev/hybrid_script.html
+++ b/docs/dev/hybrid_script.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Hybrid Frontend Developer Guide &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Hybrid Frontend Developer Guide &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/index.html b/docs/dev/index.html
index e31cb98..bf89966 100644
--- a/docs/dev/index.html
+++ b/docs/dev/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Design and Architecture &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Design and Architecture &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/inferbound.html b/docs/dev/inferbound.html
index c03e979..b33d4f5 100644
--- a/docs/dev/inferbound.html
+++ b/docs/dev/inferbound.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>InferBound Pass &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>InferBound Pass &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/introduction_to_module_serialization.html b/docs/dev/introduction_to_module_serialization.html
index 67f4a4b..561ca9f 100644
--- a/docs/dev/introduction_to_module_serialization.html
+++ b/docs/dev/introduction_to_module_serialization.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Introduction to Module Serialization &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Introduction to Module Serialization &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/microtvm_design.html b/docs/dev/microtvm_design.html
index 9d22f36..9b8b240 100644
--- a/docs/dev/microtvm_design.html
+++ b/docs/dev/microtvm_design.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>microTVM Design Document &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>microTVM Design Document &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/model_library_format.html b/docs/dev/model_library_format.html
index 0944898..ab0a622 100644
--- a/docs/dev/model_library_format.html
+++ b/docs/dev/model_library_format.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Model Library Format &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Model Library Format &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/pass_infra.html b/docs/dev/pass_infra.html
index 9a07a99..42b8a4e 100644
--- a/docs/dev/pass_infra.html
+++ b/docs/dev/pass_infra.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Pass Infrastructure &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Pass Infrastructure &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/pytest_target_parametrization.html b/docs/dev/pytest_target_parametrization.html
index 5357f32..e58b284 100644
--- a/docs/dev/pytest_target_parametrization.html
+++ b/docs/dev/pytest_target_parametrization.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Python Target Parametrization &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Python Target Parametrization &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/relay_add_op.html b/docs/dev/relay_add_op.html
index b43b6f7..ef43962 100644
--- a/docs/dev/relay_add_op.html
+++ b/docs/dev/relay_add_op.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Adding an Operator to Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Adding an Operator to Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/relay_add_pass.html b/docs/dev/relay_add_pass.html
index cb54bbb..e69d668 100644
--- a/docs/dev/relay_add_pass.html
+++ b/docs/dev/relay_add_pass.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Adding a Compiler Pass to Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Adding a Compiler Pass to Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/relay_bring_your_own_codegen.html b/docs/dev/relay_bring_your_own_codegen.html
index c2890d7..a9038f4 100644
--- a/docs/dev/relay_bring_your_own_codegen.html
+++ b/docs/dev/relay_bring_your_own_codegen.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Bring Your Own Codegen To TVM &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Bring Your Own Codegen To TVM &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/relay_intro.html b/docs/dev/relay_intro.html
index 27d939f..d00690f 100644
--- a/docs/dev/relay_intro.html
+++ b/docs/dev/relay_intro.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Introduction to Relay IR &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Introduction to Relay IR &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/relay_op_strategy.html b/docs/dev/relay_op_strategy.html
index 2b717f4..b32027b 100644
--- a/docs/dev/relay_op_strategy.html
+++ b/docs/dev/relay_op_strategy.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay Operator Strategy &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay Operator Strategy &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/runtime.html b/docs/dev/runtime.html
index 89f69d1..8cfc2ff 100644
--- a/docs/dev/runtime.html
+++ b/docs/dev/runtime.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>TVM Runtime System &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>TVM Runtime System &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/runtimes/vulkan.html b/docs/dev/runtimes/vulkan.html
index 9f1387c..1ec24ed 100644
--- a/docs/dev/runtimes/vulkan.html
+++ b/docs/dev/runtimes/vulkan.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Vulkan Runtime &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Vulkan Runtime &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/security.html b/docs/dev/security.html
index 0ae4fdc..d4b948d 100644
--- a/docs/dev/security.html
+++ b/docs/dev/security.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Security Guide &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Security Guide &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/dev/virtual_machine.html b/docs/dev/virtual_machine.html
index 5a61044..26d36a4 100644
--- a/docs/dev/virtual_machine.html
+++ b/docs/dev/virtual_machine.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Putting the VM in TVM: The Relay Virtual Machine &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Putting the VM in TVM: The Relay Virtual Machine &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/errors.html b/docs/errors.html
index 4aa00a6..2234ae0 100644
--- a/docs/errors.html
+++ b/docs/errors.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>What do to when encountering TVM Errors &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>What do to when encountering TVM Errors &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/faq.html b/docs/faq.html
index bfac92f..16bd36b 100644
--- a/docs/faq.html
+++ b/docs/faq.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Frequently Asked Questions &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Frequently Asked Questions &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/genindex.html b/docs/genindex.html
index 19dfdb7..eff4a68 100644
--- a/docs/genindex.html
+++ b/docs/genindex.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Index &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Index &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -167,7 +167,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/index.html b/docs/index.html
index 8e56258..6e21539 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>TVM Documentation &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>TVM Documentation &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -168,7 +168,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/install/docker.html b/docs/install/docker.html
index 81fefd8..07fa245 100644
--- a/docs/install/docker.html
+++ b/docs/install/docker.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Docker Images &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Docker Images &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/install/from_source.html b/docs/install/from_source.html
index 879db2d..e94fef4 100644
--- a/docs/install/from_source.html
+++ b/docs/install/from_source.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Install from Source &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Install from Source &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/install/index.html b/docs/install/index.html
index f8853e2..cb756d0 100644
--- a/docs/install/index.html
+++ b/docs/install/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Installation &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Installation &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/install/nnpack.html b/docs/install/nnpack.html
index d9a466d..e110d29 100644
--- a/docs/install/nnpack.html
+++ b/docs/install/nnpack.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>NNPACK Contrib Installation &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>NNPACK Contrib Installation &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/hybrid_script.html b/docs/langref/hybrid_script.html
index 1d82d1b..3a52ef4 100644
--- a/docs/langref/hybrid_script.html
+++ b/docs/langref/hybrid_script.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Hybrid Frontend Language Reference &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Hybrid Frontend Language Reference &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/index.html b/docs/langref/index.html
index 4e6f835..dc68932 100644
--- a/docs/langref/index.html
+++ b/docs/langref/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Language Reference &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Language Reference &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/relay_adt.html b/docs/langref/relay_adt.html
index a497f2a..000e3a6 100644
--- a/docs/langref/relay_adt.html
+++ b/docs/langref/relay_adt.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Algebraic Data Types in Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Algebraic Data Types in Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/relay_expr.html b/docs/langref/relay_expr.html
index f442df8..793f7dd 100644
--- a/docs/langref/relay_expr.html
+++ b/docs/langref/relay_expr.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Expressions in Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Expressions in Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/relay_op.html b/docs/langref/relay_op.html
index 2c9180b..59d3c67 100644
--- a/docs/langref/relay_op.html
+++ b/docs/langref/relay_op.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay Core Tensor Operators &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay Core Tensor Operators &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/relay_pattern.html b/docs/langref/relay_pattern.html
index f265f7d..6f43e73 100644
--- a/docs/langref/relay_pattern.html
+++ b/docs/langref/relay_pattern.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Pattern Matching in Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Pattern Matching in Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/langref/relay_type.html b/docs/langref/relay_type.html
index 8260b5e..c085ee4 100644
--- a/docs/langref/relay_type.html
+++ b/docs/langref/relay_type.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Relay’s Type System &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Relay’s Type System &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/microtvm/index.html b/docs/microtvm/index.html
index cd96544..a3dba21 100644
--- a/docs/microtvm/index.html
+++ b/docs/microtvm/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>microTVM: TVM on bare-metal &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>microTVM: TVM on bare-metal &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/objects.inv b/docs/objects.inv
index e204561..741511b 100644
Binary files a/docs/objects.inv and b/docs/objects.inv differ
diff --git a/docs/profiling/index.html b/docs/profiling/index.html
index 5cbc2c5..89c43d4 100644
--- a/docs/profiling/index.html
+++ b/docs/profiling/index.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Profiling Deep Learning Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Profiling Deep Learning Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/profiling/papi.html b/docs/profiling/papi.html
index 75b6b51..047992a 100644
--- a/docs/profiling/papi.html
+++ b/docs/profiling/papi.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Getting Started With PAPI &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Getting Started With PAPI &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/py-modindex.html b/docs/py-modindex.html
index 7fcb4cb..35f2a42 100644
--- a/docs/py-modindex.html
+++ b/docs/py-modindex.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Python Module Index &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Python Module Index &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/search.html b/docs/search.html
index 69a7540..4aa7370 100644
--- a/docs/search.html
+++ b/docs/search.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Search &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Search &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/searchindex.js b/docs/searchindex.js
index b41db9e..022adf3 100644
--- a/docs/searchindex.js
+++ b/docs/searchindex.js
@@ -1 +1 @@
-Search.setIndex({docnames:["api/links","api/python/auto_scheduler","api/python/autotvm","api/python/contrib","api/python/driver","api/python/error","api/python/graph_executor","api/python/index","api/python/ir","api/python/micro","api/python/ndarray","api/python/relay/analysis","api/python/relay/backend","api/python/relay/dataflow_pattern","api/python/relay/frontend","api/python/relay/image","api/python/relay/index","api/python/relay/nn","api/python/relay/testing","api/python/relay/trans [...]
\ No newline at end of file
+Search.setIndex({docnames:["api/links","api/python/auto_scheduler","api/python/autotvm","api/python/contrib","api/python/driver","api/python/error","api/python/graph_executor","api/python/index","api/python/ir","api/python/micro","api/python/ndarray","api/python/relay/analysis","api/python/relay/backend","api/python/relay/dataflow_pattern","api/python/relay/frontend","api/python/relay/image","api/python/relay/index","api/python/relay/nn","api/python/relay/testing","api/python/relay/trans [...]
\ No newline at end of file
diff --git a/docs/tutorials/auto_scheduler/sg_execution_times.html b/docs/tutorials/auto_scheduler/sg_execution_times.html
index a9745fe..da3d6e2 100644
--- a/docs/tutorials/auto_scheduler/sg_execution_times.html
+++ b/docs/tutorials/auto_scheduler/sg_execution_times.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Computation times &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Computation times &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -167,7 +167,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -308,14 +308,14 @@
             
   <div class="section" id="computation-times">
 <span id="sphx-glr-tutorials-auto-scheduler-sg-execution-times"></span><h1>Computation times<a class="headerlink" href="#computation-times" title="Permalink to this headline">¶</a></h1>
-<p><strong>02:43.083</strong> total execution time for <strong>tutorials_auto_scheduler</strong> files:</p>
+<p><strong>04:07.859</strong> total execution time for <strong>tutorials_auto_scheduler</strong> files:</p>
 <ul class="simple">
-<li><p><strong>00:54.913</strong>: <a class="reference internal" href="tune_network_x86.html#sphx-glr-tutorials-auto-scheduler-tune-network-x86-py"><span class="std std-ref">Auto-scheduling a Neural Network for x86 CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_x86.py</span></code>)</p></li>
-<li><p><strong>00:51.988</strong>: <a class="reference internal" href="tune_conv2d_layer_cuda.html#sphx-glr-tutorials-auto-scheduler-tune-conv2d-layer-cuda-py"><span class="std std-ref">Auto-scheduling a Convolution Layer for GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_conv2d_layer_cuda.py</span></code>)</p></li>
-<li><p><strong>00:30.251</strong>: <a class="reference internal" href="tune_network_cuda.html#sphx-glr-tutorials-auto-scheduler-tune-network-cuda-py"><span class="std std-ref">Auto-scheduling a Neural Network for NVIDIA GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_cuda.py</span></code>)</p></li>
-<li><p><strong>00:10.337</strong>: <a class="reference internal" href="tune_sparse_x86.html#sphx-glr-tutorials-auto-scheduler-tune-sparse-x86-py"><span class="std std-ref">Auto-scheduling Sparse Matrix Multiplication on CPU with Custom Sketch Rule</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_sparse_x86.py</span></code>)</p></li>
-<li><p><strong>00:08.422</strong>: <a class="reference internal" href="tune_network_mali.html#sphx-glr-tutorials-auto-scheduler-tune-network-mali-py"><span class="std std-ref">Auto-scheduling a Neural Network for mali GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_mali.py</span></code>)</p></li>
-<li><p><strong>00:07.172</strong>: <a class="reference internal" href="tune_network_arm.html#sphx-glr-tutorials-auto-scheduler-tune-network-arm-py"><span class="std std-ref">Auto-scheduling a Neural Network for ARM CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_arm.py</span></code>)</p></li>
+<li><p><strong>02:12.551</strong>: <a class="reference internal" href="tune_conv2d_layer_cuda.html#sphx-glr-tutorials-auto-scheduler-tune-conv2d-layer-cuda-py"><span class="std std-ref">Auto-scheduling a Convolution Layer for GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_conv2d_layer_cuda.py</span></code>)</p></li>
+<li><p><strong>00:52.866</strong>: <a class="reference internal" href="tune_network_x86.html#sphx-glr-tutorials-auto-scheduler-tune-network-x86-py"><span class="std std-ref">Auto-scheduling a Neural Network for x86 CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_x86.py</span></code>)</p></li>
+<li><p><strong>00:30.958</strong>: <a class="reference internal" href="tune_network_cuda.html#sphx-glr-tutorials-auto-scheduler-tune-network-cuda-py"><span class="std std-ref">Auto-scheduling a Neural Network for NVIDIA GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_cuda.py</span></code>)</p></li>
+<li><p><strong>00:17.657</strong>: <a class="reference internal" href="tune_sparse_x86.html#sphx-glr-tutorials-auto-scheduler-tune-sparse-x86-py"><span class="std std-ref">Auto-scheduling Sparse Matrix Multiplication on CPU with Custom Sketch Rule</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_sparse_x86.py</span></code>)</p></li>
+<li><p><strong>00:07.020</strong>: <a class="reference internal" href="tune_network_mali.html#sphx-glr-tutorials-auto-scheduler-tune-network-mali-py"><span class="std std-ref">Auto-scheduling a Neural Network for mali GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_mali.py</span></code>)</p></li>
+<li><p><strong>00:06.806</strong>: <a class="reference internal" href="tune_network_arm.html#sphx-glr-tutorials-auto-scheduler-tune-network-arm-py"><span class="std std-ref">Auto-scheduling a Neural Network for ARM CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_network_arm.py</span></code>)</p></li>
 </ul>
 </div>
 
diff --git a/docs/tutorials/auto_scheduler/tune_conv2d_layer_cuda.html b/docs/tutorials/auto_scheduler/tune_conv2d_layer_cuda.html
index c9a961a..d027c85 100644
--- a/docs/tutorials/auto_scheduler/tune_conv2d_layer_cuda.html
+++ b/docs/tutorials/auto_scheduler/tune_conv2d_layer_cuda.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling a Convolution Layer for GPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling a Convolution Layer for GPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -971,7 +971,7 @@ primfn(data_1: handle, kernel_1: handle, bias_1: handle, compute_1: handle) -&gt
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 0.275 ms
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 0.353 ms
 </pre></div>
 </div>
 </div>
@@ -1536,6 +1536,7 @@ In the example below we resume the status and do more 5 trials.</p>
 Get devices for measurement successfully!
 </pre></div>
 </div>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 2 minutes  12.551 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-auto-scheduler-tune-conv2d-layer-cuda-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/678f3c372a599a18d909aed0fefb30be/tune_conv2d_layer_cuda.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">tune_conv2d_layer_cuda.py</span></code></a></p>
diff --git a/docs/tutorials/auto_scheduler/tune_network_arm.html b/docs/tutorials/auto_scheduler/tune_network_arm.html
index c6109f1..caa71ff 100644
--- a/docs/tutorials/auto_scheduler/tune_network_arm.html
+++ b/docs/tutorials/auto_scheduler/tune_network_arm.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling a Neural Network for ARM CPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling a Neural Network for ARM CPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -567,14 +567,14 @@ The task scheduler will just optimize this objective.</p>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Get model...
 Extract tasks...
-========== Task 0  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, [1, 1024], [1000, 1024], [1, 1000], [1, 1000]]) ==========
+========== Task 0  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, 1, 1024, 1000, 1024, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1024]
 placeholder = PLACEHOLDER [1000, 1024]
 T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
 placeholder = PLACEHOLDER [1, 1000]
 T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-========== Task 1  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 28, 28, 128], [1, 1, 128, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 1  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 28, 28, 128, 1, 1, 128, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 256]
@@ -583,7 +583,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 2  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 28, 28, 256], [1, 1, 256, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 2  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 28, 28, 256, 1, 1, 256, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 256]
@@ -592,7 +592,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 3  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 3  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -601,7 +601,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 4  (workload key: [&quot;98418eda02701ddd175ad50e364a0638&quot;, [1, 224, 224, 3], [3, 3, 3, 32], [1, 112, 1, 1], [1, 112, 1, 1], [1, 112, 112, 32]]) ==========
+========== Task 4  (workload key: [&quot;98418eda02701ddd175ad50e364a0638&quot;, 1, 224, 224, 3, 3, 3, 3, 32, 1, 112, 1, 1, 1, 112, 1, 1, 1, 112, 112, 32]) ==========
 placeholder = PLACEHOLDER [1, 224, 224, 3]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 225)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 225)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 3, 32]
@@ -612,7 +612,7 @@ placeholder = PLACEHOLDER [1, 112, 1, 1]
 T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, 0, 0])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 5  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 5  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -621,7 +621,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 6  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 14, 14, 512], [1, 1, 512, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 6  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 14, 14, 512, 1, 1, 512, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 512]
@@ -630,7 +630,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 7  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 7  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -639,7 +639,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 8  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 7, 7, 1024], [1, 1, 1024, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 8  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 7, 7, 1024, 1, 1, 1024, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 1024, 1024]
@@ -648,7 +648,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 128], [1, 1, 128, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 128, 1, 1, 128, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 128]
@@ -657,7 +657,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 10  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 10  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -666,7 +666,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 11  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 11  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -675,12 +675,12 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 12  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, [1, 7, 7, 1024], [1, 1, 1, 1024]]) ==========
+========== Task 12  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, 1, 7, 7, 1024, 1, 1, 1, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
 tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-========== Task 13  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 7, 7, 512], [1, 1, 512, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 13  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 7, 7, 512, 1, 1, 512, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 1024]
@@ -689,7 +689,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 14  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 14, 14, 256], [1, 1, 256, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 14  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 14, 14, 256, 1, 1, 256, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -698,7 +698,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 15  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 15  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -707,7 +707,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 16  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 7, 7, 1024], [3, 3, 1024, 1], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 16  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 7, 7, 1024, 3, 3, 1024, 1, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 1024, 1]
@@ -716,7 +716,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 17  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 64], [1, 1, 64, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 17  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 64, 1, 1, 64, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 128]
@@ -725,7 +725,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 18  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 112, 112, 64], [3, 3, 64, 1], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 18  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 112, 112, 64, 3, 3, 64, 1, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 64]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 113)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 64, 1]
@@ -734,14 +734,14 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 19  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, [1, 1000], [1, 1000]]) ==========
+========== Task 19  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1000]
 T_softmax_maxelem(i0) max= placeholder[i0, k]
 T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
 T_softmax_expsum(i0) += T_softmax_exp[i0, k]
 T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-========== Task 20  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 112, 112, 32], [3, 3, 32, 1], [1, 1, 1, 32], [1, 112, 112, 32]]) ==========
+========== Task 20  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 112, 112, 32, 3, 3, 32, 1, 1, 1, 1, 32, 1, 112, 112, 32]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 32]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 113)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 32, 1]
@@ -750,7 +750,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 32]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 112, 112, 32], [1, 1, 32, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 112, 112, 32, 1, 1, 32, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 32]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 32, 64]
diff --git a/docs/tutorials/auto_scheduler/tune_network_cuda.html b/docs/tutorials/auto_scheduler/tune_network_cuda.html
index cadb619..4489ca4 100644
--- a/docs/tutorials/auto_scheduler/tune_network_cuda.html
+++ b/docs/tutorials/auto_scheduler/tune_network_cuda.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling a Neural Network for NVIDIA GPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling a Neural Network for NVIDIA GPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -465,7 +465,7 @@ The task scheduler will just optimize this objective.</p>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Extract tasks...
-========== Task 0  (workload key: [&quot;d374e472bd9d8164892b9e28a0a8cb59&quot;, [1, 14, 14, 256], [4, 4, 256, 256], [1, 14, 14, 256], [1, 14, 14, 256]]) ==========
+========== Task 0  (workload key: [&quot;d374e472bd9d8164892b9e28a0a8cb59&quot;, 1, 14, 14, 256, 4, 4, 256, 256, 1, 14, 14, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -479,14 +479,14 @@ conv2d_winograd(n, h, w, co) = inverse[floormod(h, 2), floormod(w, 2), ((((n*7)*
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 1  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, [1, 1000], [1, 1000]]) ==========
+========== Task 1  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1000]
 T_softmax_maxelem(i0) max= placeholder[i0, k]
 T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
 T_softmax_expsum(i0) += T_softmax_exp[i0, k]
 T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-========== Task 2  (workload key: [&quot;64b98c71af70a904fdbb81d7d4188d84&quot;, [1, 112, 112, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 2  (workload key: [&quot;64b98c71af70a904fdbb81d7d4188d84&quot;, 1, 112, 112, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 64]
 pad_temp(ax0, ax1, ax2, ax3) = tir.if_then_else(((((ax1 &gt;= 1) &amp;&amp; (ax1 &lt; 113)) &amp;&amp; (ax2 &gt;= 1)) &amp;&amp; (ax2 &lt; 113)), placeholder[ax0, (ax1 - 1), (ax2 - 1), ax3], -3.40282e+38f)
 tensor(ax0, ax1, ax2, ax3) max= pad_temp[ax0, ((ax1*2) + rv0), ((ax2*2) + rv1), ax3]
@@ -494,13 +494,13 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 3  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 56, 56, 64], [1, 1, 64, 128], [1, 28, 28, 128]]) ==========
+========== Task 3  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 56, 56, 64, 1, 1, 64, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 128]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 4  (workload key: [&quot;c4500b4e2fd04e695c32d2f31bbdc14a&quot;, [1, 28, 28, 128], [4, 4, 128, 128], [1, 28, 28, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 4  (workload key: [&quot;c4500b4e2fd04e695c32d2f31bbdc14a&quot;, 1, 28, 28, 128, 4, 4, 128, 128, 1, 28, 28, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -517,13 +517,13 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 5  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 28, 28, 128], [1, 1, 128, 256], [1, 14, 14, 256]]) ==========
+========== Task 5  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 28, 28, 128, 1, 1, 128, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 256]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 6  (workload key: [&quot;e4cdf917b876dbdd64488c3818d9c141&quot;, [1, 28, 28, 128], [4, 4, 128, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 6  (workload key: [&quot;e4cdf917b876dbdd64488c3818d9c141&quot;, 1, 28, 28, 128, 4, 4, 128, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -538,7 +538,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 7  (workload key: [&quot;dac19035dd5fe9424ee8617421b9c817&quot;, [1, 28, 28, 128], [4, 4, 128, 128], [1, 28, 28, 128], [1, 28, 28, 128]]) ==========
+========== Task 7  (workload key: [&quot;dac19035dd5fe9424ee8617421b9c817&quot;, 1, 28, 28, 128, 4, 4, 128, 128, 1, 28, 28, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*2) + eps), ((floormod(p, 14)*2) + nu), ci]
@@ -552,7 +552,7 @@ conv2d_winograd(n, h, w, co) = inverse[floormod(h, 2), floormod(w, 2), ((((n*14)
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 8  (workload key: [&quot;3ea73fb9b0364374730d09e068821f95&quot;, [1, 56, 56, 64], [6, 6, 64, 64], [1, 56, 56, 64], [1, 56, 56, 64]]) ==========
+========== Task 8  (workload key: [&quot;3ea73fb9b0364374730d09e068821f95&quot;, 1, 56, 56, 64, 6, 6, 64, 64, 1, 56, 56, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -566,7 +566,7 @@ conv2d_winograd(n, h, w, co) = inverse[floormod(h, 4), floormod(w, 4), ((((n*14)
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 9  (workload key: [&quot;d730bcd28f0920f6b97245e2a11bd8d6&quot;, [1, 7, 7, 512], [4, 4, 512, 512], [1, 7, 7, 512], [1, 7, 7, 512]]) ==========
+========== Task 9  (workload key: [&quot;d730bcd28f0920f6b97245e2a11bd8d6&quot;, 1, 7, 7, 512, 4, 4, 512, 512, 1, 7, 7, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -580,7 +580,7 @@ conv2d_winograd(n, h, w, co) = inverse[floormod(h, 2), floormod(w, 2), ((((n*4)*
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 10  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, [1, 14, 14, 256], [3, 3, 256, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 10  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, 1, 14, 14, 256, 3, 3, 256, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 256, 512]
@@ -589,7 +589,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 11  (workload key: [&quot;1e3c4211ffd2f2db91078ae4d04b779d&quot;, [1, 56, 56, 64], [6, 6, 64, 64], [1, 56, 56, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 11  (workload key: [&quot;1e3c4211ffd2f2db91078ae4d04b779d&quot;, 1, 56, 56, 64, 6, 6, 64, 64, 1, 56, 56, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -606,12 +606,12 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 12  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, [1, 7, 7, 512], [1, 1, 1, 512]]) ==========
+========== Task 12  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, 1, 7, 7, 512, 1, 1, 1, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
 tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-========== Task 13  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, [1, 56, 56, 64], [3, 3, 64, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 13  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, 1, 56, 56, 64, 3, 3, 64, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 64, 128]
@@ -620,7 +620,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 14  (workload key: [&quot;f3b6c10fcc6ce01ff01add933e4d21e9&quot;, [1, 14, 14, 256], [4, 4, 256, 256], [1, 14, 14, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 14  (workload key: [&quot;f3b6c10fcc6ce01ff01add933e4d21e9&quot;, 1, 14, 14, 256, 4, 4, 256, 256, 1, 14, 14, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -637,7 +637,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 15  (workload key: [&quot;b8b52b9be9df6102466a22a014c44c1f&quot;, [1, 14, 14, 256], [4, 4, 256, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 15  (workload key: [&quot;b8b52b9be9df6102466a22a014c44c1f&quot;, 1, 14, 14, 256, 4, 4, 256, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*2) + eps), ((floormod(p, 7)*2) + nu), ci]
@@ -652,7 +652,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 16  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, [1, 28, 28, 128], [3, 3, 128, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 16  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, 1, 28, 28, 128, 3, 3, 128, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 128, 256]
@@ -661,7 +661,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 17  (workload key: [&quot;ad6cecbf5d85cb1cda3c2bb7af170211&quot;, [1, 7, 7, 512], [4, 4, 512, 512], [1, 7, 7, 512], [1, 1, 1, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 17  (workload key: [&quot;ad6cecbf5d85cb1cda3c2bb7af170211&quot;, 1, 7, 7, 512, 4, 4, 512, 512, 1, 7, 7, 512, 1, 1, 1, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -680,7 +680,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 18  (workload key: [&quot;3a69f9fbc63760d99e36b4c17b3bfc57&quot;, [1, 7, 7, 512], [4, 4, 512, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 18  (workload key: [&quot;3a69f9fbc63760d99e36b4c17b3bfc57&quot;, 1, 7, 7, 512, 4, 4, 512, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*2) + eps), ((floormod(p, 4)*2) + nu), ci]
@@ -695,7 +695,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 19  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, [1, 224, 224, 3], [7, 7, 3, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+========== Task 19  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, 1, 224, 224, 3, 7, 7, 3, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
 placeholder = PLACEHOLDER [1, 224, 224, 3]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 3) &amp;&amp; (i1 &lt; 227)) &amp;&amp; (i2 &gt;= 3)) &amp;&amp; (i2 &lt; 227)), placeholder[i0, (i1 - 3), (i2 - 3), i3], 0f)
 placeholder = PLACEHOLDER [7, 7, 3, 64]
@@ -704,20 +704,20 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 20  (workload key: [&quot;7006235cfc29b73be524cf390ed5a977&quot;, [1, 56, 56, 64], [1, 1, 64, 64], [1, 56, 56, 64]]) ==========
+========== Task 20  (workload key: [&quot;7006235cfc29b73be524cf390ed5a977&quot;, 1, 56, 56, 64, 1, 1, 64, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 64]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 21  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, [1, 512], [1000, 512], [1, 1000], [1, 1000]]) ==========
+========== Task 21  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, 1, 512, 1000, 512, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 512]
 placeholder = PLACEHOLDER [1000, 512]
 T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
 placeholder = PLACEHOLDER [1, 1000]
 T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-========== Task 22  (workload key: [&quot;b818b53148cd450f86569dfc3e04cb8a&quot;, [1, 56, 56, 64], [6, 6, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 22  (workload key: [&quot;b818b53148cd450f86569dfc3e04cb8a&quot;, 1, 56, 56, 64, 6, 6, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 196), ((floormod(floordiv(p, 14), 14)*4) + eps), ((floormod(p, 14)*4) + nu), ci]
@@ -732,7 +732,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 23  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 14, 14, 256], [1, 1, 256, 512], [1, 7, 7, 512]]) ==========
+========== Task 23  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 14, 14, 256, 1, 1, 256, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -868,7 +868,7 @@ so we can read the log file and load the best schedules.</p>
 Evaluate inference time cost...
 Execution time summary:
  mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)
-   1.6973       1.6973       1.6973       1.6972       0.0000
+   3.1068       3.1042       3.1168       3.0995       0.0073
 </pre></div>
 </div>
 </div>
diff --git a/docs/tutorials/auto_scheduler/tune_network_mali.html b/docs/tutorials/auto_scheduler/tune_network_mali.html
index 729ed3b..0e38eca 100644
--- a/docs/tutorials/auto_scheduler/tune_network_mali.html
+++ b/docs/tutorials/auto_scheduler/tune_network_mali.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling a Neural Network for mali GPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling a Neural Network for mali GPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -480,14 +480,14 @@ The task scheduler will just optimize this objective.</p>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Extract tasks...
-========== Task 0  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, [1, 1024], [1000, 1024], [1, 1000], [1, 1000]]) ==========
+========== Task 0  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, 1, 1024, 1000, 1024, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1024]
 placeholder = PLACEHOLDER [1000, 1024]
 T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
 placeholder = PLACEHOLDER [1, 1000]
 T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-========== Task 1  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 28, 28, 128], [1, 1, 128, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 1  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 28, 28, 128, 1, 1, 128, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 256]
@@ -496,7 +496,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 2  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 28, 28, 256], [1, 1, 256, 256], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 2  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 28, 28, 256, 1, 1, 256, 256, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 256]
@@ -505,7 +505,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 3  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 3  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -514,7 +514,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 4  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 14, 14, 512], [1, 1, 512, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 4  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 14, 14, 512, 1, 1, 512, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 512]
@@ -523,7 +523,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 5  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 5  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -532,7 +532,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 6  (workload key: [&quot;98418eda02701ddd175ad50e364a0638&quot;, [1, 224, 224, 3], [3, 3, 3, 32], [1, 112, 1, 1], [1, 112, 1, 1], [1, 112, 112, 32]]) ==========
+========== Task 6  (workload key: [&quot;98418eda02701ddd175ad50e364a0638&quot;, 1, 224, 224, 3, 3, 3, 3, 32, 1, 112, 1, 1, 1, 112, 1, 1, 1, 112, 112, 32]) ==========
 placeholder = PLACEHOLDER [1, 224, 224, 3]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 225)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 225)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 3, 32]
@@ -543,7 +543,7 @@ placeholder = PLACEHOLDER [1, 112, 1, 1]
 T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, 0, 0])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 7  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 28, 28, 256]]) ==========
+========== Task 7  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 28, 28, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -552,7 +552,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 8  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 7, 7, 1024], [1, 1, 1024, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 8  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 7, 7, 1024, 1, 1, 1024, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 1024, 1024]
@@ -561,7 +561,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 128], [1, 1, 128, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 128, 1, 1, 128, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 128]
@@ -570,7 +570,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 10  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 56, 56, 128], [3, 3, 128, 1], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 10  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 56, 56, 128, 3, 3, 128, 1, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 128]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 128, 1]
@@ -579,7 +579,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 11  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 28, 28, 256], [3, 3, 256, 1], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 11  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 28, 28, 256, 3, 3, 256, 1, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 256]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 256, 1]
@@ -588,7 +588,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 12  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 14, 14, 512], [3, 3, 512, 1], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 12  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 14, 14, 512, 3, 3, 512, 1, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 512]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 512, 1]
@@ -597,7 +597,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 13  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 14, 14, 256], [1, 1, 256, 512], [1, 1, 1, 512], [1, 14, 14, 512]]) ==========
+========== Task 13  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 14, 14, 256, 1, 1, 256, 512, 1, 1, 1, 512, 1, 14, 14, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 512]
@@ -606,12 +606,12 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 14  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, [1, 7, 7, 1024], [1, 1, 1, 1024]]) ==========
+========== Task 14  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, 1, 7, 7, 1024, 1, 1, 1, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
 tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-========== Task 15  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 7, 7, 512], [1, 1, 512, 1024], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 15  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 7, 7, 512, 1, 1, 512, 1024, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 1024]
@@ -620,7 +620,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 16  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 7, 7, 1024], [3, 3, 1024, 1], [1, 1, 1, 1024], [1, 7, 7, 1024]]) ==========
+========== Task 16  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 7, 7, 1024, 3, 3, 1024, 1, 1, 1, 1, 1024, 1, 7, 7, 1024]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 1024]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 1024, 1]
@@ -629,7 +629,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 17  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 64], [1, 1, 64, 128], [1, 1, 1, 128], [1, 56, 56, 128]]) ==========
+========== Task 17  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 64, 1, 1, 64, 128, 1, 1, 1, 128, 1, 56, 56, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 128]
@@ -638,7 +638,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 18  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, [1, 112, 112, 64], [3, 3, 64, 1], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 18  (workload key: [&quot;c87ba68bc180312f5716af09a77ca15b&quot;, 1, 112, 112, 64, 3, 3, 64, 1, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 64]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 113)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 64, 1]
@@ -647,14 +647,14 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 19  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, [1, 1000], [1, 1000]]) ==========
+========== Task 19  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1000]
 T_softmax_maxelem(i0) max= placeholder[i0, k]
 T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
 T_softmax_expsum(i0) += T_softmax_exp[i0, k]
 T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-========== Task 20  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, [1, 112, 112, 32], [3, 3, 32, 1], [1, 1, 1, 32], [1, 112, 112, 32]]) ==========
+========== Task 20  (workload key: [&quot;06fce76bd84cb904eee50b905ca9449a&quot;, 1, 112, 112, 32, 3, 3, 32, 1, 1, 1, 1, 32, 1, 112, 112, 32]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 32]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 113)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 113)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 32, 1]
@@ -663,7 +663,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 32]
 T_add(ax0, ax1, ax2, ax3) = (DepthwiseConv2d[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 112, 112, 32], [1, 1, 32, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 112, 112, 32, 1, 1, 32, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 32]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 32, 64]
diff --git a/docs/tutorials/auto_scheduler/tune_network_x86.html b/docs/tutorials/auto_scheduler/tune_network_x86.html
index 5832ae7..cc172ec 100644
--- a/docs/tutorials/auto_scheduler/tune_network_x86.html
+++ b/docs/tutorials/auto_scheduler/tune_network_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling a Neural Network for x86 CPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling a Neural Network for x86 CPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -488,13 +488,13 @@ The task scheduler will just optimize this objective.</p>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Get model...
 Extract tasks...
-========== Task 0  (workload key: [&quot;7006235cfc29b73be524cf390ed5a977&quot;, [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256]]) ==========
+========== Task 0  (workload key: [&quot;7006235cfc29b73be524cf390ed5a977&quot;, 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 256]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 1  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, [1, 28, 28, 128], [1, 1, 128, 512], [1, 28, 28, 512], [1, 1, 1, 512], [1, 28, 28, 512]]) ==========
+========== Task 1  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, 1, 28, 28, 128, 1, 1, 128, 512, 1, 28, 28, 512, 1, 1, 1, 512, 1, 28, 28, 512]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 512]
@@ -505,7 +505,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 2  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, [1, 224, 224, 3], [7, 7, 3, 64], [1, 1, 1, 64], [1, 112, 112, 64]]) ==========
+========== Task 2  (workload key: [&quot;12b88bedece6984af589a28b43e0f3c4&quot;, 1, 224, 224, 3, 7, 7, 3, 64, 1, 1, 1, 64, 1, 112, 112, 64]) ==========
 placeholder = PLACEHOLDER [1, 224, 224, 3]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 3) &amp;&amp; (i1 &lt; 227)) &amp;&amp; (i2 &gt;= 3)) &amp;&amp; (i2 &lt; 227)), placeholder[i0, (i1 - 3), (i2 - 3), i3], 0f)
 placeholder = PLACEHOLDER [7, 7, 3, 64]
@@ -514,7 +514,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 3  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, [1, 28, 28, 128], [1, 1, 128, 512], [1, 28, 28, 512], [1, 28, 28, 512]]) ==========
+========== Task 3  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, 1, 28, 28, 128, 1, 1, 128, 512, 1, 28, 28, 512, 1, 28, 28, 512]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 128, 512]
@@ -522,7 +522,7 @@ Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*place
 placeholder = PLACEHOLDER [1, 28, 28, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 4  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 256], [1, 1, 256, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 4  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 256, 1, 1, 256, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 64]
@@ -531,7 +531,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 5  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 28, 28, 512], [1, 1, 512, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 5  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 28, 28, 512, 1, 1, 512, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 128]
@@ -540,7 +540,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 6  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, [1, 28, 28, 512], [1, 1, 512, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 6  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, 1, 28, 28, 512, 1, 1, 512, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 256]
@@ -549,13 +549,13 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 7  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 56, 56, 256], [1, 1, 256, 512], [1, 28, 28, 512]]) ==========
+========== Task 7  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 56, 56, 256, 1, 1, 256, 512, 1, 28, 28, 512]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 512]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 8  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, [1, 14, 14, 256], [1, 1, 256, 1024], [1, 14, 14, 1024], [1, 14, 14, 1024]]) ==========
+========== Task 8  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, 1, 14, 14, 256, 1, 1, 256, 1024, 1, 14, 14, 1024, 1, 14, 14, 1024]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 1024]
@@ -563,7 +563,7 @@ Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*place
 placeholder = PLACEHOLDER [1, 14, 14, 1024]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 56, 56, 64], [1, 1, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 9  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 56, 56, 64, 1, 1, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 64]
@@ -572,13 +572,13 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 10  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 28, 28, 512], [1, 1, 512, 1024], [1, 14, 14, 1024]]) ==========
+========== Task 10  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 28, 28, 512, 1, 1, 512, 1024, 1, 14, 14, 1024]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 1024]
 Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, ((yy*2) + ry), ((xx*2) + rx), rc]*placeholder[ry, rx, rc, ff])
 
-========== Task 11  (workload key: [&quot;2350d19dc42a0665244368384c66b3a5&quot;, [1, 7, 7, 512], [3, 3, 512, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 11  (workload key: [&quot;2350d19dc42a0665244368384c66b3a5&quot;, 1, 7, 7, 512, 3, 3, 512, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 8)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 8)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 512, 512]
@@ -587,7 +587,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 12  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256], [1, 1, 1, 256], [1, 56, 56, 256]]) ==========
+========== Task 12  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256, 1, 1, 1, 256, 1, 56, 56, 256]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 256]
@@ -598,7 +598,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 13  (workload key: [&quot;2350d19dc42a0665244368384c66b3a5&quot;, [1, 56, 56, 64], [3, 3, 64, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 13  (workload key: [&quot;2350d19dc42a0665244368384c66b3a5&quot;, 1, 56, 56, 64, 3, 3, 64, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 57)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 57)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 placeholder = PLACEHOLDER [3, 3, 64, 64]
@@ -607,7 +607,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 14  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 14, 14, 1024], [1, 1, 1024, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 14  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 14, 14, 1024, 1, 1, 1024, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 1024]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 1024, 256]
@@ -616,12 +616,12 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 15  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, [1, 7, 7, 2048], [1, 1, 1, 2048]]) ==========
+========== Task 15  (workload key: [&quot;69115f188984ae34ede37c3b8ca40b43&quot;, 1, 7, 7, 2048, 1, 1, 1, 2048]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 2048]
 tensor(ax0, ax1, ax2, ax3) += placeholder[ax0, ((ax1*7) + rv0), ((ax2*7) + rv1), ax3]
 tensor(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3]/(float32((select((bool)1, ((ax1 + 1)*7), (((ax1 + 1)*7) + 1)) - (ax1*7)))*float32((select((bool)1, ((ax2 + 1)*7), (((ax2 + 1)*7) + 1)) - (ax2*7)))))
 
-========== Task 16  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, [1, 56, 56, 64], [1, 1, 64, 256], [1, 56, 56, 256], [1, 56, 56, 256]]) ==========
+========== Task 16  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, 1, 56, 56, 64, 1, 1, 64, 256, 1, 56, 56, 256, 1, 56, 56, 256]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 64]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 64, 256]
@@ -629,7 +629,7 @@ Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*place
 placeholder = PLACEHOLDER [1, 56, 56, 256]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 17  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, [1, 56, 56, 256], [1, 1, 256, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 17  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, 1, 56, 56, 256, 1, 1, 256, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 56, 56, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 128]
@@ -638,7 +638,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 18  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, [1, 14, 14, 1024], [1, 1, 1024, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 18  (workload key: [&quot;de7d1695278cf52778b038e6573d7626&quot;, 1, 14, 14, 1024, 1, 1, 1024, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 1024]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 1024, 512]
@@ -647,7 +647,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 19  (workload key: [&quot;ecec634b4882c5731f86cce3109db636&quot;, [1, 28, 28, 128], [6, 6, 128, 128], [1, 1, 1, 128], [1, 28, 28, 128]]) ==========
+========== Task 19  (workload key: [&quot;ecec634b4882c5731f86cce3109db636&quot;, 1, 28, 28, 128, 6, 6, 128, 128, 1, 1, 1, 128, 1, 28, 28, 128]) ==========
 placeholder = PLACEHOLDER [1, 28, 28, 128]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 29)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 29)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 49), ((floormod(floordiv(p, 7), 7)*4) + eps), ((floormod(p, 7)*4) + nu), ci]
@@ -662,7 +662,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 128]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 20  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, [1, 7, 7, 512], [1, 1, 512, 2048], [1, 7, 7, 2048], [1, 7, 7, 2048]]) ==========
+========== Task 20  (workload key: [&quot;1cc666833c122282e3fcf3595901b12b&quot;, 1, 7, 7, 512, 1, 1, 512, 2048, 1, 7, 7, 2048, 1, 7, 7, 2048]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 2048]
@@ -670,7 +670,7 @@ Conv2dOutput(nn, yy, xx, ff) += (PaddedInput[nn, (yy + ry), (xx + rx), rc]*place
 placeholder = PLACEHOLDER [1, 7, 7, 2048]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, ax1, ax2, ax3])
 
-========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, [1, 7, 7, 2048], [1, 1, 2048, 512], [1, 1, 1, 512], [1, 7, 7, 512]]) ==========
+========== Task 21  (workload key: [&quot;6b7583cf23c7c37d3212cad9d06e58c1&quot;, 1, 7, 7, 2048, 1, 1, 2048, 512, 1, 1, 1, 512, 1, 7, 7, 512]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 2048]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 2048, 512]
@@ -679,7 +679,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 512]
 T_add(ax0, ax1, ax2, ax3) = (Conv2dOutput[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 22  (workload key: [&quot;875556d12d0be2269206a7775d5296a6&quot;, [1, 7, 7, 512], [1, 1, 512, 2048], [1, 7, 7, 2048], [1, 1, 1, 2048], [1, 1, 1, 2048], [1, 7, 7, 2048]]) ==========
+========== Task 22  (workload key: [&quot;875556d12d0be2269206a7775d5296a6&quot;, 1, 7, 7, 512, 1, 1, 512, 2048, 1, 7, 7, 2048, 1, 1, 1, 2048, 1, 1, 1, 2048, 1, 7, 7, 2048]) ==========
 placeholder = PLACEHOLDER [1, 7, 7, 512]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 512, 2048]
@@ -692,7 +692,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 2048]
 T_add(ax0, ax1, ax2, ax3) = (T_multiply[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 23  (workload key: [&quot;c68f92478eb18145106184c587d212b6&quot;, [1, 14, 14, 256], [6, 6, 256, 256], [1, 1, 1, 256], [1, 14, 14, 256]]) ==========
+========== Task 23  (workload key: [&quot;c68f92478eb18145106184c587d212b6&quot;, 1, 14, 14, 256, 6, 6, 256, 256, 1, 1, 1, 256, 1, 14, 14, 256]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 data_pad(i0, i1, i2, i3) = tir.if_then_else(((((i1 &gt;= 1) &amp;&amp; (i1 &lt; 15)) &amp;&amp; (i2 &gt;= 1)) &amp;&amp; (i2 &lt; 15)), placeholder[i0, (i1 - 1), (i2 - 1), i3], 0f)
 input_tile(eps, nu, p, ci) = data_pad[floordiv(p, 16), ((floormod(floordiv(p, 4), 4)*4) + eps), ((floormod(p, 4)*4) + nu), ci]
@@ -707,21 +707,21 @@ placeholder = PLACEHOLDER [1, 1, 1, 256]
 T_add(ax0, ax1, ax2, ax3) = (conv2d_winograd[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 24  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, [1, 2048], [1000, 2048], [1, 1000], [1, 1000]]) ==========
+========== Task 24  (workload key: [&quot;7d44c6e3c81cd80f61ff2265b2bae89a&quot;, 1, 2048, 1000, 2048, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 2048]
 placeholder = PLACEHOLDER [1000, 2048]
 T_matmul_NT(i, j) += (placeholder[i, k]*placeholder[j, k])
 placeholder = PLACEHOLDER [1, 1000]
 T_add(ax0, ax1) = (T_matmul_NT[ax0, ax1] + placeholder[ax0, ax1])
 
-========== Task 25  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, [1, 1000], [1, 1000]]) ==========
+========== Task 25  (workload key: [&quot;d7b65649a4dd54becea0a52aabbc5af5&quot;, 1, 1000, 1, 1000]) ==========
 placeholder = PLACEHOLDER [1, 1000]
 T_softmax_maxelem(i0) max= placeholder[i0, k]
 T_softmax_exp(i0, i1) = tir.exp((placeholder[i0, i1] - T_softmax_maxelem[i0]))
 T_softmax_expsum(i0) += T_softmax_exp[i0, k]
 T_softmax_norm(i0, i1) = (T_softmax_exp[i0, i1]/T_softmax_expsum[i0])
 
-========== Task 26  (workload key: [&quot;64b98c71af70a904fdbb81d7d4188d84&quot;, [1, 112, 112, 64], [1, 1, 1, 64], [1, 56, 56, 64]]) ==========
+========== Task 26  (workload key: [&quot;64b98c71af70a904fdbb81d7d4188d84&quot;, 1, 112, 112, 64, 1, 1, 1, 64, 1, 56, 56, 64]) ==========
 placeholder = PLACEHOLDER [1, 112, 112, 64]
 pad_temp(ax0, ax1, ax2, ax3) = tir.if_then_else(((((ax1 &gt;= 1) &amp;&amp; (ax1 &lt; 113)) &amp;&amp; (ax2 &gt;= 1)) &amp;&amp; (ax2 &lt; 113)), placeholder[ax0, (ax1 - 1), (ax2 - 1), ax3], -3.40282e+38f)
 tensor(ax0, ax1, ax2, ax3) max= pad_temp[ax0, ((ax1*2) + rv0), ((ax2*2) + rv1), ax3]
@@ -729,7 +729,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 64]
 T_add(ax0, ax1, ax2, ax3) = (tensor[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 27  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, [1, 14, 14, 256], [1, 1, 256, 1024], [1, 14, 14, 1024], [1, 1, 1, 1024], [1, 14, 14, 1024]]) ==========
+========== Task 27  (workload key: [&quot;1b524af89dd867d26059e1f621cf987c&quot;, 1, 14, 14, 256, 1, 1, 256, 1024, 1, 14, 14, 1024, 1, 1, 1, 1024, 1, 14, 14, 1024]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 256]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 256, 1024]
@@ -740,7 +740,7 @@ placeholder = PLACEHOLDER [1, 1, 1, 1024]
 T_add(ax0, ax1, ax2, ax3) = (T_add[ax0, ax1, ax2, ax3] + placeholder[ax0, 0, 0, ax3])
 T_relu(ax0, ax1, ax2, ax3) = max(T_add[ax0, ax1, ax2, ax3], 0f)
 
-========== Task 28  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, [1, 14, 14, 1024], [1, 1, 1024, 2048], [1, 7, 7, 2048]]) ==========
+========== Task 28  (workload key: [&quot;f4380bb1dc62422a69ad4a1a9771f927&quot;, 1, 14, 14, 1024, 1, 1, 1024, 2048, 1, 7, 7, 2048]) ==========
 placeholder = PLACEHOLDER [1, 14, 14, 1024]
 PaddedInput(i0, i1, i2, i3) = placeholder[i0, i1, i2, i3]
 placeholder = PLACEHOLDER [1, 1, 1024, 2048]
@@ -887,7 +887,7 @@ so we can read the log file and load the best schedules.</p>
 Evaluate inference time cost...
 Execution time summary:
  mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)
-  561.6463     561.3978     563.6430     559.8980      1.5390
+  552.8841     552.2991     554.2759     552.0773      0.9883
 </pre></div>
 </div>
 </div>
diff --git a/docs/tutorials/auto_scheduler/tune_sparse_x86.html b/docs/tutorials/auto_scheduler/tune_sparse_x86.html
index 1462151..0509a01 100644
--- a/docs/tutorials/auto_scheduler/tune_sparse_x86.html
+++ b/docs/tutorials/auto_scheduler/tune_sparse_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-scheduling Sparse Matrix Multiplication on CPU with Custom Sketch Rule &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-scheduling Sparse Matrix Multiplication on CPU with Custom Sketch Rule &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -586,26 +586,32 @@ layout transformation, parallelization, vectorization, unrolling, and operator f
 primfn(placeholder_5: handle, placeholder_6: handle, placeholder_7: handle, placeholder_8: handle, placeholder_9: handle, compute_1: handle) -&gt; ()
   attr = {&quot;from_legacy_te_schedule&quot;: True, &quot;global_symbol&quot;: &quot;main&quot;, &quot;tir.noalias&quot;: True}
   buffers = {compute: Buffer(compute_2: Pointer(float32), float32, [128, 512], []),
-             placeholder_4: Buffer(placeholder_10: Pointer(float32), float32, [128, 256], []),
-             placeholder_3: Buffer(placeholder_11: Pointer(float32), float32, [128, 512], []),
-             placeholder_2: Buffer(placeholder_12: Pointer(int32), int32, [33], []),
-             placeholder: Buffer(placeholder_13: Pointer(float32), float32, [4916, 16, 1], []),
-             placeholder_1: Buffer(placeholder_14: Pointer(int32), int32, [4916], [])}
-  buffer_map = {placeholder_6: placeholder, placeholder_7: placeholder_1, placeholder_8: placeholder_2, placeholder_9: placeholder_3, placeholder_5: placeholder_4, compute_1: compute} {
-  for (i0.outer.i1.outer.fused: int32, 0, 32) &quot;parallel&quot; {
-    allocate(compute_3: Pointer(global float32), float32, [2048]), storage_scope = global {
-      for (i.outer.inner: int32, 0, 128) {
-        for (j.init: int32, 0, 16) {
-          compute_3[((i.outer.inner*16) + j.init)] = 0f32
+             placeholder_2: Buffer(placeholder_10: Pointer(int32), int32, [4916], []),
+             placeholder: Buffer(placeholder_11: Pointer(float32), float32, [128, 512], []),
+             placeholder_4: Buffer(placeholder_12: Pointer(float32), float32, [4916, 16, 1], []),
+             placeholder_3: Buffer(placeholder_13: Pointer(int32), int32, [33], []),
+             placeholder_1: Buffer(placeholder_14: Pointer(float32), float32, [128, 256], [])}
+  buffer_map = {placeholder_9: placeholder, placeholder_5: placeholder_1, placeholder_7: placeholder_2, placeholder_8: placeholder_3, compute_1: compute, placeholder_6: placeholder_4} {
+  for (i0.outer.i1.outer.fused: int32, 0, 512) &quot;parallel&quot; {
+    allocate(compute_3: Pointer(global float32), float32, [128]), storage_scope = global {
+      for (i.outer.inner: int32, 0, 2) {
+        for (i.inner.init: int32, 0, 4) {
+          for (j.init: int32, 0, 16) {
+            compute_3[(((i.outer.inner*64) + (i.inner.init*16)) + j.init)] = 0f32
+          }
         }
-        for (elem_idx: int32, 0, ((int32*)placeholder_12[(i0.outer.i1.outer.fused + 1)] - (int32*)placeholder_12[i0.outer.i1.outer.fused])) {
-          for (j: int32, 0, 16) {
-            compute_3[((i.outer.inner*16) + j)] = ((float32*)compute_3[((i.outer.inner*16) + j)] + ((float32*)placeholder_13[((((int32*)placeholder_12[i0.outer.i1.outer.fused]*16) + (elem_idx*16)) + j)]*max((float32*)placeholder_10[((i.outer.inner*256) + (int32*)placeholder_14[((int32*)placeholder_12[i0.outer.i1.outer.fused] + elem_idx)])], 0f32)))
+        for (elem_idx: int32, 0, ((int32*)placeholder_13[(floormod(i0.outer.i1.outer.fused, 32) + 1)] - (int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)])) {
+          for (i.inner: int32, 0, 4) {
+            for (j: int32, 0, 16) {
+              compute_3[(((i.outer.inner*64) + (i.inner*16)) + j)] = ((float32*)compute_3[(((i.outer.inner*64) + (i.inner*16)) + j)] + ((float32*)placeholder_12[((((int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)]*16) + (elem_idx*16)) + j)]*max((float32*)placeholder_14[((((floordiv(i0.outer.i1.outer.fused, 32)*2048) + (i.outer.inner*1024)) + (i.inner*256)) + (int32*)placeholder_10[((int32*)placeholder_13[floormod(i0.outer.i1.outer.fused, 32)] + elem_idx)])], 0f32)))
+            }
           }
         }
       }
-      for (i0.inner: int32, 0, 128) {
-        compute_2[ramp(((i0.inner*512) + (i0.outer.i1.outer.fused*16)), 1, 16)] = max(((float32x16*)compute_3[ramp((i0.inner*16), 1, 16)] + (float32x16*)placeholder_11[ramp(((i0.inner*512) + (i0.outer.i1.outer.fused*16)), 1, 16)]), broadcast(0f32, 16))
+      for (i0.inner: int32, 0, 8) {
+        for (i1.inner: int32, 0, 16) {
+          compute_2[((((floordiv(i0.outer.i1.outer.fused, 32)*4096) + (i0.inner*512)) + (floormod(i0.outer.i1.outer.fused, 32)*16)) + i1.inner)] = max(((float32*)compute_3[((i0.inner*16) + i1.inner)] + (float32*)placeholder_11[((((floordiv(i0.outer.i1.outer.fused, 32)*4096) + (i0.inner*512)) + (floormod(i0.outer.i1.outer.fused, 32)*16)) + i1.inner)]), 0f32)
+        }
       }
     }
   }
@@ -644,7 +650,7 @@ primfn(placeholder_5: handle, placeholder_6: handle, placeholder_7: handle, plac
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 1.277 ms
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 1.368 ms
 </pre></div>
 </div>
 <div class="admonition note">
diff --git a/docs/tutorials/autotvm/sg_execution_times.html b/docs/tutorials/autotvm/sg_execution_times.html
index 98243f8..0083102 100644
--- a/docs/tutorials/autotvm/sg_execution_times.html
+++ b/docs/tutorials/autotvm/sg_execution_times.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Computation times &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Computation times &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -167,7 +167,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -308,13 +308,13 @@
             
   <div class="section" id="computation-times">
 <span id="sphx-glr-tutorials-autotvm-sg-execution-times"></span><h1>Computation times<a class="headerlink" href="#computation-times" title="Permalink to this headline">¶</a></h1>
-<p><strong>00:39.245</strong> total execution time for <strong>tutorials_autotvm</strong> files:</p>
+<p><strong>00:39.734</strong> total execution time for <strong>tutorials_autotvm</strong> files:</p>
 <ul class="simple">
-<li><p><strong>00:38.648</strong>: <a class="reference internal" href="tune_conv2d_cuda.html#sphx-glr-tutorials-autotvm-tune-conv2d-cuda-py"><span class="std std-ref">Tuning High Performance Convolution on NVIDIA GPUs</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_conv2d_cuda.py</span></code>)</p></li>
-<li><p><strong>00:00.156</strong>: <a class="reference internal" href="tune_relay_x86.html#sphx-glr-tutorials-autotvm-tune-relay-x86-py"><span class="std std-ref">Auto-tuning a Convolutional Network for x86 CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_x86.py</span></code>)</p></li>
-<li><p><strong>00:00.148</strong>: <a class="reference internal" href="tune_relay_arm.html#sphx-glr-tutorials-autotvm-tune-relay-arm-py"><span class="std std-ref">Auto-tuning a Convolutional Network for ARM CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_arm.py</span></code>)</p></li>
-<li><p><strong>00:00.146</strong>: <a class="reference internal" href="tune_relay_mobile_gpu.html#sphx-glr-tutorials-autotvm-tune-relay-mobile-gpu-py"><span class="std std-ref">Auto-tuning a Convolutional Network for Mobile GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_mobile_gpu.py</span></code>)</p></li>
-<li><p><strong>00:00.146</strong>: <a class="reference internal" href="tune_relay_cuda.html#sphx-glr-tutorials-autotvm-tune-relay-cuda-py"><span class="std std-ref">Auto-tuning a Convolutional Network for NVIDIA GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_cuda.py</span></code>)</p></li>
+<li><p><strong>00:39.040</strong>: <a class="reference internal" href="tune_conv2d_cuda.html#sphx-glr-tutorials-autotvm-tune-conv2d-cuda-py"><span class="std std-ref">Tuning High Performance Convolution on NVIDIA GPUs</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_conv2d_cuda.py</span></code>)</p></li>
+<li><p><strong>00:00.181</strong>: <a class="reference internal" href="tune_relay_x86.html#sphx-glr-tutorials-autotvm-tune-relay-x86-py"><span class="std std-ref">Auto-tuning a Convolutional Network for x86 CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_x86.py</span></code>)</p></li>
+<li><p><strong>00:00.172</strong>: <a class="reference internal" href="tune_relay_cuda.html#sphx-glr-tutorials-autotvm-tune-relay-cuda-py"><span class="std std-ref">Auto-tuning a Convolutional Network for NVIDIA GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_cuda.py</span></code>)</p></li>
+<li><p><strong>00:00.171</strong>: <a class="reference internal" href="tune_relay_mobile_gpu.html#sphx-glr-tutorials-autotvm-tune-relay-mobile-gpu-py"><span class="std std-ref">Auto-tuning a Convolutional Network for Mobile GPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_mobile_gpu.py</span></code>)</p></li>
+<li><p><strong>00:00.170</strong>: <a class="reference internal" href="tune_relay_arm.html#sphx-glr-tutorials-autotvm-tune-relay-arm-py"><span class="std std-ref">Auto-tuning a Convolutional Network for ARM CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">tune_relay_arm.py</span></code>)</p></li>
 </ul>
 </div>
 
diff --git a/docs/tutorials/autotvm/tune_conv2d_cuda.html b/docs/tutorials/autotvm/tune_conv2d_cuda.html
index b0f9f5a..b8f5bf5 100644
--- a/docs/tutorials/autotvm/tune_conv2d_cuda.html
+++ b/docs/tutorials/autotvm/tune_conv2d_cuda.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Tuning High Performance Convolution on NVIDIA GPUs &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Tuning High Performance Convolution on NVIDIA GPUs &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -517,26 +517,26 @@ for this template</p>
    7 unroll_explicit: OtherOption([0, 1]) len=2
 )
 Get devices for measurement successfully!
-No: 1   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 2   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 3   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 4   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 5   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 6   GFLOPS: 201.58/201.58   result: MeasureResult(costs=(0.001148416731958763,), error_no=MeasureErrorNo.NO_ERROR, all_cost=1.6018972396850586, timestamp=1631673064.161226)        [(&#39;tile_f&#39;, [-1, 1, 1, 1]), (&#39;tile_y&#39;, [-1, 1, 1, 1]), (&#39;tile_x&#39;, [-1, 1, 7, 1]), (&#39;tile_rc&#39;, [-1, 4, 4]), (&#39;tile_ry&#39;, [-1, 3, 1]), (&#39;tile_rx&#39;, [-1, 1, 1]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 0)],None,3754080
-No: 7   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 8   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 9   GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 10  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(TimeoutError(),), error_no=MeasureErrorNo.BUILD_TIMEOUT, all_cost=10, timestamp=1631673060.8658895)        [(&#39;tile_f&#39;, [-1, 32, 2, 4]), (&#39;tile_y&#39;, [-1, 1, 7, 1]), (&#39;tile_x&#39;, [-1, 1, 1, 7]), (&#39;tile_rc&#39;, [-1, 4, 2]), (&#39;tile_ry&#39;, [-1, 1, 1]), (&#39;tile_rx&#39;, [-1, 1, 3]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 0)],None,4691833
-No: 11  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 12  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 13  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 14  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 15  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 16  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 17  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 18  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::T [...]
-No: 19  GFLOPS: 0.00/201.58     result: MeasureResult(costs=(RuntimeError(&#39;Traceback (most recent call last):\n  11: TVMFuncCall\n        at /home/areusch/ws/tvm4/src/runtime/c_runtime_api.cc:474\n  10: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /home/areusch/ws/tvm4/include/tvm/runtime/packed_func.h:1151\n  9: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, [...]
-No: 20  GFLOPS: 280.06/280.06   result: MeasureResult(costs=(0.0008266168206896552,), error_no=MeasureErrorNo.NO_ERROR, all_cost=1.2443122863769531, timestamp=1631673072.5713875)      [(&#39;tile_f&#39;, [-1, 1, 4, 1]), (&#39;tile_y&#39;, [-1, 1, 1, 1]), (&#39;tile_x&#39;, [-1, 7, 1, 1]), (&#39;tile_rc&#39;, [-1, 4, 1]), (&#39;tile_ry&#39;, [-1, 1, 1]), (&#39;tile_rx&#39;, [-1, 1, 3]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 1)],None,9881539
+No: 1   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 2   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 3   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 4   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 5   GFLOPS: 0.00/0.00       result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 6   GFLOPS: 89.05/89.05     result: MeasureResult(costs=(0.0025997949565217393,), error_no=0, all_cost=2.115823268890381, timestamp=1630092140.2873092)     [(&#39;tile_f&#39;, [-1, 1, 1, 1]), (&#39;tile_y&#39;, [-1, 1, 1, 1]), (&#39;tile_x&#39;, [-1, 1, 7, 1]), (&#39;tile_rc&#39;, [-1, 4, 4]), (&#39;tile_ry&#39;, [-1, 3, 1]), (&#39;tile_rx&#39;, [-1, 1, 1]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 0)],None,3754080
+No: 7   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 8   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 9   GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 10  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(TimeoutError(),), error_no=6, all_cost=10, timestamp=1630092151.3702137)   [(&#39;tile_f&#39;, [-1, 32, 2, 4]), (&#39;tile_y&#39;, [-1, 1, 7, 1]), (&#39;tile_x&#39;, [-1, 1, 1, 7]), (&#39;tile_rc&#39;, [-1, 4, 2]), (&#39;tile_ry&#39;, [-1, 1, 1]), (&#39;tile_rx&#39;, [-1, 1, 3]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 0)],None,4691833
+No: 11  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 12  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 13  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 14  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 15  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 16  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 17  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 18  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(InstantiationError(&#39;Traceback (most recent call last):\n  24: TVMFuncCall\n        at /workspace/src/runtime/c_runtime_api.cc:474\n  23: tvm::runtime::PackedFunc::CallPacked(tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*) const\n        at /workspace/include/tvm/runtime/packed_func.h:1151\n  22: std::function&lt;void (tvm::runtime::TVMArgs, tvm::runtime::TVMRetValue*)&gt;::operator()(tvm::runtime::TVMArgs, tvm::runtime:: [...]
+No: 19  GFLOPS: 0.00/89.05      result: MeasureResult(costs=(RuntimeError(&#39;Traceback (most recent call last):\n  99: 0x00000000005099ff\n  98: 0x0000000000507cd3\n  97: _PyEval_EvalFrameDefault\n  96: 0x000000000050a3fc\n  95: 0x00000000005096c7\n  94: _PyEval_EvalFrameDefault\n  93: 0x000000000050a3fc\n  92: 0x00000000005096c7\n  91: _PyEval_EvalFrameDefault\n  90: 0x000000000050a3fc\n  89: 0x00000000005096c7\n  88: _PyEval_EvalFrameDefault\n  87: 0x000000000050a532\n  86: _PyObject [...]
+No: 20  GFLOPS: 144.01/144.01   result: MeasureResult(costs=(0.0016075873015873017,), error_no=0, all_cost=1.4732651710510254, timestamp=1630092163.9221466)    [(&#39;tile_f&#39;, [-1, 1, 4, 1]), (&#39;tile_y&#39;, [-1, 1, 1, 1]), (&#39;tile_x&#39;, [-1, 7, 1, 1]), (&#39;tile_rc&#39;, [-1, 4, 1]), (&#39;tile_ry&#39;, [-1, 1, 1]), (&#39;tile_rx&#39;, [-1, 1, 3]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 1)],None,9881539
 </pre></div>
 </div>
 <p>Finally we can inspect the best config from log file, check correctness,
@@ -575,7 +575,7 @@ and measure running time.</p>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Best config:
 [(&#39;tile_f&#39;, [-1, 1, 4, 1]), (&#39;tile_y&#39;, [-1, 1, 1, 1]), (&#39;tile_x&#39;, [-1, 7, 1, 1]), (&#39;tile_rc&#39;, [-1, 4, 1]), (&#39;tile_ry&#39;, [-1, 1, 1]), (&#39;tile_rx&#39;, [-1, 1, 3]), (&#39;auto_unroll_max_step&#39;, 1500), (&#39;unroll_explicit&#39;, 1)],None,9881539
-Time cost of this operator: 0.000934
+Time cost of this operator: 0.002075
 </pre></div>
 </div>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-autotvm-tune-conv2d-cuda-py">
diff --git a/docs/tutorials/autotvm/tune_relay_arm.html b/docs/tutorials/autotvm/tune_relay_arm.html
index ed4a307..1b7996d 100644
--- a/docs/tutorials/autotvm/tune_relay_arm.html
+++ b/docs/tutorials/autotvm/tune_relay_arm.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-tuning a Convolutional Network for ARM CPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-tuning a Convolutional Network for ARM CPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/autotvm/tune_relay_cuda.html b/docs/tutorials/autotvm/tune_relay_cuda.html
index e9e9fb9..6a7a9e5 100644
--- a/docs/tutorials/autotvm/tune_relay_cuda.html
+++ b/docs/tutorials/autotvm/tune_relay_cuda.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-tuning a Convolutional Network for NVIDIA GPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-tuning a Convolutional Network for NVIDIA GPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/autotvm/tune_relay_mobile_gpu.html b/docs/tutorials/autotvm/tune_relay_mobile_gpu.html
index 0694d77..dee7bb6 100644
--- a/docs/tutorials/autotvm/tune_relay_mobile_gpu.html
+++ b/docs/tutorials/autotvm/tune_relay_mobile_gpu.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-tuning a Convolutional Network for Mobile GPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-tuning a Convolutional Network for Mobile GPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/autotvm/tune_relay_x86.html b/docs/tutorials/autotvm/tune_relay_x86.html
index fd6b5de..5ee5849 100644
--- a/docs/tutorials/autotvm/tune_relay_x86.html
+++ b/docs/tutorials/autotvm/tune_relay_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Auto-tuning a Convolutional Network for x86 CPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Auto-tuning a Convolutional Network for x86 CPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/dev/bring_your_own_datatypes.html b/docs/tutorials/dev/bring_your_own_datatypes.html
index cc58bee..8e3af68 100644
--- a/docs/tutorials/dev/bring_your_own_datatypes.html
+++ b/docs/tutorials/dev/bring_your_own_datatypes.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Bring Your Own Datatypes to TVM &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Bring Your Own Datatypes to TVM &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/dev/low_level_custom_pass.html b/docs/tutorials/dev/low_level_custom_pass.html
index b3de7b3..ff0d744 100644
--- a/docs/tutorials/dev/low_level_custom_pass.html
+++ b/docs/tutorials/dev/low_level_custom_pass.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Writing a Customized Pass &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Writing a Customized Pass &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -480,8 +480,8 @@ called after each phase is done.</p>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>primfn(a_1: handle, b_1: handle, c_1: handle) -&gt; ()
   attr = {&quot;from_legacy_te_schedule&quot;: True, &quot;global_symbol&quot;: &quot;main&quot;, &quot;tir.noalias&quot;: True}
-  buffers = {c: Buffer(c_2: Pointer(float32), float32, [128], []),
-             a: Buffer(a_2: Pointer(float32), float32, [128], []),
+  buffers = {a: Buffer(a_2: Pointer(float32), float32, [128], []),
+             c: Buffer(c_2: Pointer(float32), float32, [128], []),
              b: Buffer(b_2: Pointer(float32), float32, [128], [])}
   buffer_map = {a_1: a, b_1: b, c_1: c} {
   for (i.outer: int32, 0, 16) {
diff --git a/docs/tutorials/dev/sg_execution_times.html b/docs/tutorials/dev/sg_execution_times.html
index 2f05c3a..dd42c2a 100644
--- a/docs/tutorials/dev/sg_execution_times.html
+++ b/docs/tutorials/dev/sg_execution_times.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Computation times &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Computation times &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -167,7 +167,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -308,12 +308,12 @@
             
   <div class="section" id="computation-times">
 <span id="sphx-glr-tutorials-dev-sg-execution-times"></span><h1>Computation times<a class="headerlink" href="#computation-times" title="Permalink to this headline">¶</a></h1>
-<p><strong>00:35.311</strong> total execution time for <strong>tutorials_dev</strong> files:</p>
+<p><strong>00:49.008</strong> total execution time for <strong>tutorials_dev</strong> files:</p>
 <ul class="simple">
-<li><p><strong>00:31.575</strong>: <a class="reference internal" href="bring_your_own_datatypes.html#sphx-glr-tutorials-dev-bring-your-own-datatypes-py"><span class="std std-ref">Bring Your Own Datatypes to TVM</span></a> (<code class="docutils literal notranslate"><span class="pre">bring_your_own_datatypes.py</span></code>)</p></li>
-<li><p><strong>00:02.244</strong>: <a class="reference internal" href="use_pass_instrument.html#sphx-glr-tutorials-dev-use-pass-instrument-py"><span class="std std-ref">How to Use TVM Pass Instrument</span></a> (<code class="docutils literal notranslate"><span class="pre">use_pass_instrument.py</span></code>)</p></li>
-<li><p><strong>00:01.344</strong>: <a class="reference internal" href="use_pass_infra.html#sphx-glr-tutorials-dev-use-pass-infra-py"><span class="std std-ref">How to Use TVM Pass Infra</span></a> (<code class="docutils literal notranslate"><span class="pre">use_pass_infra.py</span></code>)</p></li>
-<li><p><strong>00:00.148</strong>: <a class="reference internal" href="low_level_custom_pass.html#sphx-glr-tutorials-dev-low-level-custom-pass-py"><span class="std std-ref">Writing a Customized Pass</span></a> (<code class="docutils literal notranslate"><span class="pre">low_level_custom_pass.py</span></code>)</p></li>
+<li><p><strong>00:49.008</strong>: <a class="reference internal" href="bring_your_own_datatypes.html#sphx-glr-tutorials-dev-bring-your-own-datatypes-py"><span class="std std-ref">Bring Your Own Datatypes to TVM</span></a> (<code class="docutils literal notranslate"><span class="pre">bring_your_own_datatypes.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="low_level_custom_pass.html#sphx-glr-tutorials-dev-low-level-custom-pass-py"><span class="std std-ref">Writing a Customized Pass</span></a> (<code class="docutils literal notranslate"><span class="pre">low_level_custom_pass.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="use_pass_infra.html#sphx-glr-tutorials-dev-use-pass-infra-py"><span class="std std-ref">How to Use TVM Pass Infra</span></a> (<code class="docutils literal notranslate"><span class="pre">use_pass_infra.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="use_pass_instrument.html#sphx-glr-tutorials-dev-use-pass-instrument-py"><span class="std std-ref">How to Use TVM Pass Instrument</span></a> (<code class="docutils literal notranslate"><span class="pre">use_pass_instrument.py</span></code>)</p></li>
 </ul>
 </div>
 
diff --git a/docs/tutorials/dev/use_pass_infra.html b/docs/tutorials/dev/use_pass_infra.html
index 9c1f9ca..5cdcbe8 100644
--- a/docs/tutorials/dev/use_pass_infra.html
+++ b/docs/tutorials/dev/use_pass_infra.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>How to Use TVM Pass Infra &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>How to Use TVM Pass Infra &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/dev/use_pass_instrument.html b/docs/tutorials/dev/use_pass_instrument.html
index 527d85e..bb446f2 100644
--- a/docs/tutorials/dev/use_pass_instrument.html
+++ b/docs/tutorials/dev/use_pass_instrument.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>How to Use TVM Pass Instrument &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>How to Use TVM Pass Instrument &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -478,10 +478,10 @@ profile the execution time of each passes.</p>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Printing results of timing profile...
-InferType: 3752us [3752us] (45.67%; 45.67%)
-FoldScaleAxis: 4464us [2us] (54.33%; 54.33%)
-        FoldConstant: 4463us [920us] (54.31%; 99.96%)
-                InferType: 3542us [3542us] (43.12%; 79.38%)
+InferType: 5181us [5181us] (45.61%; 45.61%)
+FoldScaleAxis: 6179us [2us] (54.39%; 54.39%)
+        FoldConstant: 6177us [1335us] (54.38%; 99.97%)
+                InferType: 4842us [4842us] (42.62%; 78.39%)
 </pre></div>
 </div>
 </div>
@@ -504,10 +504,10 @@ Refer to following sections and <a class="reference internal" href="../../api/py
 </div>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Printing results of timing profile...
-InferType: 3532us [3532us] (44.22%; 44.22%)
-FoldScaleAxis: 4455us [2us] (55.78%; 55.78%)
-        FoldConstant: 4454us [969us] (55.76%; 99.97%)
-                InferType: 3485us [3485us] (43.63%; 78.24%)
+InferType: 4919us [4919us] (44.75%; 44.75%)
+FoldScaleAxis: 6074us [2us] (55.25%; 55.25%)
+        FoldConstant: 6072us [1337us] (55.23%; 99.97%)
+                InferType: 4734us [4734us] (43.07%; 77.97%)
 </pre></div>
 </div>
 <p>Register empty list to clear existing instruments.</p>
diff --git a/docs/tutorials/frontend/build_gcn.html b/docs/tutorials/frontend/build_gcn.html
index 9b50082..e485aca 100644
--- a/docs/tutorials/frontend/build_gcn.html
+++ b/docs/tutorials/frontend/build_gcn.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Building a Graph Convolutional Network &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Building a Graph Convolutional Network &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -170,7 +170,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -393,7 +393,9 @@ This part reuses the code from the above example.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Using backend: pytorch
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>DGL backend not selected or invalid.  Assuming PyTorch for now.
+Setting the default backend to &quot;pytorch&quot;. You can change it in the ~/.dgl/config.json file or export the DGLBACKEND environment variable.  Valid options are: pytorch, mxnet, tensorflow (all lowercase)
+Using backend: pytorch
 </pre></div>
 </div>
 </div>
@@ -457,14 +459,17 @@ This part reuses the code from the above example.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>  NumNodes: 2708
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading /workspace/.dgl/cora_v2.zip from https://data.dgl.ai/dataset/cora_v2.zip...
+Extracting file to /workspace/.dgl/cora_v2
+Finished data loading and preprocessing.
+  NumNodes: 2708
   NumEdges: 10556
   NumFeats: 1433
   NumClasses: 7
   NumTrainingSamples: 140
   NumValidationSamples: 500
   NumTestSamples: 1000
-Done loading data from cached files.
+Done saving data into cached files.
 /usr/local/lib/python3.6/dist-packages/dgl/data/utils.py:285: UserWarning: Property dataset.graph will be deprecated, please use dataset[0] instead.
   warnings.warn(&#39;Property {} will be deprecated, please use {} instead.&#39;.format(old, new))
 /usr/local/lib/python3.6/dist-packages/dgl/data/utils.py:285: UserWarning: Property dataset.feat will be deprecated, please use g.ndata[&#39;feat&#39;] instead.
diff --git a/docs/tutorials/frontend/deploy_model_on_android.html b/docs/tutorials/frontend/deploy_model_on_android.html
index 7a7ed67..59effc1 100644
--- a/docs/tutorials/frontend/deploy_model_on_android.html
+++ b/docs/tutorials/frontend/deploy_model_on_android.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy the Pretrained Model on Android &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy the Pretrained Model on Android &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -633,7 +633,7 @@ to the remote android device.</p>
 Evaluate inference time cost...
 Execution time summary:
  mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)
-   7.3173       7.2984       7.3807       7.2587       0.0423
+  11.0604      10.7861      12.7899      10.6342       0.6586
 </pre></div>
 </div>
 </div>
diff --git a/docs/tutorials/frontend/deploy_model_on_rasp.html b/docs/tutorials/frontend/deploy_model_on_rasp.html
index 8a4194b..7e5d146 100644
--- a/docs/tutorials/frontend/deploy_model_on_rasp.html
+++ b/docs/tutorials/frontend/deploy_model_on_rasp.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy the Pretrained Model on Raspberry Pi &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy the Pretrained Model on Raspberry Pi &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/frontend/deploy_object_detection_pytorch.html b/docs/tutorials/frontend/deploy_object_detection_pytorch.html
index 37f3bf4..81b3c7c 100644
--- a/docs/tutorials/frontend/deploy_object_detection_pytorch.html
+++ b/docs/tutorials/frontend/deploy_object_detection_pytorch.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile PyTorch Object Detection Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile PyTorch Object Detection Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -415,7 +415,51 @@ be unstable.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>/usr/local/lib/python3.6/dist-packages/torch/tensor.py:593: RuntimeWarning: Iterating over a tensor might cause the trace to be incorrect. Passing a tensor of different shape won&#39;t change the number of iterations executed (and might lead to errors or silently give incorrect results).
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading: &quot;https://download.pytorch.org/models/maskrcnn_resnet50_fpn_coco-bf2d0c1e.pth&quot; to /workspace/.cache/torch/hub/checkpoints/maskrcnn_resnet50_fpn_coco-bf2d0c1e.pth
+
+  0%|          | 0.00/170M [00:00&lt;?, ?B/s]
+  0%|          | 8.00k/170M [00:00&lt;1:36:57, 30.6kB/s]
+  1%|1         | 2.31M/170M [00:00&lt;00:20, 8.39MB/s]
+  4%|4         | 7.31M/170M [00:00&lt;00:07, 22.9MB/s]
+  7%|7         | 12.0M/170M [00:00&lt;00:05, 31.3MB/s]
+  9%|9         | 15.7M/170M [00:00&lt;00:05, 30.0MB/s]
+ 11%|#1        | 19.4M/170M [00:00&lt;00:04, 32.4MB/s]
+ 13%|#3        | 22.8M/170M [00:00&lt;00:04, 31.7MB/s]
+ 15%|#5        | 26.1M/170M [00:01&lt;00:04, 30.5MB/s]
+ 17%|#7        | 29.1M/170M [00:01&lt;00:04, 30.3MB/s]
+ 20%|##        | 34.5M/170M [00:01&lt;00:03, 37.5MB/s]
+ 24%|##3       | 40.2M/170M [00:01&lt;00:03, 43.9MB/s]
+ 26%|##6       | 44.6M/170M [00:01&lt;00:03, 43.0MB/s]
+ 29%|##8       | 49.1M/170M [00:01&lt;00:02, 44.3MB/s]
+ 31%|###1      | 53.4M/170M [00:01&lt;00:02, 44.5MB/s]
+ 34%|###4      | 58.2M/170M [00:01&lt;00:02, 46.1MB/s]
+ 37%|###6      | 62.7M/170M [00:01&lt;00:02, 42.7MB/s]
+ 39%|###9      | 66.8M/170M [00:02&lt;00:02, 42.1MB/s]
+ 42%|####1     | 70.9M/170M [00:02&lt;00:02, 40.7MB/s]
+ 44%|####4     | 75.5M/170M [00:02&lt;00:02, 42.9MB/s]
+ 47%|####6     | 79.6M/170M [00:02&lt;00:02, 36.4MB/s]
+ 50%|####9     | 84.3M/170M [00:02&lt;00:02, 39.6MB/s]
+ 53%|#####2    | 89.9M/170M [00:02&lt;00:01, 44.8MB/s]
+ 56%|#####5    | 94.4M/170M [00:02&lt;00:01, 44.8MB/s]
+ 58%|#####8    | 98.8M/170M [00:02&lt;00:01, 44.0MB/s]
+ 61%|######    | 103M/170M [00:02&lt;00:01, 41.7MB/s]
+ 63%|######3   | 107M/170M [00:03&lt;00:01, 33.8MB/s]
+ 66%|######5   | 111M/170M [00:03&lt;00:01, 36.0MB/s]
+ 68%|######8   | 116M/170M [00:03&lt;00:01, 39.7MB/s]
+ 71%|#######1  | 121M/170M [00:03&lt;00:01, 42.3MB/s]
+ 74%|#######3  | 125M/170M [00:03&lt;00:01, 43.8MB/s]
+ 76%|#######6  | 130M/170M [00:03&lt;00:01, 31.9MB/s]
+ 79%|#######8  | 133M/170M [00:03&lt;00:01, 33.3MB/s]
+ 81%|########  | 137M/170M [00:03&lt;00:00, 35.0MB/s]
+ 83%|########3 | 141M/170M [00:04&lt;00:00, 37.2MB/s]
+ 86%|########5 | 146M/170M [00:04&lt;00:00, 38.9MB/s]
+ 88%|########8 | 150M/170M [00:04&lt;00:00, 41.6MB/s]
+ 91%|######### | 154M/170M [00:04&lt;00:00, 38.4MB/s]
+ 94%|#########4| 160M/170M [00:04&lt;00:00, 43.7MB/s]
+ 97%|#########6| 164M/170M [00:04&lt;00:00, 42.7MB/s]
+ 99%|#########9| 169M/170M [00:04&lt;00:00, 42.2MB/s]
+100%|##########| 170M/170M [00:04&lt;00:00, 37.6MB/s]
+/usr/local/lib/python3.6/dist-packages/torch/tensor.py:593: RuntimeWarning: Iterating over a tensor might cause the trace to be incorrect. Passing a tensor of different shape won&#39;t change the number of iterations executed (and might lead to errors or silently give incorrect results).
   &#39;incorrect results).&#39;, category=RuntimeWarning)
 /usr/local/lib/python3.6/dist-packages/torch/nn/functional.py:3123: UserWarning: To copy construct from a tensor, it is recommended to use sourceTensor.clone().detach() or sourceTensor.clone().detach().requires_grad_(True), rather than torch.tensor(sourceTensor).
   dtype=torch.float32)).float())) for i in range(dim)]
@@ -498,7 +542,7 @@ torchvision rcnn models.</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Get 9 valid boxes
 </pre></div>
 </div>
-<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 1 minutes  42.237 seconds)</p>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 6 minutes  34.821 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-deploy-object-detection-pytorch-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/ec94e7a109437cf90cddcc60a7b5aaea/deploy_object_detection_pytorch.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">deploy_object_detection_pytorch.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/deploy_prequantized.html b/docs/tutorials/frontend/deploy_prequantized.html
index fa88770..32f67de 100644
--- a/docs/tutorials/frontend/deploy_prequantized.html
+++ b/docs/tutorials/frontend/deploy_prequantized.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy a Framework-prequantized Model with TVM &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy a Framework-prequantized Model with TVM &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -458,6 +458,15 @@ training. Other models require a full post training calibration.</p>
 <div class="highlight-default notranslate"><div class="highlight"><pre><span></span><span class="n">qmodel</span> <span class="o">=</span> <span class="n">qmobilenet</span><span class="o">.</span><span class="n">mobilenet_v2</span><span class="p">(</span><span class="n">pretrained</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span><span class="o">.</span><span class="n">eval</span><span class="p">()</span>
 </pre></div>
 </div>
+<p class="sphx-glr-script-out">Out:</p>
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading: &quot;https://download.pytorch.org/models/mobilenet_v2-b0353104.pth&quot; to /workspace/.cache/torch/hub/checkpoints/mobilenet_v2-b0353104.pth
+
+  0%|          | 0.00/13.6M [00:00&lt;?, ?B/s]
+ 29%|##9       | 3.98M/13.6M [00:00&lt;00:00, 41.7MB/s]
+ 62%|######1   | 8.36M/13.6M [00:00&lt;00:00, 44.2MB/s]
+100%|##########| 13.6M/13.6M [00:00&lt;00:00, 63.1MB/s]
+</pre></div>
+</div>
 </div>
 <div class="section" id="quantize-trace-and-run-the-pytorch-mobilenet-v2-model">
 <h2>Quantize, trace and run the PyTorch Mobilenet v2 model<a class="headerlink" href="#quantize-trace-and-run-the-pytorch-mobilenet-v2-model" title="Permalink to this headline">¶</a></h2>
@@ -517,7 +526,7 @@ standard Relay operators before compilation.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>PyTorch top3 labels: [&#39;tiger cat&#39;, &#39;Egyptian cat&#39;, &#39;tabby, tabby cat&#39;]
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>PyTorch top3 labels: [&#39;tiger cat&#39;, &#39;Egyptian cat&#39;, &#39;lynx, catamount&#39;]
 TVM top3 labels: [&#39;tiger cat&#39;, &#39;Egyptian cat&#39;, &#39;tabby, tabby cat&#39;]
 </pre></div>
 </div>
@@ -528,7 +537,7 @@ output values are identical out of 1000 outputs from mobilenet v2.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>140 in 1000 raw floating outputs identical.
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>132 in 1000 raw floating outputs identical.
 </pre></div>
 </div>
 </div>
@@ -543,7 +552,7 @@ output values are identical out of 1000 outputs from mobilenet v2.</p>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time summary:
  mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)
-  18.4986      18.4725      19.6626      18.3014       0.1583
+  39.4568      38.9747      58.8311      38.6383       2.0381
 </pre></div>
 </div>
 <div class="admonition note">
@@ -582,6 +591,7 @@ This includes support for the VNNI 8 bit dot product instruction (CascadeLake or
 <div class="section" id="deploy-a-quantized-tflite-model">
 <h2>Deploy a quantized TFLite Model<a class="headerlink" href="#deploy-a-quantized-tflite-model" title="Permalink to this headline">¶</a></h2>
 <p>TODO</p>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 1 minutes  37.273 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-deploy-prequantized-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/8a7f17665207908e373e8146da09443a/deploy_prequantized.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">deploy_prequantized.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/deploy_prequantized_tflite.html b/docs/tutorials/frontend/deploy_prequantized_tflite.html
index 7db0b07..0a6fc57 100644
--- a/docs/tutorials/frontend/deploy_prequantized_tflite.html
+++ b/docs/tutorials/frontend/deploy_prequantized_tflite.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy a Framework-prequantized Model with TVM - Part 3 (TFLite) &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy a Framework-prequantized Model with TVM - Part 3 (TFLite) &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -553,7 +553,7 @@ TFLite Top-5 labels: [387 102 386 341 880]
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time summary:
  mean (ms)   median (ms)    max (ms)     min (ms)     std (ms)
-  34.6676      34.3071      55.0247      33.8788       2.1488
+  72.0695      71.4769      89.6603      69.9658       2.3134
 </pre></div>
 </div>
 <div class="admonition note">
@@ -580,7 +580,7 @@ device and follow <a class="reference external" href="https://tvm.apache.org/doc
 </ul>
 </div></blockquote>
 </div>
-<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 2 minutes  9.880 seconds)</p>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 2 minutes  19.036 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-deploy-prequantized-tflite-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/5c443f88ea44ce77c5ccade429af6e74/deploy_prequantized_tflite.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">deploy_prequantized_tflite.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/deploy_quantized.html b/docs/tutorials/frontend/deploy_quantized.html
index 453489a..3dd1ded 100644
--- a/docs/tutorials/frontend/deploy_quantized.html
+++ b/docs/tutorials/frontend/deploy_quantized.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy a Quantized Model on Cuda &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy a Quantized Model on Cuda &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -482,6 +482,7 @@ for calibration. But the accuracy might be impacted.</p>
     <span class="n">main</span><span class="p">()</span>
 </pre></div>
 </div>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 1 minutes  24.981 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-deploy-quantized-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/5b32f1dc3e9e2fc5ac5be0918758b967/deploy_quantized.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">deploy_quantized.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/deploy_sparse.html b/docs/tutorials/frontend/deploy_sparse.html
index 74e3686..9d51718 100644
--- a/docs/tutorials/frontend/deploy_sparse.html
+++ b/docs/tutorials/frontend/deploy_sparse.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy a Hugging Face Pruned Model on CPU &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy a Hugging Face Pruned Model on CPU &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/frontend/deploy_ssd_gluoncv.html b/docs/tutorials/frontend/deploy_ssd_gluoncv.html
index 5e2d65a..bb9429c 100644
--- a/docs/tutorials/frontend/deploy_ssd_gluoncv.html
+++ b/docs/tutorials/frontend/deploy_ssd_gluoncv.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Deploy Single Shot Multibox Detector(SSD) model &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Deploy Single Shot Multibox Detector(SSD) model &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -416,6 +416,31 @@ to your device.</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>/usr/local/lib/python3.6/dist-packages/mxnet/gluon/block.py:1389: UserWarning: Cannot decide type for the following arguments. Consider providing them as input:
         data: None
   input_sym_arg_type = in_param.infer_type()[0]
+Downloading /workspace/.mxnet/models/ssd_512_resnet50_v1_voc-9c8b225a.zip from https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/models/ssd_512_resnet50_v1_voc-9c8b225a.zip...
+
+  0%|          | 0/132723 [00:00&lt;?, ?KB/s]
+  2%|1         | 2136/132723 [00:00&lt;00:14, 9070.09KB/s]
+  4%|3         | 4955/132723 [00:00&lt;00:07, 16289.03KB/s]
+  8%|7         | 10343/132723 [00:00&lt;00:04, 29460.18KB/s]
+ 10%|#         | 13908/132723 [00:00&lt;00:04, 29404.22KB/s]
+ 13%|#2        | 17223/132723 [00:00&lt;00:04, 28235.72KB/s]
+ 17%|#6        | 21954/132723 [00:00&lt;00:03, 33744.53KB/s]
+ 19%|#9        | 25584/132723 [00:00&lt;00:03, 33127.69KB/s]
+ 25%|##4       | 32757/132723 [00:01&lt;00:02, 37422.81KB/s]
+ 28%|##7       | 37099/132723 [00:01&lt;00:02, 35875.46KB/s]
+ 31%|###       | 40711/132723 [00:01&lt;00:02, 35048.87KB/s]
+ 37%|###6      | 48894/132723 [00:01&lt;00:01, 47232.76KB/s]
+ 41%|####      | 53835/132723 [00:01&lt;00:02, 38447.61KB/s]
+ 48%|####8     | 64078/132723 [00:01&lt;00:01, 53641.55KB/s]
+ 53%|#####2    | 70129/132723 [00:01&lt;00:01, 49190.34KB/s]
+ 59%|#####9    | 78360/132723 [00:01&lt;00:00, 57245.79KB/s]
+ 64%|######3   | 84644/132723 [00:02&lt;00:00, 51620.82KB/s]
+ 71%|#######1  | 94737/132723 [00:02&lt;00:00, 63687.46KB/s]
+ 77%|#######6  | 101708/132723 [00:02&lt;00:00, 39024.85KB/s]
+ 84%|########4 | 111833/132723 [00:02&lt;00:00, 50300.89KB/s]
+ 89%|########9 | 118693/132723 [00:02&lt;00:00, 46824.58KB/s]
+ 97%|#########7| 128849/132723 [00:02&lt;00:00, 57925.56KB/s]
+100%|##########| 132723/132723 [00:03&lt;00:00, 43823.76KB/s]
 </pre></div>
 </div>
 <p>Create TVM runtime and do inference
@@ -455,7 +480,7 @@ to your device.</p>
 </pre></div>
 </div>
 <img alt="../../_images/sphx_glr_deploy_ssd_gluoncv_001.png" class="sphx-glr-single-img" src="../../_images/sphx_glr_deploy_ssd_gluoncv_001.png" />
-<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 2 minutes  44.102 seconds)</p>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 3 minutes  23.389 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-deploy-ssd-gluoncv-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/ca08de6c440df207921d807474d26f06/deploy_ssd_gluoncv.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">deploy_ssd_gluoncv.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/from_caffe2.html b/docs/tutorials/frontend/from_caffe2.html
index a0f0224..7f46dd7 100644
--- a/docs/tutorials/frontend/from_caffe2.html
+++ b/docs/tutorials/frontend/from_caffe2.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile Caffe2 Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile Caffe2 Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -372,6 +372,17 @@ conda install pytorch-nightly cuda80 -c pytorch
 <span class="n">resnet50</span> <span class="o">=</span> <span class="n">Model</span><span class="p">(</span><span class="s2">&quot;resnet50&quot;</span><span class="p">)</span>
 </pre></div>
 </div>
+<p class="sphx-glr-script-out">Out:</p>
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/predict_net.pb
+Writing to /workspace/.caffe2/models/resnet50/predict_net.pb
+
+Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/init_net.pb
+Writing to /workspace/.caffe2/models/resnet50/init_net.pb
+
+Downloading from https://s3.amazonaws.com/download.caffe2.ai/models/resnet50/value_info.json
+Writing to /workspace/.caffe2/models/resnet50/value_info.json
+</pre></div>
+</div>
 </div>
 <div class="section" id="load-a-test-image">
 <h2>Load a test image<a class="headerlink" href="#load-a-test-image" title="Permalink to this headline">¶</a></h2>
diff --git a/docs/tutorials/frontend/from_coreml.html b/docs/tutorials/frontend/from_coreml.html
index 39dec1c..a66eabf 100644
--- a/docs/tutorials/frontend/from_coreml.html
+++ b/docs/tutorials/frontend/from_coreml.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile CoreML Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile CoreML Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/frontend/from_darknet.html b/docs/tutorials/frontend/from_darknet.html
index 78e30b3..7efb3ab 100644
--- a/docs/tutorials/frontend/from_darknet.html
+++ b/docs/tutorials/frontend/from_darknet.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile YOLO-V2 and YOLO-V3 in DarkNet Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile YOLO-V2 and YOLO-V3 in DarkNet Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -550,6 +550,7 @@ class:[&#39;truck 0.9266&#39;] left:471 right:83 top:689 bottom:169
 class:[&#39;bicycle 0.9984&#39;] left:111 right:113 top:577 bottom:447
 </pre></div>
 </div>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 1 minutes  22.353 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-from-darknet-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/a7ce44923ffcc359fd2e532ac1f62c9e/from_darknet.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">from_darknet.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/from_keras.html b/docs/tutorials/frontend/from_keras.html
index 5b5e128..58da264 100644
--- a/docs/tutorials/frontend/from_keras.html
+++ b/docs/tutorials/frontend/from_keras.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile Keras Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile Keras Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/frontend/from_mxnet.html b/docs/tutorials/frontend/from_mxnet.html
index cb426a2..67dc791 100644
--- a/docs/tutorials/frontend/from_mxnet.html
+++ b/docs/tutorials/frontend/from_mxnet.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile MXNet Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile MXNet Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -402,7 +402,8 @@
 </div>
 <img alt="../../_images/sphx_glr_from_mxnet_001.png" class="sphx-glr-single-img" src="../../_images/sphx_glr_from_mxnet_001.png" />
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>x (1, 3, 224, 224)
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading /workspace/.mxnet/models/resnet18_v1-a0666292.zipfaa14738-16e4-4da0-8285-ae245f11b665 from https://apache-mxnet.s3-accelerate.dualstack.amazonaws.com/gluon/models/resnet18_v1-a0666292.zip...
+x (1, 3, 224, 224)
 </pre></div>
 </div>
 </div>
diff --git a/docs/tutorials/frontend/from_onnx.html b/docs/tutorials/frontend/from_onnx.html
index ae85e19..5cad8cd 100644
--- a/docs/tutorials/frontend/from_onnx.html
+++ b/docs/tutorials/frontend/from_onnx.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile ONNX Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile ONNX Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -421,7 +421,7 @@ provides a static definition of the input size.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>../../python/tvm/relay/frontend/onnx.py:4206: UserWarning: Mismatched attribute type in &#39; : kernel_shape&#39;
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>../../python/tvm/relay/frontend/onnx.py:4025: UserWarning: Mismatched attribute type in &#39; : kernel_shape&#39;
 
 ==&gt; Context: Bad node spec: input: &quot;1&quot; input: &quot;2&quot; output: &quot;11&quot; op_type: &quot;Conv&quot; attribute { name: &quot;kernel_shape&quot; ints: 5 ints: 5 } attribute { name: &quot;strides&quot; ints: 1 ints: 1 } attribute { name: &quot;pads&quot; ints: 2 ints: 2 ints: 2 ints: 2 } attribute { name: &quot;dilations&quot; ints: 1 ints: 1 } attribute { name: &quot;group&quot; i: 1 }
   warnings.warn(str(e))
diff --git a/docs/tutorials/frontend/from_pytorch.html b/docs/tutorials/frontend/from_pytorch.html
index c3d9849..158aafb 100644
--- a/docs/tutorials/frontend/from_pytorch.html
+++ b/docs/tutorials/frontend/from_pytorch.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile PyTorch Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile PyTorch Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -384,6 +384,15 @@ be unstable.</p>
 <span class="n">scripted_model</span> <span class="o">=</span> <span class="n">torch</span><span class="o">.</span><span class="n">jit</span><span class="o">.</span><span class="n">trace</span><span class="p">(</span><span class="n">model</span><span class="p">,</span> <span class="n">input_data</span><span class="p">)</span><span class="o">.</span><span class="n">eval</span><span class="p">()</span>
 </pre></div>
 </div>
+<p class="sphx-glr-script-out">Out:</p>
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Downloading: &quot;https://download.pytorch.org/models/resnet18-5c106cde.pth&quot; to /workspace/.cache/torch/hub/checkpoints/resnet18-5c106cde.pth
+
+  0%|          | 0.00/44.7M [00:00&lt;?, ?B/s]
+ 28%|##8       | 12.6M/44.7M [00:00&lt;00:00, 132MB/s]
+ 77%|#######7  | 34.5M/44.7M [00:00&lt;00:00, 189MB/s]
+100%|##########| 44.7M/44.7M [00:00&lt;00:00, 194MB/s]
+</pre></div>
+</div>
 </div>
 <div class="section" id="load-a-test-image">
 <h2>Load a test image<a class="headerlink" href="#load-a-test-image" title="Permalink to this headline">¶</a></h2>
diff --git a/docs/tutorials/frontend/from_tensorflow.html b/docs/tutorials/frontend/from_tensorflow.html
index 85069f1..fcd084d 100644
--- a/docs/tutorials/frontend/from_tensorflow.html
+++ b/docs/tutorials/frontend/from_tensorflow.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile Tensorflow Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile Tensorflow Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -504,146 +504,6 @@ lib: target library which can be deployed on target with TVM runtime.</p>
     <span class="n">lib</span> <span class="o">=</span> <span class="n">relay</span><span class="o">.</span><span class="n">build</span><span class="p">(</span><span class="n">mod</span><span class="p">,</span> <span class="n">target</span><span class="p">,</span> <span class="n">params</span><span class="o">=</span><span class="n">params</span><span class="p">)</span>
 </pre></div>
 </div>
-<p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-conv2d NHWC layout is not optimized for x86 with autotvm.
-</pre></div>
-</div>
 </div>
 <div class="section" id="execute-the-portable-graph-on-tvm">
 <h2>Execute the portable graph on TVM<a class="headerlink" href="#execute-the-portable-graph-on-tvm" title="Permalink to this headline">¶</a></h2>
@@ -752,6 +612,7 @@ banana (score = 0.00022)
 desk (score = 0.00019)
 </pre></div>
 </div>
+<p class="sphx-glr-timing"><strong>Total running time of the script:</strong> ( 1 minutes  20.985 seconds)</p>
 <div class="sphx-glr-footer class sphx-glr-footer-example docutils container" id="sphx-glr-download-tutorials-frontend-from-tensorflow-py">
 <div class="sphx-glr-download docutils container">
 <p><a class="reference download internal" download="" href="../../_downloads/50b174352ccf0a0defcbd8e6b40145e2/from_tensorflow.py"><code class="xref download docutils literal notranslate"><span class="pre">Download</span> <span class="pre">Python</span> <span class="pre">source</span> <span class="pre">code:</span> <span class="pre">from_tensorflow.py</span></code></a></p>
diff --git a/docs/tutorials/frontend/from_tflite.html b/docs/tutorials/frontend/from_tflite.html
index 86378f5..addc377 100644
--- a/docs/tutorials/frontend/from_tflite.html
+++ b/docs/tutorials/frontend/from_tflite.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compile TFLite Models &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compile TFLite Models &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/frontend/sg_execution_times.html b/docs/tutorials/frontend/sg_execution_times.html
index 2e30223..2bdf3fd 100644
--- a/docs/tutorials/frontend/sg_execution_times.html
+++ b/docs/tutorials/frontend/sg_execution_times.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Computation times &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Computation times &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -167,7 +167,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -308,27 +308,27 @@
             
   <div class="section" id="computation-times">
 <span id="sphx-glr-tutorials-frontend-sg-execution-times"></span><h1>Computation times<a class="headerlink" href="#computation-times" title="Permalink to this headline">¶</a></h1>
-<p><strong>12:48.781</strong> total execution time for <strong>tutorials_frontend</strong> files:</p>
+<p><strong>00:20.583</strong> total execution time for <strong>tutorials_frontend</strong> files:</p>
 <ul class="simple">
-<li><p><strong>02:44.102</strong>: <a class="reference internal" href="deploy_ssd_gluoncv.html#sphx-glr-tutorials-frontend-deploy-ssd-gluoncv-py"><span class="std std-ref">Deploy Single Shot Multibox Detector(SSD) model</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_ssd_gluoncv.py</span></code>)</p></li>
-<li><p><strong>02:09.880</strong>: <a class="reference internal" href="deploy_prequantized_tflite.html#sphx-glr-tutorials-frontend-deploy-prequantized-tflite-py"><span class="std std-ref">Deploy a Framework-prequantized Model with TVM - Part 3 (TFLite)</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_prequantized_tflite.py</span></code>)</p></li>
-<li><p><strong>01:42.237</strong>: <a class="reference internal" href="deploy_object_detection_pytorch.html#sphx-glr-tutorials-frontend-deploy-object-detection-pytorch-py"><span class="std std-ref">Compile PyTorch Object Detection Models</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_object_detection_pytorch.py</span></code>)</p></li>
-<li><p><strong>00:58.362</strong>: <a class="reference internal" href="deploy_prequantized.html#sphx-glr-tutorials-frontend-deploy-prequantized-py"><span class="std std-ref">Deploy a Framework-prequantized Model with TVM</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_prequantized.py</span></code>)</p></li>
-<li><p><strong>00:51.534</strong>: <a class="reference internal" href="from_tensorflow.html#sphx-glr-tutorials-frontend-from-tensorflow-py"><span class="std std-ref">Compile Tensorflow Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_tensorflow.py</span></code>)</p></li>
-<li><p><strong>00:49.915</strong>: <a class="reference internal" href="deploy_quantized.html#sphx-glr-tutorials-frontend-deploy-quantized-py"><span class="std std-ref">Deploy a Quantized Model on Cuda</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_quantized.py</span></code>)</p></li>
-<li><p><strong>00:44.022</strong>: <a class="reference internal" href="from_darknet.html#sphx-glr-tutorials-frontend-from-darknet-py"><span class="std std-ref">Compile YOLO-V2 and YOLO-V3 in DarkNet Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_darknet.py</span></code>)</p></li>
-<li><p><strong>00:33.724</strong>: <a class="reference internal" href="from_caffe2.html#sphx-glr-tutorials-frontend-from-caffe2-py"><span class="std std-ref">Compile Caffe2 Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_caffe2.py</span></code>)</p></li>
-<li><p><strong>00:25.786</strong>: <a class="reference internal" href="deploy_model_on_android.html#sphx-glr-tutorials-frontend-deploy-model-on-android-py"><span class="std std-ref">Deploy the Pretrained Model on Android</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_model_on_android.py</span></code>)</p></li>
-<li><p><strong>00:22.924</strong>: <a class="reference internal" href="from_tflite.html#sphx-glr-tutorials-frontend-from-tflite-py"><span class="std std-ref">Compile TFLite Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_tflite.py</span></code>)</p></li>
-<li><p><strong>00:20.266</strong>: <a class="reference internal" href="deploy_model_on_rasp.html#sphx-glr-tutorials-frontend-deploy-model-on-rasp-py"><span class="std std-ref">Deploy the Pretrained Model on Raspberry Pi</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_model_on_rasp.py</span></code>)</p></li>
-<li><p><strong>00:18.185</strong>: <a class="reference internal" href="from_coreml.html#sphx-glr-tutorials-frontend-from-coreml-py"><span class="std std-ref">Compile CoreML Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_coreml.py</span></code>)</p></li>
-<li><p><strong>00:16.801</strong>: <a class="reference internal" href="from_pytorch.html#sphx-glr-tutorials-frontend-from-pytorch-py"><span class="std std-ref">Compile PyTorch Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_pytorch.py</span></code>)</p></li>
-<li><p><strong>00:15.877</strong>: <a class="reference internal" href="from_mxnet.html#sphx-glr-tutorials-frontend-from-mxnet-py"><span class="std std-ref">Compile MXNet Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_mxnet.py</span></code>)</p></li>
-<li><p><strong>00:10.187</strong>: <a class="reference internal" href="from_keras.html#sphx-glr-tutorials-frontend-from-keras-py"><span class="std std-ref">Compile Keras Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_keras.py</span></code>)</p></li>
-<li><p><strong>00:02.287</strong>: <a class="reference internal" href="using_external_lib.html#sphx-glr-tutorials-frontend-using-external-lib-py"><span class="std std-ref">Using External Libraries in Relay</span></a> (<code class="docutils literal notranslate"><span class="pre">using_external_lib.py</span></code>)</p></li>
-<li><p><strong>00:01.525</strong>: <a class="reference internal" href="from_onnx.html#sphx-glr-tutorials-frontend-from-onnx-py"><span class="std std-ref">Compile ONNX Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_onnx.py</span></code>)</p></li>
-<li><p><strong>00:01.027</strong>: <a class="reference internal" href="build_gcn.html#sphx-glr-tutorials-frontend-build-gcn-py"><span class="std std-ref">Building a Graph Convolutional Network</span></a> (<code class="docutils literal notranslate"><span class="pre">build_gcn.py</span></code>)</p></li>
-<li><p><strong>00:00.141</strong>: <a class="reference internal" href="deploy_sparse.html#sphx-glr-tutorials-frontend-deploy-sparse-py"><span class="std std-ref">Deploy a Hugging Face Pruned Model on CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_sparse.py</span></code>)</p></li>
+<li><p><strong>00:18.527</strong>: <a class="reference internal" href="from_keras.html#sphx-glr-tutorials-frontend-from-keras-py"><span class="std std-ref">Compile Keras Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_keras.py</span></code>)</p></li>
+<li><p><strong>00:02.056</strong>: <a class="reference internal" href="from_onnx.html#sphx-glr-tutorials-frontend-from-onnx-py"><span class="std std-ref">Compile ONNX Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_onnx.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="build_gcn.html#sphx-glr-tutorials-frontend-build-gcn-py"><span class="std std-ref">Building a Graph Convolutional Network</span></a> (<code class="docutils literal notranslate"><span class="pre">build_gcn.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_model_on_android.html#sphx-glr-tutorials-frontend-deploy-model-on-android-py"><span class="std std-ref">Deploy the Pretrained Model on Android</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_model_on_android.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_model_on_rasp.html#sphx-glr-tutorials-frontend-deploy-model-on-rasp-py"><span class="std std-ref">Deploy the Pretrained Model on Raspberry Pi</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_model_on_rasp.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_object_detection_pytorch.html#sphx-glr-tutorials-frontend-deploy-object-detection-pytorch-py"><span class="std std-ref">Compile PyTorch Object Detection Models</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_object_detection_pytorch.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_prequantized.html#sphx-glr-tutorials-frontend-deploy-prequantized-py"><span class="std std-ref">Deploy a Framework-prequantized Model with TVM</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_prequantized.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_prequantized_tflite.html#sphx-glr-tutorials-frontend-deploy-prequantized-tflite-py"><span class="std std-ref">Deploy a Framework-prequantized Model with TVM - Part 3 (TFLite)</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_prequantized_tflite.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_quantized.html#sphx-glr-tutorials-frontend-deploy-quantized-py"><span class="std std-ref">Deploy a Quantized Model on Cuda</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_quantized.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_sparse.html#sphx-glr-tutorials-frontend-deploy-sparse-py"><span class="std std-ref">Deploy a Hugging Face Pruned Model on CPU</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_sparse.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="deploy_ssd_gluoncv.html#sphx-glr-tutorials-frontend-deploy-ssd-gluoncv-py"><span class="std std-ref">Deploy Single Shot Multibox Detector(SSD) model</span></a> (<code class="docutils literal notranslate"><span class="pre">deploy_ssd_gluoncv.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_caffe2.html#sphx-glr-tutorials-frontend-from-caffe2-py"><span class="std std-ref">Compile Caffe2 Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_caffe2.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_coreml.html#sphx-glr-tutorials-frontend-from-coreml-py"><span class="std std-ref">Compile CoreML Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_coreml.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_darknet.html#sphx-glr-tutorials-frontend-from-darknet-py"><span class="std std-ref">Compile YOLO-V2 and YOLO-V3 in DarkNet Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_darknet.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_mxnet.html#sphx-glr-tutorials-frontend-from-mxnet-py"><span class="std std-ref">Compile MXNet Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_mxnet.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_pytorch.html#sphx-glr-tutorials-frontend-from-pytorch-py"><span class="std std-ref">Compile PyTorch Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_pytorch.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_tensorflow.html#sphx-glr-tutorials-frontend-from-tensorflow-py"><span class="std std-ref">Compile Tensorflow Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_tensorflow.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="from_tflite.html#sphx-glr-tutorials-frontend-from-tflite-py"><span class="std std-ref">Compile TFLite Models</span></a> (<code class="docutils literal notranslate"><span class="pre">from_tflite.py</span></code>)</p></li>
+<li><p><strong>00:00.000</strong>: <a class="reference internal" href="using_external_lib.html#sphx-glr-tutorials-frontend-using-external-lib-py"><span class="std std-ref">Using External Libraries in Relay</span></a> (<code class="docutils literal notranslate"><span class="pre">using_external_lib.py</span></code>)</p></li>
 </ul>
 </div>
 
diff --git a/docs/tutorials/frontend/using_external_lib.html b/docs/tutorials/frontend/using_external_lib.html
index f54a7fb..4242b83 100644
--- a/docs/tutorials/frontend/using_external_lib.html
+++ b/docs/tutorials/frontend/using_external_lib.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Using External Libraries in Relay &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Using External Libraries in Relay &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/get_started/auto_scheduler_matmul_x86.html b/docs/tutorials/get_started/auto_scheduler_matmul_x86.html
index 36d6e62..5892799 100644
--- a/docs/tutorials/get_started/auto_scheduler_matmul_x86.html
+++ b/docs/tutorials/get_started/auto_scheduler_matmul_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Optimizing Operators with Auto-scheduling &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Optimizing Operators with Auto-scheduling &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -541,7 +541,7 @@ primfn(A_1: handle, B_1: handle, C_1: handle, out_1: handle) -&gt; ()
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 21.160 ms
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>Execution time of this operator: 45.432 ms
 </pre></div>
 </div>
 </div>
diff --git a/docs/tutorials/get_started/autotvm_matmul_x86.html b/docs/tutorials/get_started/autotvm_matmul_x86.html
index 167b47b..b484041 100644
--- a/docs/tutorials/get_started/autotvm_matmul_x86.html
+++ b/docs/tutorials/get_started/autotvm_matmul_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Optimizing Operators with Schedule Templates and AutoTVM &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Optimizing Operators with Schedule Templates and AutoTVM &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
diff --git a/docs/tutorials/get_started/autotvm_relay_x86.html b/docs/tutorials/get_started/autotvm_relay_x86.html
index 0babdf5..6836a4d 100644
--- a/docs/tutorials/get_started/autotvm_relay_x86.html
+++ b/docs/tutorials/get_started/autotvm_relay_x86.html
@@ -11,7 +11,7 @@
   
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   
-  <title>Compiling and Optimizing a Model with the Python Interface (AutoTVM) &mdash; tvm 0.8.dev1706+gdc2f70e3c documentation</title>
+  <title>Compiling and Optimizing a Model with the Python Interface (AutoTVM) &mdash; tvm 0.8.dev0 documentation</title>
   
 
   
@@ -169,7 +169,7 @@
             
             
                 <div class="version">
-                  0.8.dev1706+gdc2f70e3c
+                  0.8.dev0
                 </div>
             
           
@@ -478,10 +478,6 @@ set.</p>
 <span class="n">module</span> <span class="o">=</span> <a href="../../api/python/graph_executor.html#tvm.contrib.graph_executor.GraphModule" title="View documentation for tvm.contrib.graph_executor.GraphModule"><span class="n">graph_executor</span><span class="o">.</span><span class="n">GraphModule</span></a><span class="p">(</span><span class="n">lib</span><span class="p">[</span><span class="s2">&quot;default&quot;</span><span class="p">](</span><span class="n">dev</span><span class="p [...]
 </pre></div>
 </div>
-<p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>One or more operators have not been tuned. Please tune your model for better performance. Use DEBUG logging level to see more details.
-</pre></div>
-</div>
 </div>
 <div class="section" id="execute-on-the-tvm-runtime">
 <h2>Execute on the TVM Runtime<a class="headerlink" href="#execute-on-the-tvm-runtime" title="Permalink to this headline">¶</a></h2>
@@ -526,7 +522,7 @@ standard deviation.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>{&#39;mean&#39;: 100.97112998832017, &#39;median&#39;: 100.64726648852229, &#39;std&#39;: 0.9355632830933527}
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>{&#39;mean&#39;: 226.42689668997264, &#39;median&#39;: 226.24714619996666, &#39;std&#39;: 0.646916386317958}
 </pre></div>
 </div>
 </div>
@@ -555,8 +551,8 @@ for the model.</p>
 </pre></div>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
-<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>class=&#39;n02123045 tabby, tabby cat&#39; with probability=0.610551
-class=&#39;n02123159 tiger cat&#39; with probability=0.367180
+<div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>class=&#39;n02123045 tabby, tabby cat&#39; with probability=0.610552
+class=&#39;n02123159 tiger cat&#39; with probability=0.367179
 class=&#39;n02124075 Egyptian cat&#39; with probability=0.019365
 class=&#39;n02129604 tiger, Panthera tigris&#39; with probability=0.001273
 class=&#39;n04040759 radiator&#39; with probability=0.000261
@@ -682,79 +678,129 @@ depending on the specifics of the model and the target platform.</p>
 </div>
 <p class="sphx-glr-script-out">Out:</p>
 <div class="sphx-glr-script-out highlight-none notranslate"><div class="highlight"><pre><span></span>[Task  1/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  1/25]  Current/Best:   13.44/  26.27 GFLOPS | Progress: (10/10) | 95.13 s
+[Task  1/25]  Current/Best:   12.05/  14.13 GFLOPS | Progress: (4/10) | 11.61 s
+[Task  1/25]  Current/Best:   14.75/  14.75 GFLOPS | Progress: (8/10) | 22.10 s
+[Task  1/25]  Current/Best:    9.32/  14.75 GFLOPS | Progress: (10/10) | 32.45 s Done.
+
 [Task  2/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  2/25]  Current/Best:    1.81/   1.81 GFLOPS | Progress: (10/10) | 36.88 s
+[Task  2/25]  Current/Best:    6.24/  12.89 GFLOPS | Progress: (4/10) | 3.57 s
+[Task  2/25]  Current/Best:   19.53/  19.53 GFLOPS | Progress: (8/10) | 12.75 s
+[Task  2/25]  Current/Best:   19.58/  19.58 GFLOPS | Progress: (10/10) | 13.84 s Done.
+
 [Task  3/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  3/25]  Current/Best:   42.58/  74.66 GFLOPS | Progress: (10/10) | 37.79 s
+[Task  3/25]  Current/Best:   27.76/  39.82 GFLOPS | Progress: (4/10) | 3.83 s
+[Task  3/25]  Current/Best:   23.57/  46.16 GFLOPS | Progress: (8/10) | 6.40 s
+[Task  3/25]  Current/Best:   15.99/  46.16 GFLOPS | Progress: (10/10) | 8.16 s Done.
+
 [Task  4/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  4/25]  Current/Best:   53.23/  96.78 GFLOPS | Progress: (10/10) | 9.82 s Done.
+[Task  4/25]  Current/Best:   33.28/  45.79 GFLOPS | Progress: (4/10) | 3.06 s
+[Task  4/25]  Current/Best:   28.97/  45.79 GFLOPS | Progress: (8/10) | 5.45 s
+[Task  4/25]  Current/Best:   45.86/  45.86 GFLOPS | Progress: (10/10) | 6.87 s Done.
 
 [Task  5/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  5/25]  Current/Best:    6.82/  60.22 GFLOPS | Progress: (10/10) | 16.41 s Done.
+[Task  5/25]  Current/Best:   20.78/  38.54 GFLOPS | Progress: (4/10) | 2.22 s
+[Task  5/25]  Current/Best:   47.72/  47.72 GFLOPS | Progress: (8/10) | 3.87 s
+[Task  5/25]  Current/Best:   19.84/  47.72 GFLOPS | Progress: (10/10) | 4.61 s Done.
 
 [Task  6/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  6/25]  Current/Best:   69.75/  69.75 GFLOPS | Progress: (10/10) | 14.71 s Done.
+[Task  6/25]  Current/Best:   24.75/  24.75 GFLOPS | Progress: (4/10) | 3.88 s
+[Task  6/25]  Current/Best:   36.38/  46.07 GFLOPS | Progress: (8/10) | 6.43 s
+[Task  6/25]  Current/Best:   23.05/  46.65 GFLOPS | Progress: (10/10) | 7.39 s Done.
 
 [Task  7/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  7/25]  Current/Best:   64.33/  90.56 GFLOPS | Progress: (10/10) | 15.68 s Done.
+[Task  7/25]  Current/Best:   47.84/  47.84 GFLOPS | Progress: (4/10) | 2.21 s
+[Task  7/25]  Current/Best:   34.60/  47.84 GFLOPS | Progress: (8/10) | 3.98 s
+[Task  7/25]  Current/Best:   10.16/  47.84 GFLOPS | Progress: (10/10) | 4.97 s Done.
 
 [Task  8/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task  8/25]  Current/Best:   41.50/  65.29 GFLOPS | Progress: (10/10) | 33.51 s
-[Task  9/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s Done.
+[Task  8/25]  Current/Best:   30.68/  30.68 GFLOPS | Progress: (4/10) | 2.32 s
+[Task  8/25]  Current/Best:   37.35/  45.33 GFLOPS | Progress: (8/10) | 5.31 s
+[Task  8/25]  Current/Best:   46.41/  46.41 GFLOPS | Progress: (10/10) | 5.93 s Done.
 
-[Task  9/25]  Current/Best:   60.73/  82.22 GFLOPS | Progress: (10/10) | 11.42 s Done.
+[Task  9/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
+[Task  9/25]  Current/Best:    8.46/  42.93 GFLOPS | Progress: (4/10) | 3.18 s
+[Task  9/25]  Current/Best:   41.72/  42.93 GFLOPS | Progress: (8/10) | 4.84 s
+[Task  9/25]  Current/Best:   43.40/  43.40 GFLOPS | Progress: (10/10) | 6.23 s Done.
 
 [Task 10/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 10/25]  Current/Best:   27.21/  55.24 GFLOPS | Progress: (10/10) | 11.12 s Done.
+[Task 10/25]  Current/Best:   33.50/  36.81 GFLOPS | Progress: (4/10) | 2.17 s
+[Task 10/25]  Current/Best:   15.28/  36.81 GFLOPS | Progress: (8/10) | 3.77 s
+[Task 10/25]  Current/Best:   16.60/  36.81 GFLOPS | Progress: (10/10) | 5.26 s Done.
 
 [Task 11/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 11/25]  Current/Best:   85.07/  85.07 GFLOPS | Progress: (10/10) | 10.00 s Done.
+[Task 11/25]  Current/Best:   46.46/  46.46 GFLOPS | Progress: (4/10) | 3.53 s
+[Task 11/25]  Current/Best:   38.92/  46.46 GFLOPS | Progress: (8/10) | 5.45 s
+[Task 11/25]  Current/Best:   27.07/  46.46 GFLOPS | Progress: (10/10) | 6.57 s Done.
 
 [Task 12/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 12/25]  Current/Best:   50.72/  68.54 GFLOPS | Progress: (10/10) | 11.57 s Done.
+[Task 12/25]  Current/Best:   34.53/  39.45 GFLOPS | Progress: (4/10) | 2.36 s
+[Task 12/25]  Current/Best:   31.65/  44.32 GFLOPS | Progress: (8/10) | 3.91 s
+[Task 12/25]  Current/Best:   17.73/  44.32 GFLOPS | Progress: (10/10) | 7.64 s Done.
 
 [Task 13/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 13/25]  Current/Best:   22.31/  65.46 GFLOPS | Progress: (10/10) | 19.41 s Done.
+[Task 13/25]  Current/Best:   25.99/  35.90 GFLOPS | Progress: (4/10) | 2.10 s
+[Task 13/25]  Current/Best:   28.48/  35.90 GFLOPS | Progress: (8/10) | 7.06 s
+[Task 13/25]  Current/Best:   35.65/  38.45 GFLOPS | Progress: (10/10) | 7.77 s Done.
 
 [Task 14/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 14/25]  Current/Best:   87.35/  87.71 GFLOPS | Progress: (10/10) | 5.70 s Done.
+[Task 14/25]  Current/Best:   29.02/  47.75 GFLOPS | Progress: (4/10) | 2.58 s
+[Task 14/25]  Current/Best:   38.29/  47.75 GFLOPS | Progress: (8/10) | 4.64 s
+[Task 14/25]  Current/Best:   30.86/  47.75 GFLOPS | Progress: (10/10) | 5.71 s Done.
 
 [Task 15/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 15/25]  Current/Best:   38.18/  51.59 GFLOPS | Progress: (10/10) | 5.07 s Done.
+[Task 15/25]  Current/Best:   41.66/  43.09 GFLOPS | Progress: (4/10) | 2.09 s
+[Task 15/25]  Current/Best:   22.98/  43.09 GFLOPS | Progress: (8/10) | 5.28 s
+[Task 15/25]  Current/Best:   12.10/  43.09 GFLOPS | Progress: (10/10) | 6.04 s Done.
 
 [Task 16/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 16/25]  Current/Best:   30.83/  61.08 GFLOPS | Progress: (10/10) | 5.07 s Done.
+[Task 16/25]  Current/Best:   14.11/  47.00 GFLOPS | Progress: (4/10) | 4.16 s
+[Task 16/25]  Current/Best:   40.78/  47.00 GFLOPS | Progress: (8/10) | 5.93 s
+[Task 16/25]  Current/Best:   13.65/  47.00 GFLOPS | Progress: (10/10) | 6.82 s Done.
 
 [Task 17/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 17/25]  Current/Best:   54.49/  68.61 GFLOPS | Progress: (10/10) | 6.46 s Done.
+[Task 17/25]  Current/Best:   25.74/  27.83 GFLOPS | Progress: (4/10) | 4.52 s
+[Task 17/25]  Current/Best:   46.56/  46.56 GFLOPS | Progress: (8/10) | 5.98 s
+[Task 17/25]  Current/Best:   12.30/  46.56 GFLOPS | Progress: (10/10) | 6.94 s Done.
 
 [Task 18/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 18/25]  Current/Best:   45.63/  61.39 GFLOPS | Progress: (10/10) | 10.53 s Done.
+[Task 18/25]  Current/Best:   20.07/  34.05 GFLOPS | Progress: (4/10) | 2.56 s
+[Task 18/25]  Current/Best:   26.35/  42.79 GFLOPS | Progress: (8/10) | 5.79 s
+[Task 18/25]  Current/Best:   33.49/  42.79 GFLOPS | Progress: (10/10) | 6.79 s Done.
 
 [Task 19/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 19/25]  Current/Best:   99.57/  99.57 GFLOPS | Progress: (10/10) | 5.14 s Done.
+[Task 19/25]  Current/Best:   44.44/  44.44 GFLOPS | Progress: (4/10) | 2.58 s
+[Task 19/25]  Current/Best:   45.86/  45.86 GFLOPS | Progress: (8/10) | 4.22 s
+[Task 19/25]  Current/Best:   32.42/  45.86 GFLOPS | Progress: (10/10) | 5.20 s Done.
 
 [Task 20/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 20/25]  Current/Best:   34.33/  46.20 GFLOPS | Progress: (10/10) | 5.47 s Done.
+[Task 20/25]  Current/Best:   35.55/  38.18 GFLOPS | Progress: (4/10) | 2.58 s
+[Task 20/25]  Current/Best:   38.55/  38.55 GFLOPS | Progress: (8/10) | 4.25 s
+[Task 20/25]  Current/Best:    8.66/  38.55 GFLOPS | Progress: (10/10) | 5.12 s Done.
 
 [Task 21/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 21/25]  Current/Best:   29.78/  40.29 GFLOPS | Progress: (10/10) | 4.88 s Done.
+[Task 21/25]  Current/Best:   22.51/  35.86 GFLOPS | Progress: (4/10) | 2.60 s
+[Task 21/25]  Current/Best:   11.92/  37.32 GFLOPS | Progress: (8/10) | 3.97 s
+[Task 21/25]  Current/Best:   13.60/  37.32 GFLOPS | Progress: (10/10) | 4.85 s Done.
 
 [Task 22/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 22/25]  Current/Best:   59.79/ 102.15 GFLOPS | Progress: (10/10) | 6.66 s Done.
+[Task 22/25]  Current/Best:   40.97/  48.00 GFLOPS | Progress: (4/10) | 2.28 s
+[Task 22/25]  Current/Best:   28.80/  48.86 GFLOPS | Progress: (8/10) | 4.65 s
+[Task 22/25]  Current/Best:   30.62/  48.86 GFLOPS | Progress: (10/10) | 5.65 s Done.
 
 [Task 23/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 23/25]  Current/Best:   60.67/  60.67 GFLOPS | Progress: (10/10) | 19.24 s
+[Task 23/25]  Current/Best:   26.07/  27.08 GFLOPS | Progress: (4/10) | 10.41 s
+[Task 23/25]  Current/Best:    9.40/  29.51 GFLOPS | Progress: (8/10) | 12.53 s
+[Task 23/25]  Current/Best:   17.33/  31.99 GFLOPS | Progress: (10/10) | 13.42 s Done.
+
 [Task 24/25]  Current/Best:    0.00/   0.00 GFLOPS | Progress: (0/10) | 0.00 s
-[Task 24/25]  Current/Best:   62.59/  76.12 GFLOPS | Progress: (10/10) | 13.95 s Done.
- Done.
- Done.
- Done.
- Done.
+[Task 24/25]  Current/Best:   32.87/  34.13 GFLOPS | Progress: (4/10) | 4.51 s
+[Task 24/25]  Current/Best:   14.52/  34.13 GFLOPS | Progress: (8/10) | 11.00 s
... 1691 lines suppressed ...