This is an automated email from the ASF dual-hosted git repository.
ruihangl pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/tvm.git
The following commit(s) were added to refs/heads/main by this push:
new 744ef561e4 [Docs] Fix outdated paths, links, and add missing API
references across documentation (#19351)
744ef561e4 is described below
commit 744ef561e40d1232823a72ca29386e351c62a821
Author: Shushi Hong <[email protected]>
AuthorDate: Mon Apr 6 12:01:56 2026 -0400
[Docs] Fix outdated paths, links, and add missing API references across
documentation (#19351)
This PR is a follow-up PR of #19344 , continuing cleaning up outdated
items in docs
---
docs/arch/index.rst | 17 ++++++++++++++++-
docs/contribute/ci.rst | 4 ++--
docs/contribute/document.rst | 4 ++--
docs/contribute/pull_request.rst | 6 +++---
docs/errors.rst | 4 ++--
docs/how_to/dev/pytest_target_parametrization.rst | 14 +++++++-------
docs/how_to/dev/setup_rpc_system.rst | 4 ++--
docs/install/from_source.rst | 4 ++--
docs/reference/api/python/index.rst | 2 ++
docs/reference/api/python/relax/distributed.rst | 22 ++++++++++++++++++++++
docs/reference/api/python/relax/training.rst | 22 ++++++++++++++++++++++
11 files changed, 82 insertions(+), 21 deletions(-)
diff --git a/docs/arch/index.rst b/docs/arch/index.rst
index cb02c109b7..90c0b83c26 100644
--- a/docs/arch/index.rst
+++ b/docs/arch/index.rst
@@ -306,8 +306,23 @@ tvm/target
The target module contains all the code generators that translate an IRModule
to a target runtime.Module.
It also provides a common `Target` class that describes the target.
-.. TODO(tvm-team) add a target json description example once the new target
API stablizes.
+Targets can be constructed from a registered tag, a configuration dictionary,
or a tag with attribute overrides:
+.. code-block:: python
+
+ from tvm.target import Target
+
+ # From a registered tag
+ target = Target("nvidia/nvidia-a100")
+
+ # From a config dictionary
+ target = Target({"kind": "cuda", "arch": "sm_80"})
+
+ # From a tag with attribute overrides
+ target = Target({"tag": "nvidia/nvidia-a100", "l2_cache_size_bytes":
12345})
+
+Use ``Target.list_kinds()`` to see all available target kinds, and
``target.attrs`` to inspect
+target attributes.
The compilation pipeline can be customized according to the target by querying
the attribute information
in the target and builtin information registered to each target id(cuda,
opencl).
diff --git a/docs/contribute/ci.rst b/docs/contribute/ci.rst
index 6fdb0cd187..12cee2e5ee 100644
--- a/docs/contribute/ci.rst
+++ b/docs/contribute/ci.rst
@@ -60,7 +60,7 @@ Jenkins Logs
""""""""""""
.. |pytest| replace:: ``pytest``
-.. _pytest: https://docs.pytest.org/en/6.2.x/
+.. _pytest: https://docs.pytest.org/en/stable/
The first place to look for a failure is in the CI logs, follow the red Xs on
the failing job to view the logs. Note:
@@ -122,7 +122,7 @@ search `recent GitHub issues related to flaky tests
<https://github.com/apache/t
`file a new issue
<https://github.com/apache/tvm/issues/new?assignees=&labels=&template=ci-problem.md&title=%5BCI+Problem%5D>`_
if you don't see any reports of the failure. If a certain test or class of
tests affects
several PRs or commits on ``main`` with flaky failures, the test should be
disabled via
-`pytest's @xfail decorator
<https://docs.pytest.org/en/6.2.x/skipping.html#xfail-mark-test-functions-as-expected-to-fail>`_
with `strict=False
<https://docs.pytest.org/en/6.2.x/skipping.html#strict-parameter>`_ and the
relevant issue linked in the
+`pytest's @xfail decorator
<https://docs.pytest.org/en/stable/how-to/skipping.html#xfail-mark-test-functions-as-expected-to-fail>`_
with `strict=False
<https://docs.pytest.org/en/stable/how-to/skipping.html#strict-parameter>`_ and
the relevant issue linked in the
disabling PR.
.. code-block:: python
diff --git a/docs/contribute/document.rst b/docs/contribute/document.rst
index 8dcb541107..b538cc54bf 100644
--- a/docs/contribute/document.rst
+++ b/docs/contribute/document.rst
@@ -127,7 +127,7 @@ documents will be produced.
Technical Details
*****************
-We use the `Sphinx <http://sphinx-doc.org>`_ for the main documentation.
+We use the `Sphinx <https://www.sphinx-doc.org>`_ for the main documentation.
Sphinx supports both reStructuredText and markdown. When possible, we
encourage reStructuredText as it has richer features. Note that the
Python doc-string and tutorials allow you to embed reStructuredText syntax.
@@ -179,7 +179,7 @@ Be careful to leave blank lines between sections of your
documents. In the
above case, there has to be a blank line before ``Parameters``, ``Returns`` and
``Examples`` in order for the doc to be built correctly. To add a new function
to
the docs, we need to add the `sphinx.autodoc
-<http://www.sphinx-doc.org/en/master/ext/autodoc.html>`_ rules to
+<https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html>`_ rules to
`docs/reference/api/python
<https://github.com/apache/tvm/tree/main/docs/reference/api/python>`_.
You can refer to the existing files under this folder on how to add the
functions.
diff --git a/docs/contribute/pull_request.rst b/docs/contribute/pull_request.rst
index 7ae6706fd4..8ee4f2c65a 100644
--- a/docs/contribute/pull_request.rst
+++ b/docs/contribute/pull_request.rst
@@ -207,7 +207,7 @@ each time (e.g. you can test a change in CPU and GPU while
retaining incremental
python tests/scripts/ci.py cpu --unittest
# quickly iterate by running a specific test and skipping the rebuild each
time
- python tests/scripts/ci.py cpu --skip-build --tests
tests/python/tirx-transform/test_tir_transform_inject_rolling_buffer.py::test_upscale
+ python tests/scripts/ci.py cpu --skip-build --tests
tests/python/s_tir/schedule/test_tir_schedule_rolling_buffer.py::test_upscale
# run the CPU build and drop into a shell in the container
python tests/scripts/ci.py cpu --interactive
@@ -263,5 +263,5 @@ If you want to run a single test:
python -m pytest -v
tests/python/tirx-transform/test_tir_transform_storage_rewrite.py
- # Additionally if you want to run a single test, for example
test_all_elemwise inside a file.
- python -m pytest -v -k "test_all_elemwise"
tests/python/frontend/tflite/test_forward.py
+ # Additionally if you want to run a single test, for example test_add_one_2d
inside a file.
+ python -m pytest -v -k "test_add_one_2d"
tests/python/relax/test_frontend_tflite.py
diff --git a/docs/errors.rst b/docs/errors.rst
index 188cb5811a..fc8b2ca780 100644
--- a/docs/errors.rst
+++ b/docs/errors.rst
@@ -36,13 +36,13 @@ Where do these errors come from?
This error is caused by an internal invariant being violated during TVM's
execution. On a technical level, the message is generated by the
-``TVM_FFI_ICHECK`` macro, found in ``include/tvm/ffi/error.h`` in `TVM-FFI
<https://github.com/tlc-pack/tvm-ffi>`_.
+``TVM_FFI_ICHECK`` macro, found in
``3rdparty/tvm-ffi/include/tvm/ffi/error.h``.
The ``TVM_FFI_ICHECK`` macro is used in many places in the TVM code to assert
some condition is true during execution; any time the assertion fails, TVM
will exit with the error message shown above.
For more details about how errors are handled and generated by TVM, please
-see `error-handling-guide`.
+see :ref:`error-handling-guide`.
What should I do when I encounter such an error?
------------------------------------------------
diff --git a/docs/how_to/dev/pytest_target_parametrization.rst
b/docs/how_to/dev/pytest_target_parametrization.rst
index b29419a105..165d8ac0a5 100644
--- a/docs/how_to/dev/pytest_target_parametrization.rst
+++ b/docs/how_to/dev/pytest_target_parametrization.rst
@@ -49,7 +49,7 @@ In order for a test to be run, all of the following must be
true.
Unit-Test File Contents
-----------------------
-.. _pytest-marks: https://docs.pytest.org/en/6.2.x/mark.html
+.. _pytest-marks: https://docs.pytest.org/en/stable/how-to/mark.html
The recommended method to run a test on multiple targets is by
parametrizing the test. This can be done explicitly for a fixed list
@@ -64,7 +64,7 @@ hardware is present, then that target will be reported as
skipped.
.. code-block:: python
# Explicit listing of targets to use.
- @tvm.testing.parametrize_target('llvm', 'cuda')
+ @tvm.testing.parametrize_targets('llvm', 'cuda')
def test_function(target, dev):
# Test code goes here
@@ -202,8 +202,8 @@ the ``${TVM_HOME}`` directory.
- Passing a path to a folder or file will run only the unit tests
in that folder or file. This can be useful, for example, to
- avoid running tests located in ``tests/python/frontend`` on a
- system without a specific frontend installed.
+ avoid running tests located in ``tests/python/contrib`` on a
+ system without a specific backend installed.
- The ``-m`` argument only runs unit tests that are tagged with a
specific pytest marker. The most frequent usage is to use ``m
@@ -225,8 +225,8 @@ Running in local docker container
The ``docker/bash.sh`` script can be used to run unit tests inside the
same docker image as is used by the CI. The first argument should
specify which docker image to run (e.g. ``docker/bash.sh ci_gpu``).
-Allowed image names are defined at the top of the Jenkinsfile located
-in the TVM source directory, and map to images at `tlcpack`_.
+Allowed image names are defined in ``ci/jenkins/data.py`` in the TVM source
directory,
+and map to images at `tlcpack`_.
If no additional arguments are given, the docker image will be loaded
with an interactive bash session. If a script is passed as an
@@ -274,7 +274,7 @@ in which stages.
determine how ``pytest`` is called. Each task starts by unpacking a
compiled library that was previous compiled in the ``BUILD`` stage,
then runs a test script
- (e.g. ``tests/script/task_python_unittest.sh``). These scripts set
+ (e.g. ``tests/scripts/task_python_unittest.sh``). These scripts set
the files/folders and command-line options that are passed to
``pytest``.
diff --git a/docs/how_to/dev/setup_rpc_system.rst
b/docs/how_to/dev/setup_rpc_system.rst
index d5ea8c902f..f5d6e99a30 100644
--- a/docs/how_to/dev/setup_rpc_system.rst
+++ b/docs/how_to/dev/setup_rpc_system.rst
@@ -183,7 +183,7 @@ Troubleshooting
The package ``numpy`` is imported in some Python files which RPC server
dependent on, and eliminating the import relationship is difficult, for some
devices cross compiling ``numpy`` is very hard to do too.
-But actually the TVM runtime doesn't really dependent on ``numpy``, so a very
simple workaround is create a dummy ``numpy``, just need to copy the below
content into a file named ``numpy.py`` and place it into directory like
``/usr/local/lib/python3.9/site-packages``.
+But actually the TVM runtime doesn't really dependent on ``numpy``, so a very
simple workaround is create a dummy ``numpy``, just need to copy the below
content into a file named ``numpy.py`` and place it into your Python's
``site-packages`` directory (e.g. ``/usr/local/lib/python3.x/site-packages``).
.. code-block:: python
@@ -240,4 +240,4 @@ But actually the TVM runtime doesn't really dependent on
``numpy``, so a very si
2. The lack of ``cloudpickle`` on device machine caused the RPC server can't
be launched.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-Because ``cloudpickle`` package is a pure Python package, so just copying it
from other machine to the directory like
``/usr/local/lib/python3.9/site-packages`` of the device machine will resolve
the problem.
+Because ``cloudpickle`` package is a pure Python package, so just copying it
from other machine to the Python ``site-packages`` directory of the device
machine will resolve the problem.
diff --git a/docs/install/from_source.rst b/docs/install/from_source.rst
index d84185912d..72e12969b2 100644
--- a/docs/install/from_source.rst
+++ b/docs/install/from_source.rst
@@ -279,7 +279,7 @@ Building on Windows
~~~~~~~~~~~~~~~~~~~
TVM support build via MSVC using CMake. You will need to obtain a visual
studio compiler.
The minimum required VS version is **Visual Studio Enterprise 2019** (NOTE: we
test
-against GitHub Actions' `Windows 2019 Runner
<https://github.com/actions/virtual-environments/blob/main/images/win/Windows2019-Readme.md>`_,
so see that page for full details.
+against GitHub Actions' `windows-latest Runner
<https://github.com/actions/runner-images>`_, so see that page for full details.
We recommend following :ref:`install-dependencies` to obtain necessary
dependencies and
get an activated tvm-build environment. Then you can run the following command
to build
@@ -310,7 +310,7 @@ For CUDA support on Windows:
CMake & Compiler Setup
......................
- Specify generator: ``cmake -G "Visual Studio 16 2019" -A x64 ..``
-- Ensure Python is in PATH or specify:
``-DPython_EXECUTABLE=C:\Python39\python.exe``
+- Ensure Python is in PATH or specify:
``-DPython_EXECUTABLE=C:\Python311\python.exe``
Building ROCm support
diff --git a/docs/reference/api/python/index.rst
b/docs/reference/api/python/index.rst
index f252d417df..4283cc44c0 100644
--- a/docs/reference/api/python/index.rst
+++ b/docs/reference/api/python/index.rst
@@ -45,8 +45,10 @@ Python API
relax/relax
relax/analysis
relax/block_builder
+ relax/distributed
relax/frontend
relax/op
+ relax/training
relax/transform
.. toctree::
diff --git a/docs/reference/api/python/relax/distributed.rst
b/docs/reference/api/python/relax/distributed.rst
new file mode 100644
index 0000000000..a73012ccbf
--- /dev/null
+++ b/docs/reference/api/python/relax/distributed.rst
@@ -0,0 +1,22 @@
+.. Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+.. http://www.apache.org/licenses/LICENSE-2.0
+
+.. Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+tvm.relax.distributed
+---------------------
+.. automodule:: tvm.relax.distributed
+ :members:
+ :imported-members:
diff --git a/docs/reference/api/python/relax/training.rst
b/docs/reference/api/python/relax/training.rst
new file mode 100644
index 0000000000..816d398b64
--- /dev/null
+++ b/docs/reference/api/python/relax/training.rst
@@ -0,0 +1,22 @@
+.. Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+.. http://www.apache.org/licenses/LICENSE-2.0
+
+.. Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+
+tvm.relax.training
+------------------
+.. automodule:: tvm.relax.training
+ :members:
+ :imported-members: