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 a043c3a429 deploying docs
(apache/tvm@ac70260e5a148bf06238f2370ea7cd6e3c305a15)
a043c3a429 is described below
commit a043c3a4290ea58ee6bed4482833ebd060866430
Author: tvm-bot <[email protected]>
AuthorDate: Sun Feb 15 18:16:24 2026 +0000
deploying docs (apache/tvm@ac70260e5a148bf06238f2370ea7cd6e3c305a15)
---
.../11c11e53c7dace51a8be968ee169ed0d/ir_module.zip | Bin 23916 -> 23916 bytes
.../tir_transformation.zip | Bin 15611 -> 15611 bytes
.../relax_creation.zip | Bin 22398 -> 22398 bytes
.../relax_transformation.zip | Bin 11460 -> 11460 bytes
.../optimize_llm.zip | Bin 54144 -> 54144 bytes
.../e2e_opt_model.zip | Bin 14486 -> 14486 bytes
.../quick_start.zip | Bin 16254 -> 16254 bytes
.../export_and_load_executable.zip | Bin 31436 -> 31436 bytes
.../tir_creation.zip | Bin 24395 -> 24395 bytes
.../cross_compilation_and_rpc.zip | Bin 46623 -> 46623 bytes
.../customize_opt.zip | Bin 20562 -> 20562 bytes
.../relax/tutorials/sg_execution_times.rst.txt | 6 +--
.../tensor_ir/tutorials/sg_execution_times.rst.txt | 6 +--
.../tensor_ir/tutorials/tir_creation.rst.txt | 20 +++++-----
.../tensor_ir/tutorials/tir_transformation.rst.txt | 6 +--
.../get_started/tutorials/ir_module.rst.txt | 8 ++--
.../get_started/tutorials/quick_start.rst.txt | 4 +-
.../tutorials/sg_execution_times.rst.txt | 6 +--
.../tutorials/cross_compilation_and_rpc.rst.txt | 6 +--
.../how_to/tutorials/customize_opt.rst.txt | 4 +-
.../how_to/tutorials/e2e_opt_model.rst.txt | 2 +-
.../how_to/tutorials/sg_execution_times.rst.txt | 10 ++---
docs/_sources/sg_execution_times.rst.txt | 22 +++++------
.../relax/tutorials/sg_execution_times.html | 6 +--
.../tensor_ir/tutorials/sg_execution_times.html | 6 +--
.../tensor_ir/tutorials/tir_creation.html | 44 +++++++++++++++------
.../tensor_ir/tutorials/tir_transformation.html | 23 ++++++++---
docs/get_started/tutorials/ir_module.html | 16 ++++----
docs/get_started/tutorials/quick_start.html | 24 +++++------
docs/get_started/tutorials/sg_execution_times.html | 6 +--
.../tutorials/cross_compilation_and_rpc.html | 6 +--
docs/how_to/tutorials/customize_opt.html | 8 ++--
docs/how_to/tutorials/e2e_opt_model.html | 6 +--
.../tutorials/export_and_load_executable.html | 8 ++--
docs/how_to/tutorials/optimize_llm.html | 10 ++---
docs/how_to/tutorials/sg_execution_times.html | 10 ++---
docs/objects.inv | Bin 19058 -> 19050 bytes
docs/reference/api/python/relax/relax.html | 2 +-
docs/reference/api/python/runtime/vm.html | 2 +-
docs/searchindex.js | 2 +-
docs/sg_execution_times.html | 22 +++++------
41 files changed, 167 insertions(+), 134 deletions(-)
diff --git a/docs/_downloads/11c11e53c7dace51a8be968ee169ed0d/ir_module.zip
b/docs/_downloads/11c11e53c7dace51a8be968ee169ed0d/ir_module.zip
index 255e268989..8e31af0104 100644
Binary files a/docs/_downloads/11c11e53c7dace51a8be968ee169ed0d/ir_module.zip
and b/docs/_downloads/11c11e53c7dace51a8be968ee169ed0d/ir_module.zip differ
diff --git
a/docs/_downloads/18ba0d2ee8120824175aaef66bc9c9bf/tir_transformation.zip
b/docs/_downloads/18ba0d2ee8120824175aaef66bc9c9bf/tir_transformation.zip
index 28cf8d6e41..df6ea20669 100644
Binary files
a/docs/_downloads/18ba0d2ee8120824175aaef66bc9c9bf/tir_transformation.zip and
b/docs/_downloads/18ba0d2ee8120824175aaef66bc9c9bf/tir_transformation.zip differ
diff --git
a/docs/_downloads/4753776bbe68e7c9ee4d19117973fc8b/relax_creation.zip
b/docs/_downloads/4753776bbe68e7c9ee4d19117973fc8b/relax_creation.zip
index 367d90c843..3799d56c0b 100644
Binary files
a/docs/_downloads/4753776bbe68e7c9ee4d19117973fc8b/relax_creation.zip and
b/docs/_downloads/4753776bbe68e7c9ee4d19117973fc8b/relax_creation.zip differ
diff --git
a/docs/_downloads/7d201684dfa095a5ea48d98e9a2ef7ad/relax_transformation.zip
b/docs/_downloads/7d201684dfa095a5ea48d98e9a2ef7ad/relax_transformation.zip
index f4bb16a497..89a5337f58 100644
Binary files
a/docs/_downloads/7d201684dfa095a5ea48d98e9a2ef7ad/relax_transformation.zip and
b/docs/_downloads/7d201684dfa095a5ea48d98e9a2ef7ad/relax_transformation.zip
differ
diff --git a/docs/_downloads/83e85f38cf16f1d926d06615fd54095c/optimize_llm.zip
b/docs/_downloads/83e85f38cf16f1d926d06615fd54095c/optimize_llm.zip
index e20f96da57..6a010e0fd5 100644
Binary files
a/docs/_downloads/83e85f38cf16f1d926d06615fd54095c/optimize_llm.zip and
b/docs/_downloads/83e85f38cf16f1d926d06615fd54095c/optimize_llm.zip differ
diff --git a/docs/_downloads/a7dd7652b2ad50f82d7b739ce3645799/e2e_opt_model.zip
b/docs/_downloads/a7dd7652b2ad50f82d7b739ce3645799/e2e_opt_model.zip
index 7efefdf063..1fea6e86ca 100644
Binary files
a/docs/_downloads/a7dd7652b2ad50f82d7b739ce3645799/e2e_opt_model.zip and
b/docs/_downloads/a7dd7652b2ad50f82d7b739ce3645799/e2e_opt_model.zip differ
diff --git a/docs/_downloads/bb7db6678496193ed0c55d3b95fa6778/quick_start.zip
b/docs/_downloads/bb7db6678496193ed0c55d3b95fa6778/quick_start.zip
index ba48050ee1..8e3874af92 100644
Binary files a/docs/_downloads/bb7db6678496193ed0c55d3b95fa6778/quick_start.zip
and b/docs/_downloads/bb7db6678496193ed0c55d3b95fa6778/quick_start.zip differ
diff --git
a/docs/_downloads/bc875d02d5382abc9ea5fb9eb2c1de2c/export_and_load_executable.zip
b/docs/_downloads/bc875d02d5382abc9ea5fb9eb2c1de2c/export_and_load_executable.zip
index 5138a8dfd5..c85f40a6b8 100644
Binary files
a/docs/_downloads/bc875d02d5382abc9ea5fb9eb2c1de2c/export_and_load_executable.zip
and
b/docs/_downloads/bc875d02d5382abc9ea5fb9eb2c1de2c/export_and_load_executable.zip
differ
diff --git a/docs/_downloads/be26483bb70b8468499a01c55e8e866c/tir_creation.zip
b/docs/_downloads/be26483bb70b8468499a01c55e8e866c/tir_creation.zip
index ae128be752..88af002203 100644
Binary files
a/docs/_downloads/be26483bb70b8468499a01c55e8e866c/tir_creation.zip and
b/docs/_downloads/be26483bb70b8468499a01c55e8e866c/tir_creation.zip differ
diff --git
a/docs/_downloads/f69380821f417ef2210f45503d81bded/cross_compilation_and_rpc.zip
b/docs/_downloads/f69380821f417ef2210f45503d81bded/cross_compilation_and_rpc.zip
index f80774bbff..76f135b0f5 100644
Binary files
a/docs/_downloads/f69380821f417ef2210f45503d81bded/cross_compilation_and_rpc.zip
and
b/docs/_downloads/f69380821f417ef2210f45503d81bded/cross_compilation_and_rpc.zip
differ
diff --git a/docs/_downloads/f69433a4a80715725df90d1386679956/customize_opt.zip
b/docs/_downloads/f69433a4a80715725df90d1386679956/customize_opt.zip
index f509f0c42c..cfc8028d08 100644
Binary files
a/docs/_downloads/f69433a4a80715725df90d1386679956/customize_opt.zip and
b/docs/_downloads/f69433a4a80715725df90d1386679956/customize_opt.zip differ
diff --git a/docs/_sources/deep_dive/relax/tutorials/sg_execution_times.rst.txt
b/docs/_sources/deep_dive/relax/tutorials/sg_execution_times.rst.txt
index a1e0293da6..b217c4d0ef 100644
--- a/docs/_sources/deep_dive/relax/tutorials/sg_execution_times.rst.txt
+++ b/docs/_sources/deep_dive/relax/tutorials/sg_execution_times.rst.txt
@@ -6,7 +6,7 @@
Computation times
=================
-**00:00.173** total execution time for 2 files **from
deep_dive/relax/tutorials**:
+**00:00.165** total execution time for 2 files **from
deep_dive/relax/tutorials**:
.. container::
@@ -33,8 +33,8 @@ Computation times
- Time
- Mem (MB)
* - :ref:`sphx_glr_deep_dive_relax_tutorials_relax_creation.py`
(``relax_creation.py``)
- - 00:00.110
+ - 00:00.104
- 0.0
* - :ref:`sphx_glr_deep_dive_relax_tutorials_relax_transformation.py`
(``relax_transformation.py``)
- - 00:00.063
+ - 00:00.061
- 0.0
diff --git
a/docs/_sources/deep_dive/tensor_ir/tutorials/sg_execution_times.rst.txt
b/docs/_sources/deep_dive/tensor_ir/tutorials/sg_execution_times.rst.txt
index a93a9004f2..e86688e984 100644
--- a/docs/_sources/deep_dive/tensor_ir/tutorials/sg_execution_times.rst.txt
+++ b/docs/_sources/deep_dive/tensor_ir/tutorials/sg_execution_times.rst.txt
@@ -6,7 +6,7 @@
Computation times
=================
-**00:00.459** total execution time for 2 files **from
deep_dive/tensor_ir/tutorials**:
+**00:00.453** total execution time for 2 files **from
deep_dive/tensor_ir/tutorials**:
.. container::
@@ -33,8 +33,8 @@ Computation times
- Time
- Mem (MB)
* - :ref:`sphx_glr_deep_dive_tensor_ir_tutorials_tir_transformation.py`
(``tir_transformation.py``)
- - 00:00.289
+ - 00:00.287
- 0.0
* - :ref:`sphx_glr_deep_dive_tensor_ir_tutorials_tir_creation.py`
(``tir_creation.py``)
- - 00:00.170
+ - 00:00.167
- 0.0
diff --git a/docs/_sources/deep_dive/tensor_ir/tutorials/tir_creation.rst.txt
b/docs/_sources/deep_dive/tensor_ir/tutorials/tir_creation.rst.txt
index 0a367b1d36..d99884356a 100644
--- a/docs/_sources/deep_dive/tensor_ir/tutorials/tir_creation.rst.txt
+++ b/docs/_sources/deep_dive/tensor_ir/tutorials/tir_creation.rst.txt
@@ -319,17 +319,17 @@ Now let's check the runtime dynamic shape inference:
.. code-block:: none
- [[1.472027 2.0789847 2.3091063 0.98678803]
- [1.26184 1.3014797 1.5739275 0.6800937 ]
- [0.81773233 1.2992717 1.4698243 0.6449696 ]
- [0.7518646 0.81928486 1.2865459 0.6013301 ]]
- [[29.628876 30.279272 31.442326 ... 29.117813 31.457212 28.24175 ]
- [30.860552 33.10992 33.64257 ... 31.403677 33.444847 30.039026]
- [33.773964 33.07447 34.498924 ... 32.150776 35.763763 30.9558 ]
+ [[1.0717938 1.4005535 1.3194947 0.99284095]
+ [0.68106604 0.7505544 0.797218 0.5459537 ]
+ [1.0159712 1.5862205 1.1523128 1.0995024 ]
+ [1.2203039 1.3727031 1.1788238 1.1094996 ]]
+ [[31.684141 31.127207 30.375526 ... 33.06524 29.302822 29.347015]
+ [31.044458 32.940258 30.776825 ... 32.13508 27.26915 30.846508]
+ [31.5478 32.457672 32.654305 ... 34.152256 30.764772 31.487982]
...
- [31.358803 31.986496 33.44272 ... 30.234509 33.85476 29.354744]
- [30.282463 30.682907 30.457699 ... 27.720665 31.825796 28.414028]
- [31.65766 32.49923 33.993443 ... 31.44418 32.885117 29.046062]]
+ [33.29419 33.980724 31.774961 ... 35.990543 31.914068 32.116215]
+ [28.795279 32.54298 30.782438 ... 33.092716 29.435022 29.858746]
+ [32.397717 33.265285 32.906975 ... 34.382507 30.431625 29.398975]]
diff --git
a/docs/_sources/deep_dive/tensor_ir/tutorials/tir_transformation.rst.txt
b/docs/_sources/deep_dive/tensor_ir/tutorials/tir_transformation.rst.txt
index dba28f7aff..084c69085a 100644
--- a/docs/_sources/deep_dive/tensor_ir/tutorials/tir_transformation.rst.txt
+++ b/docs/_sources/deep_dive/tensor_ir/tutorials/tir_transformation.rst.txt
@@ -117,7 +117,7 @@ original implementation.
Execution time summary:
mean (ms) median (ms) max (ms) min (ms) std (ms)
- 2.7317 2.7317 2.7317 2.7317 0.0000
+ 2.7498 2.7498 2.7498 2.7498 0.0000
@@ -289,7 +289,7 @@ action involves reordering these two loops.
Execution time summary:
mean (ms) median (ms) max (ms) min (ms) std (ms)
- 0.8582 0.8582 0.8582 0.8582 0.0000
+ 0.8599 0.8599 0.8599 0.8599 0.0000
@@ -417,7 +417,7 @@ from the reduction update via the **decompose_reduction**
primitive.
Execution time summary:
mean (ms) median (ms) max (ms) min (ms) std (ms)
- 0.3351 0.3351 0.3351 0.3351 0.0000
+ 0.3365 0.3365 0.3365 0.3365 0.0000
diff --git a/docs/_sources/get_started/tutorials/ir_module.rst.txt
b/docs/_sources/get_started/tutorials/ir_module.rst.txt
index 85ed6bd7f2..cc320e1378 100644
--- a/docs/_sources/get_started/tutorials/ir_module.rst.txt
+++ b/docs/_sources/get_started/tutorials/ir_module.rst.txt
@@ -692,8 +692,8 @@ We can deploy the IRModule on CPU by specifying the target
as ``llvm``.
.. code-block:: none
- [[ 0.09490886 -0.035832 0.06150763 -0.13896269 0.05049 -0.10532825
- 0.10084124 0.11770243 -0.03419293 -0.01728289]]
+ [[ 0.05399034 0.07950433 -0.14197856 -0.04814526 -0.00679823 -0.05149411
+ 0.18930404 0.14563185 -0.00740508 -0.13171832]]
@@ -759,8 +759,8 @@ Now we can compile the IRModule on GPU, the similar way as
we did on CPU.
.. code-block:: none
- [[ 0.09490887 -0.03583203 0.06150762 -0.13896267 0.05049002 -0.10532829
- 0.10084124 0.11770255 -0.03419299 -0.01728291]]
+ [[ 0.05399039 0.07950439 -0.14197844 -0.04814525 -0.00679814 -0.05149406
+ 0.18930398 0.14563179 -0.00740505 -0.13171828]]
diff --git a/docs/_sources/get_started/tutorials/quick_start.rst.txt
b/docs/_sources/get_started/tutorials/quick_start.rst.txt
index af0bf2238a..e3c27625a5 100644
--- a/docs/_sources/get_started/tutorials/quick_start.rst.txt
+++ b/docs/_sources/get_started/tutorials/quick_start.rst.txt
@@ -224,8 +224,8 @@ different devices.
.. code-block:: none
- [[25623.697 27297.902 25809.043 25427.236 26135.32 25893.604 24258.6
- 25295.38 25667.58 25015.475]]
+ [[24428.926 26845.727 25194.346 25011.664 26348.475 25142.502 24988.672
+ 26453.643 25961.184 25071.375]]
diff --git a/docs/_sources/get_started/tutorials/sg_execution_times.rst.txt
b/docs/_sources/get_started/tutorials/sg_execution_times.rst.txt
index 0db95d2e28..74d9f8eacb 100644
--- a/docs/_sources/get_started/tutorials/sg_execution_times.rst.txt
+++ b/docs/_sources/get_started/tutorials/sg_execution_times.rst.txt
@@ -6,7 +6,7 @@
Computation times
=================
-**00:07.566** total execution time for 2 files **from get_started/tutorials**:
+**00:05.112** total execution time for 2 files **from get_started/tutorials**:
.. container::
@@ -33,8 +33,8 @@ Computation times
- Time
- Mem (MB)
* - :ref:`sphx_glr_get_started_tutorials_ir_module.py` (``ir_module.py``)
- - 00:07.390
+ - 00:04.940
- 0.0
* - :ref:`sphx_glr_get_started_tutorials_quick_start.py`
(``quick_start.py``)
- - 00:00.176
+ - 00:00.172
- 0.0
diff --git a/docs/_sources/how_to/tutorials/cross_compilation_and_rpc.rst.txt
b/docs/_sources/how_to/tutorials/cross_compilation_and_rpc.rst.txt
index eb98523415..f831f72f60 100644
--- a/docs/_sources/how_to/tutorials/cross_compilation_and_rpc.rst.txt
+++ b/docs/_sources/how_to/tutorials/cross_compilation_and_rpc.rst.txt
@@ -268,7 +268,7 @@ device and returns the measured cost. Network overhead is
excluded.
.. code-block:: none
- 1.44e-07 secs/op
+ 1.27e-07 secs/op
@@ -651,8 +651,8 @@ This workflow is applicable to various deployment scenarios:
Converted PyTorch model to Relax:
- Number of parameters: 4
Using local target for demonstration
- Exported library to: /tmp/tmpyabp1qi4/model_deployed.so
- Saved parameters to: /tmp/tmpyabp1qi4/model_params.npz
+ Exported library to: /tmp/tmpzla33jgl/model_deployed.so
+ Saved parameters to: /tmp/tmpzla33jgl/model_params.npz
RPC workflow (works for any remote device):
==================================================
diff --git a/docs/_sources/how_to/tutorials/customize_opt.rst.txt
b/docs/_sources/how_to/tutorials/customize_opt.rst.txt
index f1051259af..ed460e944a 100644
--- a/docs/_sources/how_to/tutorials/customize_opt.rst.txt
+++ b/docs/_sources/how_to/tutorials/customize_opt.rst.txt
@@ -423,8 +423,8 @@ We can build and deploy the optimized model to the TVM
runtime.
.. code-block:: none
- [[25020.787 25094.88 24134.51 26182.402 25592.227 25506.64 24376.805
- 25132.742 23470.238 25678.094]]
+ [[24056.95 23400.213 24763.447 24957.5 24419.238 23919.822 23740.305
+ 25459.414 23783.598 25156.863]]
diff --git a/docs/_sources/how_to/tutorials/e2e_opt_model.rst.txt
b/docs/_sources/how_to/tutorials/e2e_opt_model.rst.txt
index 226d59b99d..7b5e3cd957 100644
--- a/docs/_sources/how_to/tutorials/e2e_opt_model.rst.txt
+++ b/docs/_sources/how_to/tutorials/e2e_opt_model.rst.txt
@@ -53,7 +53,7 @@ PyTorch.
.. code-block:: none
Downloading: "https://download.pytorch.org/models/resnet18-f37072fd.pth"
to /workspace/.cache/torch/hub/checkpoints/resnet18-f37072fd.pth
- 0%| | 0.00/44.7M [00:00<?, ?B/s] 46%|████▌ |
20.5M/44.7M [00:00<00:00, 215MB/s] 100%|██████████| 44.7M/44.7M
[00:00<00:00, 253MB/s]
+ 0%| | 0.00/44.7M [00:00<?, ?B/s] 58%|█████▊ |
26.1M/44.7M [00:00<00:00, 273MB/s] 100%|██████████| 44.7M/44.7M
[00:00<00:00, 301MB/s]
diff --git a/docs/_sources/how_to/tutorials/sg_execution_times.rst.txt
b/docs/_sources/how_to/tutorials/sg_execution_times.rst.txt
index 0059a79610..a30e32e3d5 100644
--- a/docs/_sources/how_to/tutorials/sg_execution_times.rst.txt
+++ b/docs/_sources/how_to/tutorials/sg_execution_times.rst.txt
@@ -6,7 +6,7 @@
Computation times
=================
-**00:32.554** total execution time for 5 files **from how_to/tutorials**:
+**00:31.499** total execution time for 5 files **from how_to/tutorials**:
.. container::
@@ -33,16 +33,16 @@ Computation times
- Time
- Mem (MB)
* - :ref:`sphx_glr_how_to_tutorials_optimize_llm.py` (``optimize_llm.py``)
- - 00:30.315
+ - 00:29.639
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_cross_compilation_and_rpc.py`
(``cross_compilation_and_rpc.py``)
- - 00:00.807
+ - 00:00.743
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_customize_opt.py` (``customize_opt.py``)
- - 00:00.761
+ - 00:00.658
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_e2e_opt_model.py` (``e2e_opt_model.py``)
- - 00:00.670
+ - 00:00.457
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_export_and_load_executable.py`
(``export_and_load_executable.py``)
- 00:00.002
diff --git a/docs/_sources/sg_execution_times.rst.txt
b/docs/_sources/sg_execution_times.rst.txt
index d467ba2b2a..35c49a8452 100644
--- a/docs/_sources/sg_execution_times.rst.txt
+++ b/docs/_sources/sg_execution_times.rst.txt
@@ -6,7 +6,7 @@
Computation times
=================
-**00:40.752** total execution time for 11 files **from all galleries**:
+**00:37.229** total execution time for 11 files **from all galleries**:
.. container::
@@ -33,34 +33,34 @@ Computation times
- Time
- Mem (MB)
* - :ref:`sphx_glr_how_to_tutorials_optimize_llm.py`
(``../how_to/tutorials/optimize_llm.py``)
- - 00:30.315
+ - 00:29.639
- 0.0
* - :ref:`sphx_glr_get_started_tutorials_ir_module.py`
(``../get_started/tutorials/ir_module.py``)
- - 00:07.390
+ - 00:04.940
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_cross_compilation_and_rpc.py`
(``../how_to/tutorials/cross_compilation_and_rpc.py``)
- - 00:00.807
+ - 00:00.743
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_customize_opt.py`
(``../how_to/tutorials/customize_opt.py``)
- - 00:00.761
+ - 00:00.658
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_e2e_opt_model.py`
(``../how_to/tutorials/e2e_opt_model.py``)
- - 00:00.670
+ - 00:00.457
- 0.0
* - :ref:`sphx_glr_deep_dive_tensor_ir_tutorials_tir_transformation.py`
(``../deep_dive/tensor_ir/tutorials/tir_transformation.py``)
- - 00:00.289
+ - 00:00.287
- 0.0
* - :ref:`sphx_glr_get_started_tutorials_quick_start.py`
(``../get_started/tutorials/quick_start.py``)
- - 00:00.176
+ - 00:00.172
- 0.0
* - :ref:`sphx_glr_deep_dive_tensor_ir_tutorials_tir_creation.py`
(``../deep_dive/tensor_ir/tutorials/tir_creation.py``)
- - 00:00.170
+ - 00:00.167
- 0.0
* - :ref:`sphx_glr_deep_dive_relax_tutorials_relax_creation.py`
(``../deep_dive/relax/tutorials/relax_creation.py``)
- - 00:00.110
+ - 00:00.104
- 0.0
* - :ref:`sphx_glr_deep_dive_relax_tutorials_relax_transformation.py`
(``../deep_dive/relax/tutorials/relax_transformation.py``)
- - 00:00.063
+ - 00:00.061
- 0.0
* - :ref:`sphx_glr_how_to_tutorials_export_and_load_executable.py`
(``../how_to/tutorials/export_and_load_executable.py``)
- 00:00.002
diff --git a/docs/deep_dive/relax/tutorials/sg_execution_times.html
b/docs/deep_dive/relax/tutorials/sg_execution_times.html
index 4499ee800e..99032ef137 100644
--- a/docs/deep_dive/relax/tutorials/sg_execution_times.html
+++ b/docs/deep_dive/relax/tutorials/sg_execution_times.html
@@ -294,7 +294,7 @@
<section id="computation-times">
<span
id="sphx-glr-deep-dive-relax-tutorials-sg-execution-times"></span><h1>Computation
times<a class="headerlink" href="#computation-times" title="Link to this
heading"></a></h1>
-<p><strong>00:00.173</strong> total execution time for 2 files <strong>from
deep_dive/relax/tutorials</strong>:</p>
+<p><strong>00:00.165</strong> total execution time for 2 files <strong>from
deep_dive/relax/tutorials</strong>:</p>
<div class="docutils container">
<style scoped>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.0/css/bootstrap.min.css"
rel="stylesheet" />
@@ -316,11 +316,11 @@ $(document).ready( function () {
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference internal"
href="relax_creation.html#sphx-glr-deep-dive-relax-tutorials-relax-creation-py"><span
class="std std-ref">Relax Creation</span></a> (<code class="docutils literal
notranslate"><span class="pre">relax_creation.py</span></code>)</p></td>
-<td><p>00:00.110</p></td>
+<td><p>00:00.104</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="relax_transformation.html#sphx-glr-deep-dive-relax-tutorials-relax-transformation-py"><span
class="std std-ref">Transformation</span></a> (<code class="docutils literal
notranslate"><span class="pre">relax_transformation.py</span></code>)</p></td>
-<td><p>00:00.063</p></td>
+<td><p>00:00.061</p></td>
<td><p>0.0</p></td>
</tr>
</tbody>
diff --git a/docs/deep_dive/tensor_ir/tutorials/sg_execution_times.html
b/docs/deep_dive/tensor_ir/tutorials/sg_execution_times.html
index acd4043b2a..8ac26c0647 100644
--- a/docs/deep_dive/tensor_ir/tutorials/sg_execution_times.html
+++ b/docs/deep_dive/tensor_ir/tutorials/sg_execution_times.html
@@ -294,7 +294,7 @@
<section id="computation-times">
<span
id="sphx-glr-deep-dive-tensor-ir-tutorials-sg-execution-times"></span><h1>Computation
times<a class="headerlink" href="#computation-times" title="Link to this
heading"></a></h1>
-<p><strong>00:00.459</strong> total execution time for 2 files <strong>from
deep_dive/tensor_ir/tutorials</strong>:</p>
+<p><strong>00:00.453</strong> total execution time for 2 files <strong>from
deep_dive/tensor_ir/tutorials</strong>:</p>
<div class="docutils container">
<style scoped>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.0/css/bootstrap.min.css"
rel="stylesheet" />
@@ -316,11 +316,11 @@ $(document).ready( function () {
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference internal"
href="tir_transformation.html#sphx-glr-deep-dive-tensor-ir-tutorials-tir-transformation-py"><span
class="std std-ref">Transformation</span></a> (<code class="docutils literal
notranslate"><span class="pre">tir_transformation.py</span></code>)</p></td>
-<td><p>00:00.289</p></td>
+<td><p>00:00.287</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="tir_creation.html#sphx-glr-deep-dive-tensor-ir-tutorials-tir-creation-py"><span
class="std std-ref">TensorIR Creation</span></a> (<code class="docutils
literal notranslate"><span class="pre">tir_creation.py</span></code>)</p></td>
-<td><p>00:00.170</p></td>
+<td><p>00:00.167</p></td>
<td><p>0.0</p></td>
</tr>
</tbody>
diff --git a/docs/deep_dive/tensor_ir/tutorials/tir_creation.html
b/docs/deep_dive/tensor_ir/tutorials/tir_creation.html
index a1def91ac7..b5dc89b316 100644
--- a/docs/deep_dive/tensor_ir/tutorials/tir_creation.html
+++ b/docs/deep_dive/tensor_ir/tutorials/tir_creation.html
@@ -193,9 +193,29 @@
<li class="toctree-l1"><a class="reference internal"
href="../../../how_to/dev/index.html">Development Guides</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Deep
Dive</span></p>
-<ul>
+<ul class="current">
<li class="toctree-l1"><a class="reference internal"
href="../../../arch/index.html">Design and Architecture</a></li>
-<li class="toctree-l1"><a class="reference internal"
href="../index.html">TensorIR</a></li>
+<li class="toctree-l1 current"><a class="reference internal"
href="../index.html">TensorIR</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal"
href="../abstraction.html">Tensor Program Abstraction</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="../learning.html">Understand TensorIR Abstraction</a></li>
+<li class="toctree-l2 current"><a class="current reference internal"
href="#">TensorIR Creation</a><ul>
+<li class="toctree-l3"><a class="reference internal"
href="#create-tensorir-using-tvmscript">Create TensorIR using TVMScript</a><ul>
+<li class="toctree-l4"><a class="reference internal"
href="#standard-format">Standard Format</a></li>
+<li class="toctree-l4"><a class="reference internal"
href="#concise-with-syntactic-sugar">Concise with Syntactic Sugar</a></li>
+<li class="toctree-l4"><a class="reference internal"
href="#interactive-with-python-variables">Interactive with Python
Variables</a></li>
+<li class="toctree-l4"><a class="reference internal"
href="#tensorir-function-with-dynamic-shapes">TensorIR Function with Dynamic
Shapes</a></li>
+</ul>
+</li>
+<li class="toctree-l3"><a class="reference internal"
href="#create-tensorir-using-tensor-expression">Create TensorIR using Tensor
Expression</a><ul>
+<li class="toctree-l4"><a class="reference internal"
href="#create-static-shape-functions">Create Static-Shape Functions</a></li>
+<li class="toctree-l4"><a class="reference internal"
href="#create-dynamic-shape-functions">Create Dynamic-Shape Functions</a></li>
+</ul>
+</li>
+</ul>
+</li>
+<li class="toctree-l2"><a class="reference internal"
href="tir_transformation.html">Transformation</a></li>
+</ul>
+</li>
<li class="toctree-l1"><a class="reference internal"
href="../../relax/index.html">Relax</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">API
Reference</span></p>
@@ -489,17 +509,17 @@ be used to ascertain the shape and data type of a
TensorIR.</p>
<span class="nb">print</span><span class="p">(</span><span
class="n">evaluate_dynamic_shape</span><span class="p">(</span><span
class="n">dyn_shape_lib</span><span class="p">,</span> <span
class="n">m</span><span class="o">=</span><span class="mi">64</span><span
class="p">,</span> <span class="n">n</span><span class="o">=</span><span
class="mi">64</span><span class="p">,</span> <a
href="../../../reference/api/python/tir/tir.html#tvm.tir.IterVar"
title="tvm.tir.IterVar" class="sphx-glr-ba [...]
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[1.472027 2.0789847 2.3091063
0.98678803]
- [1.26184 1.3014797 1.5739275 0.6800937 ]
- [0.81773233 1.2992717 1.4698243 0.6449696 ]
- [0.7518646 0.81928486 1.2865459 0.6013301 ]]
-[[29.628876 30.279272 31.442326 ... 29.117813 31.457212 28.24175 ]
- [30.860552 33.10992 33.64257 ... 31.403677 33.444847 30.039026]
- [33.773964 33.07447 34.498924 ... 32.150776 35.763763 30.9558 ]
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[1.0717938 1.4005535 1.3194947
0.99284095]
+ [0.68106604 0.7505544 0.797218 0.5459537 ]
+ [1.0159712 1.5862205 1.1523128 1.0995024 ]
+ [1.2203039 1.3727031 1.1788238 1.1094996 ]]
+[[31.684141 31.127207 30.375526 ... 33.06524 29.302822 29.347015]
+ [31.044458 32.940258 30.776825 ... 32.13508 27.26915 30.846508]
+ [31.5478 32.457672 32.654305 ... 34.152256 30.764772 31.487982]
...
- [31.358803 31.986496 33.44272 ... 30.234509 33.85476 29.354744]
- [30.282463 30.682907 30.457699 ... 27.720665 31.825796 28.414028]
- [31.65766 32.49923 33.993443 ... 31.44418 32.885117 29.046062]]
+ [33.29419 33.980724 31.774961 ... 35.990543 31.914068 32.116215]
+ [28.795279 32.54298 30.782438 ... 33.092716 29.435022 29.858746]
+ [32.397717 33.265285 32.906975 ... 34.382507 30.431625 29.398975]]
</pre></div>
</div>
</section>
diff --git a/docs/deep_dive/tensor_ir/tutorials/tir_transformation.html
b/docs/deep_dive/tensor_ir/tutorials/tir_transformation.html
index 7fcfda64bc..b62d3985a6 100644
--- a/docs/deep_dive/tensor_ir/tutorials/tir_transformation.html
+++ b/docs/deep_dive/tensor_ir/tutorials/tir_transformation.html
@@ -192,9 +192,22 @@
<li class="toctree-l1"><a class="reference internal"
href="../../../how_to/dev/index.html">Development Guides</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">Deep
Dive</span></p>
-<ul>
+<ul class="current">
<li class="toctree-l1"><a class="reference internal"
href="../../../arch/index.html">Design and Architecture</a></li>
-<li class="toctree-l1"><a class="reference internal"
href="../index.html">TensorIR</a></li>
+<li class="toctree-l1 current"><a class="reference internal"
href="../index.html">TensorIR</a><ul class="current">
+<li class="toctree-l2"><a class="reference internal"
href="../abstraction.html">Tensor Program Abstraction</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="../learning.html">Understand TensorIR Abstraction</a></li>
+<li class="toctree-l2"><a class="reference internal"
href="tir_creation.html">TensorIR Creation</a></li>
+<li class="toctree-l2 current"><a class="current reference internal"
href="#">Transformation</a><ul>
+<li class="toctree-l3"><a class="reference internal"
href="#initialization-schedule">Initialization Schedule</a></li>
+<li class="toctree-l3"><a class="reference internal" href="#loop-tiling">Loop
Tiling</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="#leverage-localities">Leverage Localities</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="#rewrite-reduction">Rewrite Reduction</a></li>
+<li class="toctree-l3"><a class="reference internal"
href="#trace-the-transformation">Trace the Transformation</a></li>
+</ul>
+</li>
+</ul>
+</li>
<li class="toctree-l1"><a class="reference internal"
href="../../relax/index.html">Relax</a></li>
</ul>
<p class="caption" role="heading"><span class="caption-text">API
Reference</span></p>
@@ -368,7 +381,7 @@ original implementation.</p>
</div>
<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)
- 2.7317 2.7317 2.7317 2.7317 0.0000
+ 2.7498 2.7498 2.7498 2.7498 0.0000
</pre></div>
</div>
<section id="initialization-schedule">
@@ -464,7 +477,7 @@ class Module:
Execution time summary:
mean (ms) median (ms) max (ms) min (ms) std (ms)
- 0.8582 0.8582 0.8582 0.8582 0.0000
+ 0.8599 0.8599 0.8599 0.8599 0.0000
</pre></div>
</div>
</section>
@@ -558,7 +571,7 @@ class Module:
Execution time summary:
mean (ms) median (ms) max (ms) min (ms) std (ms)
- 0.3351 0.3351 0.3351 0.3351 0.0000
+ 0.3365 0.3365 0.3365 0.3365 0.0000
</pre></div>
</div>
</section>
diff --git a/docs/get_started/tutorials/ir_module.html
b/docs/get_started/tutorials/ir_module.html
index 932e82ed1f..1255764419 100644
--- a/docs/get_started/tutorials/ir_module.html
+++ b/docs/get_started/tutorials/ir_module.html
@@ -803,16 +803,16 @@ backends.</p>
<p>We can deploy the IRModule on CPU by specifying the target as <code
class="docutils literal notranslate"><span class="pre">llvm</span></code>.</p>
<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">exec</span></a> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-func [...]
<span class="n">dev</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">cpu</span><span
class="p">()</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class=" [...]
<span class="n">raw_data</span> <span class="o">=</span> <span
class="n">np</span><span class="o">.</span><span class="n">random</span><span
class="o">.</span><span class="n">rand</span><span class="p">(</span><span
class="mi">1</span><span class="p">,</span> <span class="mi">784</span><span
class="p">)</span><span class="o">.</span><span class="n">astype</span><span
class="p">(</span><span class="s2">"float32"</span><span
class="p">)</span>
<span class="n">data</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">raw_data</span><span class="p">,</span> <span
class="n">dev</span><span class="p">)</span>
-<span class="n">cpu_out</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"main"</span><span class="p">](</span><span
class="n">data</span><span class="p">,</span> <span class="o">*</span><a
href="https://docs.python.org/3/library/stdtypes.html#dict"
title="builtins.dict" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">params_from_torch</span></a><span class="p">[</ [...]
+<span class="n">cpu_out</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"main"</span><span
class="p">](</span><span class="n">data</span><span class="p">,</span> <span
class="o">*</span><a href="https:// [...]
<span class="nb">print</span><span class="p">(</span><span
class="n">cpu_out</span><span class="p">)</span>
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[ 0.09490886 -0.035832 0.06150763
-0.13896269 0.05049 -0.10532825
- 0.10084124 0.11770243 -0.03419293 -0.01728289]]
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[ 0.05399034 0.07950433 -0.14197856
-0.04814526 -0.00679823 -0.05149411
+ 0.18930404 0.14563185 -0.00740508 -0.13171832]]
</pre></div>
</div>
</section>
@@ -835,19 +835,19 @@ the details of <code class="docutils literal
notranslate"><span class="pre">DLig
<p>Now we can compile the IRModule on GPU, the similar way as we did on
CPU.</p>
<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">exec</span></a> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-func [...]
<span class="n">dev</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">device</span><span
class="p">(</span><span class="s2">"cuda"</span><span
class="p">,</span> <span class="mi">0</span><span class="p">)</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class=" [...]
<span class="c1"># Need to allocate data and params on GPU device</span>
<span class="n">data</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">raw_data</span><span class="p">,</span> <span
class="n">dev</span><span class="p">)</span>
<a href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">gpu_params</span></a> <span class="o">=</span> <span
class="p">[</span><span class="n">tvm</span><span class="o">.</span><span
class="n">runtime</span><span class="o">.</span><span
class="n">tensor</span><span class="p">(</span><span class="n">p</span><span
class="p">,</span> <span class="n"> [...]
-<span class="n">gpu_out</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"main"</span><span class="p">](</span><span
class="n">data</span><span class="p">,</span> <span class="o">*</span><a
href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">gpu_params</span></a><span class="p">)</span><s [...]
+<span class="n">gpu_out</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"main"</span><span
class="p">](</span><span class="n">data</span><span class="p">,</span> <span
class="o">*</span><a href="https:// [...]
<span class="nb">print</span><span class="p">(</span><span
class="n">gpu_out</span><span class="p">)</span>
<span class="c1"># Check the correctness of the results</span>
<span class="k">assert</span> <span class="n">np</span><span
class="o">.</span><span class="n">allclose</span><span class="p">(</span><span
class="n">cpu_out</span><span class="p">,</span> <span
class="n">gpu_out</span><span class="p">,</span> <span
class="n">atol</span><span class="o">=</span><span class="mf">1e-3</span><span
class="p">)</span>
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[ 0.09490887 -0.03583203 0.06150762
-0.13896267 0.05049002 -0.10532829
- 0.10084124 0.11770255 -0.03419299 -0.01728291]]
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[ 0.05399039 0.07950439 -0.14197844
-0.04814525 -0.00679814 -0.05149406
+ 0.18930398 0.14563179 -0.00740505 -0.13171828]]
</pre></div>
</div>
</section>
diff --git a/docs/get_started/tutorials/quick_start.html
b/docs/get_started/tutorials/quick_start.html
index 23978c372f..8d365cc296 100644
--- a/docs/get_started/tutorials/quick_start.html
+++ b/docs/get_started/tutorials/quick_start.html
@@ -449,16 +449,16 @@ different devices.</p>
<a href="../../reference/api/python/target.html#tvm.target.Target"
title="tvm.target.Target" class="sphx-glr-backref-module-tvm-target
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">target</span></a> <span class="o">=</span> <a
href="../../reference/api/python/target.html#tvm.target.Target"
title="tvm.target.Target" class="sphx-glr-backref-module-tvm-target
sphx-glr-backref-type-py-class"><span class="n">tvm</span><span
class="o">.</span><span class="n">target< [...]
<a href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">ex</span></a> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-function"><span
class="n">tvm</span><span class="o">.</span><span class="n">compile</span [...]
<span class="n">device</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">cpu</span><span
class="p">()</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class=" [...]
<span class="n">data</span> <span class="o">=</span> <span
class="n">np</span><span class="o">.</span><span class="n">random</span><span
class="o">.</span><span class="n">rand</span><span class="p">(</span><span
class="mi">1</span><span class="p">,</span> <span class="mi">784</span><span
class="p">)</span><span class="o">.</span><span class="n">astype</span><span
class="p">(</span><span class="s2">"float32"</span><span
class="p">)</span>
<span class="n">tvm_data</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">data</span><span class="p">,</span> <span
class="n">device</span><span class="o">=</span><span
class="n">device</span><span class="p">)</span>
<a href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">params</span></a> <span class="o">=</span> <span
class="p">[</span><span class="n">np</span><span class="o">.</span><span
class="n">random</span><span class="o">.</span><span class="n">rand</span><span
class="p">(</span><span class="o">*</span><span class="n">param</span><span
class="o">.</sp [...]
<a href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">params</span></a> <span class="o">=</span> <span
class="p">[</span><span class="n">tvm</span><span class="o">.</span><span
class="n">runtime</span><span class="o">.</span><span
class="n">tensor</span><span class="p">(</span><span
class="n">param</span><span class="p">,</span> <span class="n"> [...]
-<span class="nb">print</span><span class="p">(</span><span
class="n">vm</span><span class="p">[</span><span
class="s2">"forward"</span><span class="p">](</span><span
class="n">tvm_data</span><span class="p">,</span> <span class="o">*</span><a
href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">params</span></a><span class="p">)</span><s [...]
+<span class="nb">print</span><span class="p">(</span><a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"forward"</span><span
class="p">](</span><span class="n">tvm_data</span><span class="p">,</span>
<span class="o">*</span><a href="http [...]
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[25623.697 27297.902 25809.043 25427.236
26135.32 25893.604 24258.6
- 25295.38 25667.58 25015.475]]
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[24428.926 26845.727 25194.346 25011.664
26348.475 25142.502 24988.672
+ 26453.643 25961.184 25071.375]]
</pre></div>
</div>
<p>Our goal is to bring machine learning to the application with any language
of interest,
@@ -466,8 +466,8 @@ with the minimum runtime support.</p>
<ul>
<li><p>Each function in IRModule becomes a runnable function in the runtime.
For example in LLM
cases, we can call <code class="docutils literal notranslate"><span
class="pre">prefill</span></code> and <code class="docutils literal
notranslate"><span class="pre">decode</span></code> functions directly.</p>
-<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><span class="n">prefill_logits</span> <span
class="o">=</span> <span class="n">vm</span><span class="p">[</span><span
class="s2">"prefill"</span><span class="p">](</span><span
class="n">inputs</span><span class="p">,</span> <span
class="n">weight</span><span class="p">,</span> <span
class="n">kv_cache</span><span class="p">)</span>
-<span class="n">decoded_logits</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"decode"</span><span class="p">](</span><span
class="n">inputs</span><span class="p">,</span> <span
class="n">weight</span><span class="p">,</span> <span
class="n">kv_cache</span><span class="p">)</span>
+<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><span class="n">prefill_logits</span> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"prefill"</span><span
class="p">](</span> [...]
+<span class="n">decoded_logits</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"decode"</span><span
class="p">](</span><span class="n">inputs</span><span class="p">,</span> <span
class="n">weight</span>< [...]
</pre></div>
</div>
</li>
@@ -482,15 +482,15 @@ copy exchange with existing ecosystem (DLPack exchange
with PyTorch)</p>
</li>
<li><p>TVM runtime works in non-python environments, so it works on settings
such as mobile</p>
<div class="highlight-C++ notranslate"><div
class="highlight"><pre><span></span><span class="c1">// C++ snippet</span>
-<span class="n">runtime</span><span class="o">::</span><span
class="n">Module</span><span class="w"> </span><span class="n">vm</span><span
class="w"> </span><span class="o">=</span><span class="w"> </span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">ex</span></a><span class="p">.</span><span class="n">GetFunction [...]
-<span class="n">vm</span><span class="p">.</span><span
class="n">GetFunction</span><span class="p">(</span><span
class="s">"init"</span><span class="p">)(...);</span>
-<span class="n">Tensor</span><span class="w"> </span><span
class="n">out</span><span class="w"> </span><span class="o">=</span><span
class="w"> </span><span class="n">vm</span><span class="p">.</span><span
class="n">GetFunction</span><span class="p">(</span><span
class="s">"prefill"</span><span class="p">)(</span><span
class="n">data</span><span class="p">,</span><span class="w"> </span><span
class="n">weight</span><span class="p">,</span><span class="w"> </span><span
class="n" [...]
+<span class="n">runtime</span><span class="o">::</span><span
class="n">Module</span><span class="w"> </span><a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span class="w">
</span><span class="o">=</span><span class="w"> </span><a
href="../../reference/api/python/relax/relax.html#tvm.r [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">.</span><span class="n">GetFunction</span><span
class="p">(</span><span class="s">"init"</span><span
class="p">)(...);</span>
+<span class="n">Tensor</span><span class="w"> </span><span
class="n">out</span><span class="w"> </span><span class="o">=</span><span
class="w"> </span><a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">.</span><span class="n">GetFunction</span><span
class="p">(</span><span [...]
</pre></div>
</div>
<div class="highlight-Java notranslate"><div
class="highlight"><pre><span></span><span class="c1">// Java snippet</span>
-<span class="n">Module</span><span class="w"> </span><span
class="n">vm</span><span class="w"> </span><span class="o">=</span><span
class="w"> </span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">ex</span></a><span class="p">.</span><span
class="na">getFunction</span><span class="p">(</span><span class="s">"l
[...]
-<span class="n">vm</span><span class="p">.</span><span
class="na">getFunction</span><span class="p">(</span><span
class="s">"init"</span><span class="p">).</span><span
class="na">pushArg</span><span class="p">(...).</span><span
class="na">invoke</span><span class="p">;</span>
-<span class="n">Tensor</span><span class="w"> </span><span
class="n">out</span><span class="w"> </span><span class="o">=</span><span
class="w"> </span><span class="n">vm</span><span class="p">.</span><span
class="na">getFunction</span><span class="p">(</span><span
class="s">"prefill"</span><span class="p">).</span><span
class="na">pushArg</span><span class="p">(</span><span
class="n">data</span><span class="p">).</span><span
class="na">pushArg</span><span class="p">(</span><spa [...]
+<span class="n">Module</span><span class="w"> </span><a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span class="w">
</span><span class="o">=</span><span class="w"> </span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">.</span><span class="na">getFunction</span><span
class="p">(</span><span class="s">"init"</span><span
class="p">).</span><span class="na">pushArg</span><span
class="p">(...).</span><span class="na">invoke</span>< [...]
+<span class="n">Tensor</span><span class="w"> </span><span
class="n">out</span><span class="w"> </span><span class="o">=</span><span
class="w"> </span><a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">.</span><span class="na">getFunction</span><span
class="p">(</span><spa [...]
</pre></div>
</div>
</li>
diff --git a/docs/get_started/tutorials/sg_execution_times.html
b/docs/get_started/tutorials/sg_execution_times.html
index c6e745c454..04df8ff7a3 100644
--- a/docs/get_started/tutorials/sg_execution_times.html
+++ b/docs/get_started/tutorials/sg_execution_times.html
@@ -294,7 +294,7 @@
<section id="computation-times">
<span
id="sphx-glr-get-started-tutorials-sg-execution-times"></span><h1>Computation
times<a class="headerlink" href="#computation-times" title="Link to this
heading"></a></h1>
-<p><strong>00:07.566</strong> total execution time for 2 files <strong>from
get_started/tutorials</strong>:</p>
+<p><strong>00:05.112</strong> total execution time for 2 files <strong>from
get_started/tutorials</strong>:</p>
<div class="docutils container">
<style scoped>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.0/css/bootstrap.min.css"
rel="stylesheet" />
@@ -316,11 +316,11 @@ $(document).ready( function () {
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference internal"
href="ir_module.html#sphx-glr-get-started-tutorials-ir-module-py"><span
class="std std-ref">IRModule</span></a> (<code class="docutils literal
notranslate"><span class="pre">ir_module.py</span></code>)</p></td>
-<td><p>00:07.390</p></td>
+<td><p>00:04.940</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="quick_start.html#sphx-glr-get-started-tutorials-quick-start-py"><span
class="std std-ref">Quick Start</span></a> (<code class="docutils literal
notranslate"><span class="pre">quick_start.py</span></code>)</p></td>
-<td><p>00:00.176</p></td>
+<td><p>00:00.172</p></td>
<td><p>0.0</p></td>
</tr>
</tbody>
diff --git a/docs/how_to/tutorials/cross_compilation_and_rpc.html
b/docs/how_to/tutorials/cross_compilation_and_rpc.html
index f636a21aac..373189ea08 100644
--- a/docs/how_to/tutorials/cross_compilation_and_rpc.html
+++ b/docs/how_to/tutorials/cross_compilation_and_rpc.html
@@ -473,7 +473,7 @@ device and returns the measured cost. Network overhead is
excluded.</p>
<span class="nb">print</span><span class="p">(</span><span
class="s2">"</span><span class="si">%g</span><span class="s2">
secs/op"</span> <span class="o">%</span> <span class="n">cost</span><span
class="p">)</span>
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>1.44e-07 secs/op
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>1.27e-07 secs/op
</pre></div>
</div>
</section>
@@ -822,8 +822,8 @@ for ONNX models. Simply replace <code class="docutils
literal notranslate"><span
<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>Converted PyTorch model to Relax:
- Number of parameters: 4
Using local target for demonstration
-Exported library to: /tmp/tmpyabp1qi4/model_deployed.so
-Saved parameters to: /tmp/tmpyabp1qi4/model_params.npz
+Exported library to: /tmp/tmpzla33jgl/model_deployed.so
+Saved parameters to: /tmp/tmpzla33jgl/model_params.npz
RPC workflow (works for any remote device):
==================================================
diff --git a/docs/how_to/tutorials/customize_opt.html
b/docs/how_to/tutorials/customize_opt.html
index a0e8f2e5e9..794256541d 100644
--- a/docs/how_to/tutorials/customize_opt.html
+++ b/docs/how_to/tutorials/customize_opt.html
@@ -607,16 +607,16 @@ pushing the performance to the limit. The current
optimization may not be the be
<p>We can build and deploy the optimized model to the TVM runtime.</p>
<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">ex</span></a> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-functi [...]
<span class="n">dev</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">device</span><span
class="p">(</span><span class="s2">"cuda"</span><span
class="p">,</span> <span class="mi">0</span><span class="p">)</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class [...]
+<a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class=" [...]
<span class="c1"># Need to allocate data and params on GPU device</span>
<span class="n">data</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">np</span><span class="o">.</span><span class="n">random</span><span
class="o">.</span><span class="n">rand</span><span class="p">(</span><span
class="o">*</span><a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-ba [...]
<a href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">gpu_params</span></a> <span class="o">=</span> <span
class="p">[</span><span class="n">tvm</span><span class="o">.</span><span
class="n">runtime</span><span class="o">.</span><span
class="n">tensor</span><span class="p">(</span><span class="n">np</span><span
class="o">.</span><span class="n"> [...]
-<span class="n">gpu_out</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"forward"</span><span class="p">](</span><span
class="n">data</span><span class="p">,</span> <span class="o">*</span><a
href="https://docs.python.org/3/library/stdtypes.html#list"
title="builtins.list" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">gpu_params</span></a><span class="p">)</span [...]
+<span class="n">gpu_out</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"forward"</span><span
class="p">](</span><span class="n">data</span><span class="p">,</span> <span
class="o">*</span><a href="https [...]
<span class="nb">print</span><span class="p">(</span><span
class="n">gpu_out</span><span class="p">)</span>
</pre></div>
</div>
-<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[25020.787 25094.88 24134.51 26182.402
25592.227 25506.64 24376.805
- 25132.742 23470.238 25678.094]]
+<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>[[24056.95 23400.213 24763.447 24957.5
24419.238 23919.822 23740.305
+ 25459.414 23783.598 25156.863]]
</pre></div>
</div>
</section>
diff --git a/docs/how_to/tutorials/e2e_opt_model.html
b/docs/how_to/tutorials/e2e_opt_model.html
index 9a328bb036..7e2c9ddb44 100644
--- a/docs/how_to/tutorials/e2e_opt_model.html
+++ b/docs/how_to/tutorials/e2e_opt_model.html
@@ -328,8 +328,8 @@ PyTorch.</p>
<div class="sphx-glr-script-out highlight-none notranslate"><div
class="highlight"><pre><span></span>Downloading:
"https://download.pytorch.org/models/resnet18-f37072fd.pth" to
/workspace/.cache/torch/hub/checkpoints/resnet18-f37072fd.pth
0%| | 0.00/44.7M [00:00<?, ?B/s]
- 46%|████▌ | 20.5M/44.7M [00:00<00:00, 215MB/s]
-100%|██████████| 44.7M/44.7M [00:00<00:00, 253MB/s]
+ 58%|█████▊ | 26.1M/44.7M [00:00<00:00, 273MB/s]
+100%|██████████| 44.7M/44.7M [00:00<00:00, 301MB/s]
</pre></div>
</div>
</section>
@@ -430,7 +430,7 @@ We skip this step in the CI environment.</p>
<span class="n">mod</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">tir</span><span
class="o">.</span><span class="n">transform</span><span class="o">.</span><span
class="n">DefaultGPUSchedule</span><span class="p">()(</span><span
class="n">mod</span><span class="p">)</span>
<span class="n">ex</span> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-function"><span
class="n">tvm</span><span class="o">.</span><span
class="n">compile</span></a><span class="p">(</span><span
class="n">mod</span><span class="p">,</span> <a
href="../../reference/api/python/target.html#tvm.target.Target"
title="tvm.target.Target" class="sphx-glr-backref-module-tvm [...]
<span class="n">dev</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">device</span><span
class="p">(</span><span class="s2">"cuda"</span><span
class="p">,</span> <span class="mi">0</span><span class="p">)</span>
- <span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><span
class="n">ex</span><span class="p">,</span> <span class="n">dev</span><span
class="p">)</span>
+ <span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class="n">relax</span><span
class="o">.</span><span class="n">VirtualMachine</span></a><span
class="p">(</span><span class="n">ex</span><span class="p">,</span> <span
class="n">dev</span><span class="p">)</span>
<span class="c1"># Need to allocate data and params on GPU device</span>
<span class="n">gpu_data</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">np</span><span class="o">.</span><span class="n">random</span><span
class="o">.</span><span class="n">rand</span><span class="p">(</span><span
class="mi">1</span><span class="p">,</span> <span class="mi">3</span><span
class="p">,</span> <span class="mi">224< [...]
<span class="n">gpu_params</span> <span class="o">=</span> <span
class="p">[</span><span class="n">tvm</span><span class="o">.</span><span
class="n">runtime</span><span class="o">.</span><span
class="n">tensor</span><span class="p">(</span><span class="n">p</span><span
class="p">,</span> <span class="n">dev</span><span class="p">)</span> <span
class="k">for</span> <span class="n">p</span> <span class="ow">in</span> <span
class="n">params</span><span class="p">[</span><span class="s2" [...]
diff --git a/docs/how_to/tutorials/export_and_load_executable.html
b/docs/how_to/tutorials/export_and_load_executable.html
index fee4276947..45a452f24a 100644
--- a/docs/how_to/tutorials/export_and_load_executable.html
+++ b/docs/how_to/tutorials/export_and_load_executable.html
@@ -441,7 +441,7 @@ runtime module directly.</p>
<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><span class="k">if</span> <a
href="https://docs.python.org/3/library/functions.html#bool"
title="builtins.bool" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">RUN_EXAMPLE</span></a><span class="p">:</span>
<span class="n">loaded_rt_mod</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">load_module</span><span
class="p">(</span><span class="nb">str</span><span class="p">(</span><span
class="n">library_path</span><span class="p">))</span>
<span class="n">dev</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">cpu</span><span
class="p">(</span><span class="mi">0</span><span class="p">)</span>
- <span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><span
class="n">loaded_rt_mod</span><span class="p">,</span> <span
class="n">dev</span><span class="p">)</span>
+ <span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class="n">relax</span><span
class="o">.</span><span class="n">VirtualMachine</span></a><span
class="p">(</span><span class="n">loaded_rt_mod</span><span class="p">,</span>
<span class="n">dev</span><span class="p">)</span>
<span class="c1"># Prepare input data</span>
<span class="n">input_tensor</span> <span class="o">=</span> <span
class="n">torch</span><span class="o">.</span><span class="n">randn</span><span
class="p">(</span><span class="mi">1</span><span class="p">,</span> <span
class="mi">1</span><span class="p">,</span> <span class="mi">28</span><span
class="p">,</span> <span class="mi">28</span><span class="p">,</span> <span
class="n">dtype</span><span class="o">=</span><span class="n">torch</span><span
class="o">.</span><span class="n">f [...]
@@ -522,7 +522,7 @@ of how to reload and run the model. Save this as <code
class="docutils literal n
<span class="c1"># Step 2: Create Virtual Machine</span>
<span class="n">device</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">cpu</span><span
class="p">(</span><span class="mi">0</span><span class="p">)</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><span
class="n">lib</span><span class="p">,</span> <span class="n">device</span><span
class="p">)</span>
+<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class="n">relax</span><span
class="o">.</span><span class="n">VirtualMachine</span></a><span
class="p">(</span><span class="n">lib</span><span class="p">,</span> <span
class="n">device</span><span class="p">)</span>
<span class="c1"># Step 3: Load parameters from the .npz file</span>
<span class="n">params_npz</span> <span class="o">=</span> <span
class="n">np</span><span class="o">.</span><span class="n">load</span><span
class="p">(</span><span
class="s2">"relax_export_artifacts/model_params.npz"</span><span
class="p">)</span>
@@ -557,7 +557,7 @@ To run on GPU instead of CPU, make the following
changes:</p>
</li>
<li><p><strong>Use GPU device in the script</strong>:</p>
<div class="highlight-python notranslate"><div
class="highlight"><pre><span></span><span class="n">device</span> <span
class="o">=</span> <span class="n">tvm</span><span class="o">.</span><span
class="n">cuda</span><span class="p">(</span><span class="mi">0</span><span
class="p">)</span> <span class="c1"># Use CUDA device instead of CPU</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><span
class="n">lib</span><span class="p">,</span> <span class="n">device</span><span
class="p">)</span>
+<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class="n">relax</span><span
class="o">.</span><span class="n">VirtualMachine</span></a><span
class="p">(</span><span class="n">lib</span><span class="p">,</span> <span
class="n">device</span><span class="p">)</span>
<span class="c1"># Load parameters to GPU</span>
<span class="n">params</span> <span class="o">=</span> <span
class="p">[</span><span class="n">tvm</span><span class="o">.</span><span
class="n">runtime</span><span class="o">.</span><span
class="n">tensor</span><span class="p">(</span><span
class="n">params_npz</span><span class="p">[</span><span
class="sa">f</span><span class="s2">"p_</span><span
class="si">{</span><span class="n">i</span><span class="si">}</span><span
class="s2">"</span><span class="p">],</span> <span class= [...]
@@ -622,7 +622,7 @@ for a comprehensive guide on:</p>
<span class="c1"># Step 4: Load and run on remote device</span>
<span class="n">lib</span> <span class="o">=</span> <span
class="n">remote</span><span class="o">.</span><span
class="n">load_module</span><span class="p">(</span><span
class="s2">"mlp_arm.so"</span><span class="p">)</span>
-<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><span
class="n">lib</span><span class="p">,</span> <span class="n">remote</span><span
class="o">.</span><span cla [...]
+<span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span class="n">relax</span><span
class="o">.</span><span class="n">VirtualMachine</span></a><span
class="p">(</span><span class="n">lib</span><span class="p">,</span> <span
class="n">remote</span><span class="o">.</span><span class="n">cpu</ [...]
<span class="c1"># ... prepare input and params, then run inference</span>
</pre></div>
</div>
diff --git a/docs/how_to/tutorials/optimize_llm.html
b/docs/how_to/tutorials/optimize_llm.html
index ad88268823..3640bca030 100644
--- a/docs/how_to/tutorials/optimize_llm.html
+++ b/docs/how_to/tutorials/optimize_llm.html
@@ -726,7 +726,7 @@ is designed specifically for the LLMs.</p>
<span class="k">with</span> <a
href="../../reference/api/python/target.html#tvm.target.Target"
title="tvm.target.Target" class="sphx-glr-backref-module-tvm-target
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">target</span></a><span class="p">:</span>
<a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">ex</span></a> <span class="o">=</span> <a
href="../../reference/api/python/driver.html#tvm.compile" title="tvm.compile"
class="sphx-glr-backref-module-tvm sphx-glr-backref-type-py-function"><span
class="n">tvm</span><span class="o">.</span><span class="n">compile</ [...]
- <span class="n">vm</span> <span class="o">=</span> <a
href="../../reference/api/python/relax/relax.html#tvm.relax.VirtualMachine"
title="tvm.relax.VirtualMachine" class="sphx-glr-backref-module-tvm-relax
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">relax</span><span class="o">.</span><span
class="n">VirtualMachine</span></a><span class="p">(</span><a
href="../../reference/api/python/relax/relax.html#tvm.relax.VMExecutable"
title="tvm.relax.VMExecutable" c [...]
+ <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a> <span
class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm
sphx-glr-backref-type-py-class"><span cla [...]
</pre></div>
</div>
</section>
@@ -824,7 +824,7 @@ the model documentation for the correct tokenization and
prompt format.</p>
key and value tensors for the attention layer. Apache TVM provides a
PagedKVCache to store the
key and value tensors. We create the PagedKVCache with the specified
parameters.</p>
<div class="highlight-Python notranslate"><div
class="highlight"><pre><span></span><span class="k">if</span> <span
class="ow">not</span> <a
href="https://docs.python.org/3/library/functions.html#bool"
title="builtins.bool" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class sphx-glr-backref-instance"><span
class="n">IS_IN_CI</span></a><span class="p">:</span>
- <span class="n">kv_cache</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"create_tir_paged_kv_cache"</span><span class="p">](</span>
+ <span class="n">kv_cache</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span
class="s2">"create_tir_paged_kv_cache"</span><span class="p">](</span>
<a href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="mi">1</span><span class="p">]),</span> <span
class="c1"># max_batch_size=1</span>
<a href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="mi">2048</span><span class="p">]),</span>
<span class="c1"># max_total_seq_len=2048</span>
<a href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="mi">2048</span><span class="p">]),</span>
<span class="c1"># prefill_chunk_size=2048</span>
@@ -841,7 +841,7 @@ compiled in the Relax IRModule to embed the tokens into the
hidden states.</p>
<span class="k">def</span><span class="w"> </span><span
class="nf">embed</span><span class="p">(</span><span
class="n">tokens</span><span class="p">,</span> <span
class="n">params</span><span class="p">):</span>
- <span class="n">_embed</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"embed"</span><span class="p">](</span><span
class="n">tokens</span><span class="p">,</span> <span
class="n">params</span><span class="p">)</span>
+ <span class="n">_embed</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"embed"</span><span
class="p">](</span><span class="n">tokens</span><span class="p">,</span> <span
class="n">params</span><span [...]
<span class="c1"># Reshape hidden from [seq_len, hidden_size] to [1,
seq_len, hidden_size]</span>
<span class="n">_embed</span> <span class="o">=</span> <span
class="n">nd_view_func</span><span class="p">(</span><span
class="n">_embed</span><span class="p">,</span> <a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="mi">1</span><span class="p">,</span> <span
class="n">_embed</span><span class="o">.</s [...]
<span class="k">return</span> <span class="n">_embed</span>
@@ -864,7 +864,7 @@ and <cite>end_forward_func</cite> to end the forward
pass.</p>
<span class="n">add_sequence_func</span><span class="p">(</span><span
class="n">kv_cache</span><span class="p">,</span> <span
class="n">seq_id</span><span class="p">)</span>
<span class="n">hidden_states</span> <span class="o">=</span> <span
class="n">embed</span><span class="p">(</span><span
class="n">tokens</span><span class="p">,</span> <span
class="n">params</span><span class="p">)</span>
<span class="n">begin_forward_func</span><span class="p">(</span><span
class="n">kv_cache</span><span class="p">,</span> <a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="n">seq_id</span><span class="p">]),</span> <a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" cla [...]
- <span class="n">logits</span><span class="p">,</span> <span
class="n">kv_cache</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"prefill"</span><span class="p">](</span><span
class="n">hidden_states</span><span class="p">,</span> <span
class="n">kv_cache</span><span class="p">,</span> <span
class="n">params</span><span class="p">)</span>
+ <span class="n">logits</span><span class="p">,</span> <span
class="n">kv_cache</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"prefill"</span><span
class="p">](</span><span class="n">hidden_states</ [...]
<span class="n">end_forward_func</span><span class="p">(</span><span
class="n">kv_cache</span><span class="p">)</span>
</pre></div>
</div>
@@ -896,7 +896,7 @@ IRModule to generate the token.</p>
<span class="n">tokens</span> <span class="o">=</span> <span
class="n">tvm</span><span class="o">.</span><span class="n">runtime</span><span
class="o">.</span><span class="n">tensor</span><span class="p">(</span><span
class="n">np</span><span class="o">.</span><span class="n">array</span><span
class="p">([</span><span class="n">last_token</span><span
class="p">])</span><span class="o">.</span><span class="n">astype</span><span
class="p">(</span><span class="s2">"int32"< [...]
<span class="n">hidden_states</span> <span class="o">=</span> <span
class="n">embed</span><span class="p">(</span><span
class="n">tokens</span><span class="p">,</span> <span
class="n">params</span><span class="p">)</span>
<span class="n">begin_forward_func</span><span class="p">(</span><span
class="n">kv_cache</span><span class="p">,</span> <a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" class="sphx-glr-backref-module-builtins
sphx-glr-backref-type-py-class"><span class="n">ShapeTuple</span></a><span
class="p">([</span><span class="n">seq_id</span><span class="p">]),</span> <a
href="https://docs.python.org/3/library/stdtypes.html#tuple"
title="builtins.tuple" [...]
- <span class="n">logits</span><span class="p">,</span> <span
class="n">kv_cache</span> <span class="o">=</span> <span
class="n">vm</span><span class="p">[</span><span
class="s2">"decode"</span><span class="p">](</span><span
class="n">hidden_states</span><span class="p">,</span> <span
class="n">kv_cache</span><span class="p">,</span> <span
class="n">params</span><span class="p">)</span>
+ <span class="n">logits</span><span class="p">,</span> <span
class="n">kv_cache</span> <span class="o">=</span> <a
href="../../reference/api/python/runtime/vm.html#tvm.runtime.vm.VirtualMachine"
title="tvm.runtime.vm.VirtualMachine"
class="sphx-glr-backref-module-tvm-runtime-vm sphx-glr-backref-type-py-class
sphx-glr-backref-instance"><span class="n">vm</span></a><span
class="p">[</span><span class="s2">"decode"</span><span
class="p">](</span><span class="n">hidden_state [...]
<span class="n">end_forward_func</span><span class="p">(</span><span
class="n">kv_cache</span><span class="p">)</span>
<span class="n">last_token</span> <span class="o">=</span> <span
class="n">sample_token</span><span class="p">(</span><span
class="n">logits</span><span class="p">)</span>
diff --git a/docs/how_to/tutorials/sg_execution_times.html
b/docs/how_to/tutorials/sg_execution_times.html
index 3ba8fdc0b2..1acf739265 100644
--- a/docs/how_to/tutorials/sg_execution_times.html
+++ b/docs/how_to/tutorials/sg_execution_times.html
@@ -294,7 +294,7 @@
<section id="computation-times">
<span id="sphx-glr-how-to-tutorials-sg-execution-times"></span><h1>Computation
times<a class="headerlink" href="#computation-times" title="Link to this
heading"></a></h1>
-<p><strong>00:32.554</strong> total execution time for 5 files <strong>from
how_to/tutorials</strong>:</p>
+<p><strong>00:31.499</strong> total execution time for 5 files <strong>from
how_to/tutorials</strong>:</p>
<div class="docutils container">
<style scoped>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.0/css/bootstrap.min.css"
rel="stylesheet" />
@@ -316,19 +316,19 @@ $(document).ready( function () {
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference internal"
href="optimize_llm.html#sphx-glr-how-to-tutorials-optimize-llm-py"><span
class="std std-ref">Optimize Large Language Model</span></a> (<code
class="docutils literal notranslate"><span
class="pre">optimize_llm.py</span></code>)</p></td>
-<td><p>00:30.315</p></td>
+<td><p>00:29.639</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="cross_compilation_and_rpc.html#sphx-glr-how-to-tutorials-cross-compilation-and-rpc-py"><span
class="std std-ref">Cross Compilation and RPC</span></a> (<code
class="docutils literal notranslate"><span
class="pre">cross_compilation_and_rpc.py</span></code>)</p></td>
-<td><p>00:00.807</p></td>
+<td><p>00:00.743</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="customize_opt.html#sphx-glr-how-to-tutorials-customize-opt-py"><span
class="std std-ref">Customize Optimization</span></a> (<code class="docutils
literal notranslate"><span class="pre">customize_opt.py</span></code>)</p></td>
-<td><p>00:00.761</p></td>
+<td><p>00:00.658</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="e2e_opt_model.html#sphx-glr-how-to-tutorials-e2e-opt-model-py"><span
class="std std-ref">End-to-End Optimize Model</span></a> (<code class="docutils
literal notranslate"><span class="pre">e2e_opt_model.py</span></code>)</p></td>
-<td><p>00:00.670</p></td>
+<td><p>00:00.457</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="export_and_load_executable.html#sphx-glr-how-to-tutorials-export-and-load-executable-py"><span
class="std std-ref">Export and Load Relax Executables</span></a> (<code
class="docutils literal notranslate"><span
class="pre">export_and_load_executable.py</span></code>)</p></td>
diff --git a/docs/objects.inv b/docs/objects.inv
index d4aa06bcd5..1d581372c5 100644
Binary files a/docs/objects.inv and b/docs/objects.inv differ
diff --git a/docs/reference/api/python/relax/relax.html
b/docs/reference/api/python/relax/relax.html
index b92fea37c4..77667b8c3f 100644
--- a/docs/reference/api/python/relax/relax.html
+++ b/docs/reference/api/python/relax/relax.html
@@ -2625,7 +2625,7 @@ Python functions stored in the IRModule’s pyfuncs
attribute.</p>
<dl class="py function">
<dt class="sig sig-object py" id="tvm.relax.build">
-<span class="sig-prename descclassname"><span
class="pre">tvm.relax.</span></span><span class="sig-name descname"><span
class="pre">build</span></span><span class="sig-paren">(</span><em
class="sig-param"><span class="n"><span class="pre">mod</span></span><span
class="p"><span class="pre">:</span></span><span class="w"> </span><span
class="n"><a class="reference internal" href="../ir.html#tvm.ir.IRModule"
title="tvm.ir.module.IRModule"><span
class="pre">IRModule</span></a></span></em>, < [...]
+<span class="sig-prename descclassname"><span
class="pre">tvm.relax.</span></span><span class="sig-name descname"><span
class="pre">build</span></span><span class="sig-paren">(</span><em
class="sig-param"><span class="n"><span class="pre">mod</span></span><span
class="p"><span class="pre">:</span></span><span class="w"> </span><span
class="n"><a class="reference internal" href="../ir.html#tvm.ir.IRModule"
title="tvm.ir.module.IRModule"><span
class="pre">IRModule</span></a></span></em>, < [...]
<dd><p>Build an IRModule to VM executable.</p>
<dl class="field-list simple">
<dt class="field-odd">Parameters<span class="colon">:</span></dt>
diff --git a/docs/reference/api/python/runtime/vm.html
b/docs/reference/api/python/runtime/vm.html
index 08a8b00ee4..691506bbf5 100644
--- a/docs/reference/api/python/runtime/vm.html
+++ b/docs/reference/api/python/runtime/vm.html
@@ -490,7 +490,7 @@ more details.</p>
<div class="admonition seealso">
<p class="admonition-title">See also</p>
<dl class="simple">
-<dt><a class="reference internal"
href="../relax/relax.html#tvm.relax.VMInstrumentReturnKind"
title="tvm.runtime.vm.VMInstrumentReturnKind"><code class="xref py py-obj
docutils literal notranslate"><span
class="pre">VMInstrumentReturnKind</span></code></a></dt><dd><p>the possible
return values in VM.</p>
+<dt><a class="reference internal"
href="#tvm.runtime.vm.VMInstrumentReturnKind"
title="tvm.runtime.vm.VMInstrumentReturnKind"><code class="xref py py-obj
docutils literal notranslate"><span
class="pre">VMInstrumentReturnKind</span></code></a></dt><dd><p>the possible
return values in VM.</p>
</dd>
</dl>
</div>
diff --git a/docs/searchindex.js b/docs/searchindex.js
index a396d92eb9..6fa7076222 100644
--- a/docs/searchindex.js
+++ b/docs/searchindex.js
@@ -1 +1 @@
-Search.setIndex({"alltitles": {"1. Cross Compile TVM Runtime": [[40,
"cross-compile-tvm-runtime"]], "1. The lack of numpy on device machine caused
the RPC server can\u2019t be launched.": [[40,
"the-lack-of-numpy-on-device-machine-caused-the-rpc-server-can-t-be-launched"]],
"2. Pack and Deploy to Device Machine": [[40,
"pack-and-deploy-to-device-machine"]], "2. The lack of cloudpickle on device
machine caused the RPC server can\u2019t be launched.": [[40,
"the-lack-of-cloudpickle-on-devi [...]
\ No newline at end of file
+Search.setIndex({"alltitles": {"1. Cross Compile TVM Runtime": [[40,
"cross-compile-tvm-runtime"]], "1. The lack of numpy on device machine caused
the RPC server can\u2019t be launched.": [[40,
"the-lack-of-numpy-on-device-machine-caused-the-rpc-server-can-t-be-launched"]],
"2. Pack and Deploy to Device Machine": [[40,
"pack-and-deploy-to-device-machine"]], "2. The lack of cloudpickle on device
machine caused the RPC server can\u2019t be launched.": [[40,
"the-lack-of-cloudpickle-on-devi [...]
\ No newline at end of file
diff --git a/docs/sg_execution_times.html b/docs/sg_execution_times.html
index 8d06b1b64c..4c7bd457d3 100644
--- a/docs/sg_execution_times.html
+++ b/docs/sg_execution_times.html
@@ -294,7 +294,7 @@
<section id="computation-times">
<span id="sphx-glr-sg-execution-times"></span><h1>Computation times<a
class="headerlink" href="#computation-times" title="Link to this
heading"></a></h1>
-<p><strong>00:40.752</strong> total execution time for 11 files <strong>from
all galleries</strong>:</p>
+<p><strong>00:37.229</strong> total execution time for 11 files <strong>from
all galleries</strong>:</p>
<div class="docutils container">
<style scoped>
<link
href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/5.3.0/css/bootstrap.min.css"
rel="stylesheet" />
@@ -316,43 +316,43 @@ $(document).ready( function () {
</thead>
<tbody>
<tr class="row-even"><td><p><a class="reference internal"
href="how_to/tutorials/optimize_llm.html#sphx-glr-how-to-tutorials-optimize-llm-py"><span
class="std std-ref">Optimize Large Language Model</span></a> (<code
class="docutils literal notranslate"><span
class="pre">../how_to/tutorials/optimize_llm.py</span></code>)</p></td>
-<td><p>00:30.315</p></td>
+<td><p>00:29.639</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="get_started/tutorials/ir_module.html#sphx-glr-get-started-tutorials-ir-module-py"><span
class="std std-ref">IRModule</span></a> (<code class="docutils literal
notranslate"><span
class="pre">../get_started/tutorials/ir_module.py</span></code>)</p></td>
-<td><p>00:07.390</p></td>
+<td><p>00:04.940</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="how_to/tutorials/cross_compilation_and_rpc.html#sphx-glr-how-to-tutorials-cross-compilation-and-rpc-py"><span
class="std std-ref">Cross Compilation and RPC</span></a> (<code
class="docutils literal notranslate"><span
class="pre">../how_to/tutorials/cross_compilation_and_rpc.py</span></code>)</p></td>
-<td><p>00:00.807</p></td>
+<td><p>00:00.743</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="how_to/tutorials/customize_opt.html#sphx-glr-how-to-tutorials-customize-opt-py"><span
class="std std-ref">Customize Optimization</span></a> (<code class="docutils
literal notranslate"><span
class="pre">../how_to/tutorials/customize_opt.py</span></code>)</p></td>
-<td><p>00:00.761</p></td>
+<td><p>00:00.658</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="how_to/tutorials/e2e_opt_model.html#sphx-glr-how-to-tutorials-e2e-opt-model-py"><span
class="std std-ref">End-to-End Optimize Model</span></a> (<code
class="docutils literal notranslate"><span
class="pre">../how_to/tutorials/e2e_opt_model.py</span></code>)</p></td>
-<td><p>00:00.670</p></td>
+<td><p>00:00.457</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="deep_dive/tensor_ir/tutorials/tir_transformation.html#sphx-glr-deep-dive-tensor-ir-tutorials-tir-transformation-py"><span
class="std std-ref">Transformation</span></a> (<code class="docutils literal
notranslate"><span
class="pre">../deep_dive/tensor_ir/tutorials/tir_transformation.py</span></code>)</p></td>
-<td><p>00:00.289</p></td>
+<td><p>00:00.287</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="get_started/tutorials/quick_start.html#sphx-glr-get-started-tutorials-quick-start-py"><span
class="std std-ref">Quick Start</span></a> (<code class="docutils literal
notranslate"><span
class="pre">../get_started/tutorials/quick_start.py</span></code>)</p></td>
-<td><p>00:00.176</p></td>
+<td><p>00:00.172</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="deep_dive/tensor_ir/tutorials/tir_creation.html#sphx-glr-deep-dive-tensor-ir-tutorials-tir-creation-py"><span
class="std std-ref">TensorIR Creation</span></a> (<code class="docutils
literal notranslate"><span
class="pre">../deep_dive/tensor_ir/tutorials/tir_creation.py</span></code>)</p></td>
-<td><p>00:00.170</p></td>
+<td><p>00:00.167</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="deep_dive/relax/tutorials/relax_creation.html#sphx-glr-deep-dive-relax-tutorials-relax-creation-py"><span
class="std std-ref">Relax Creation</span></a> (<code class="docutils literal
notranslate"><span
class="pre">../deep_dive/relax/tutorials/relax_creation.py</span></code>)</p></td>
-<td><p>00:00.110</p></td>
+<td><p>00:00.104</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-odd"><td><p><a class="reference internal"
href="deep_dive/relax/tutorials/relax_transformation.html#sphx-glr-deep-dive-relax-tutorials-relax-transformation-py"><span
class="std std-ref">Transformation</span></a> (<code class="docutils literal
notranslate"><span
class="pre">../deep_dive/relax/tutorials/relax_transformation.py</span></code>)</p></td>
-<td><p>00:00.063</p></td>
+<td><p>00:00.061</p></td>
<td><p>0.0</p></td>
</tr>
<tr class="row-even"><td><p><a class="reference internal"
href="how_to/tutorials/export_and_load_executable.html#sphx-glr-how-to-tutorials-export-and-load-executable-py"><span
class="std std-ref">Export and Load Relax Executables</span></a> (<code
class="docutils literal notranslate"><span
class="pre">../how_to/tutorials/export_and_load_executable.py</span></code>)</p></td>