mirror of
https://github.com/ROCm/ROCm.git
synced 2026-01-11 07:38:17 -05:00
Compare commits
5 Commits
env_var_7.
...
docs/7.1.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4e98d954af | ||
|
|
ad888e854d | ||
|
|
00df690446 | ||
|
|
b094c2ba1a | ||
|
|
64559321cb |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,6 +1,7 @@
|
||||
.venv
|
||||
.vscode
|
||||
build
|
||||
__pycache__
|
||||
|
||||
# documentation artifacts
|
||||
_build/
|
||||
|
||||
@@ -36,6 +36,7 @@ Andrej
|
||||
Arb
|
||||
Autocast
|
||||
autograd
|
||||
Backported
|
||||
BARs
|
||||
BatchNorm
|
||||
BLAS
|
||||
@@ -201,9 +202,11 @@ GenAI
|
||||
GenZ
|
||||
GitHub
|
||||
Gitpod
|
||||
hardcoded
|
||||
HBM
|
||||
HCA
|
||||
HGX
|
||||
HLO
|
||||
HIPCC
|
||||
hipDataType
|
||||
HIPExtension
|
||||
@@ -327,6 +330,7 @@ MoEs
|
||||
Mooncake
|
||||
Mpops
|
||||
Multicore
|
||||
multihost
|
||||
Multithreaded
|
||||
MXFP
|
||||
MyEnvironment
|
||||
@@ -514,8 +518,6 @@ TPS
|
||||
TPU
|
||||
TPUs
|
||||
TSME
|
||||
Taichi
|
||||
Taichi's
|
||||
Tagram
|
||||
TensileLite
|
||||
TensorBoard
|
||||
@@ -1017,6 +1019,7 @@ uncacheable
|
||||
uncorrectable
|
||||
underoptimized
|
||||
unhandled
|
||||
unfused
|
||||
uninstallation
|
||||
unmapped
|
||||
unsqueeze
|
||||
|
||||
@@ -1546,8 +1546,8 @@ HIP runtime has the following functional improvements which improves runtime per
|
||||
|
||||
#### Upcoming changes
|
||||
|
||||
* `__AMDGCN_WAVEFRONT_SIZE__` macro and HIP’s `warpSize` variable as `constexpr` are deprecated and will be disabled in a future release. Users are encouraged to update their code if needed to ensure future compatibility. For more information, see [AMDGCN_WAVEFRONT_SIZE deprecation](#amdgpu-wavefront-size-compiler-macro-deprecation).
|
||||
* The `roc-obj-ls` and `roc-obj-extract` tools are deprecated. To extract all Clang offload bundles into separate code objects use `llvm-objdump --offloading <file>`. For more information, see [Changes to ROCm Object Tooling](#changes-to-rocm-object-tooling).
|
||||
* `__AMDGCN_WAVEFRONT_SIZE__` macro and HIP’s `warpSize` variable as `constexpr` are deprecated and will be disabled in a future release. Users are encouraged to update their code if needed to ensure future compatibility. For more information, see [AMDGCN_WAVEFRONT_SIZE deprecation](https://rocm.docs.amd.com/en/docs-7.0.0/about/release-notes.html#amdgpu-wavefront-size-compiler-macro-deprecation).
|
||||
* The `roc-obj-ls` and `roc-obj-extract` tools are deprecated. To extract all Clang offload bundles into separate code objects use `llvm-objdump --offloading <file>`. For more information, see [Changes to ROCm Object Tooling](https://rocm.docs.amd.com/en/docs-7.0.0/about/release-notes.html#changes-to-rocm-object-tooling).
|
||||
|
||||
### **MIGraphX** (2.13.0)
|
||||
|
||||
|
||||
@@ -1481,7 +1481,7 @@ issues related to individual components, review the [Detailed component changes]
|
||||
|
||||
### MIGraphX Python API will fail when running on Python 3.13
|
||||
|
||||
Applications using the MIGraphX Python API will fail when running on Python 3.13 and return the error message `AttributeError: module 'migraphx' has no attribute 'parse_onnx'`. The issue doesn't occur when you manually build MIGraphX. For detailed instructions, see [Building from source](https://rocm.docs.amd.com/projects/AMDMIGraphX/en/latest/install/building_migraphx.html). As a workaround, change the Python version to the one found in the installed location:
|
||||
Applications using the MIGraphX Python API will fail when running on Python 3.13 and return the error message `AttributeError: module 'migraphx' has no attribute 'parse_onnx'`. The issue doesn't occur when you manually build MIGraphX. For detailed instructions, see [Building from source](https://rocm.docs.amd.com/projects/AMDMIGraphX/en/latest/install/install-migraphx.html#build-migraphx-from-source). As a workaround, change the Python version to the one found in the installed location:
|
||||
|
||||
```
|
||||
ls -l /opt/rocm-7.1.0/lib/libmigraphx_py_*.so
|
||||
|
||||
@@ -37,7 +37,6 @@ ROCm Version,7.1.0,7.0.2,7.0.1/7.0.0,6.4.3,6.4.2,6.4.1,6.4.0,6.3.3,6.3.2,6.3.1,6
|
||||
:doc:`Stanford Megatron-LM <../compatibility/ml-compatibility/stanford-megatron-lm-compatibility>` [#stanford-megatron-lm_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,85f95ae,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`DGL <../compatibility/ml-compatibility/dgl-compatibility>` [#dgl_compat-past-60]_,N/A,N/A,2.4.0,2.4.0,N/A,N/A,2.4.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`Megablocks <../compatibility/ml-compatibility/megablocks-compatibility>` [#megablocks_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,0.7.0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`Taichi <../compatibility/ml-compatibility/taichi-compatibility>` [#taichi_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,1.8.0b1,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`Ray <../compatibility/ml-compatibility/ray-compatibility>` [#ray_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,2.48.0.post0,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`llama.cpp <../compatibility/ml-compatibility/llama-cpp-compatibility>` [#llama-cpp_compat-past-60]_,N/A,N/A,b6652,b6356,b6356,b6356,b5997,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
:doc:`FlashInfer <../compatibility/ml-compatibility/flashinfer-compatibility>` [#flashinfer_compat-past-60]_,N/A,N/A,N/A,N/A,N/A,v0.2.5,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A
|
||||
|
||||
|
@@ -306,7 +306,6 @@ Expand for full historical view of:
|
||||
.. [#stanford-megatron-lm_compat-past-60] Stanford Megatron-LM is supported only on ROCm 6.3.0.
|
||||
.. [#dgl_compat-past-60] DGL is supported only on ROCm 7.0.0, ROCm 6.4.3 and ROCm 6.4.0.
|
||||
.. [#megablocks_compat-past-60] Megablocks is supported only on ROCm 6.3.0.
|
||||
.. [#taichi_compat-past-60] Taichi is supported only on ROCm 6.3.2.
|
||||
.. [#ray_compat-past-60] Ray is supported only on ROCm 6.4.1.
|
||||
.. [#llama-cpp_compat-past-60] llama.cpp is supported only on ROCm 7.0.0 and 6.4.x.
|
||||
.. [#flashinfer_compat-past-60] FlashInfer is supported only on ROCm 6.4.1.
|
||||
|
||||
@@ -269,6 +269,33 @@ For a complete and up-to-date list of JAX public modules (for example, ``jax.num
|
||||
JAX API modules are maintained by the JAX project and is subject to change.
|
||||
Refer to the official Jax documentation for the most up-to-date information.
|
||||
|
||||
Key features and enhancements for ROCm 7.1
|
||||
===============================================================================
|
||||
|
||||
- Enabled compilation of multihost HLO runner Python bindings.
|
||||
|
||||
- Backported multihost HLO runner bindings and some related changes to
|
||||
:code:`FunctionalHloRunner`.
|
||||
|
||||
- Added :code:`requirements_lock_3_12` to enable building for Python 3.12.
|
||||
|
||||
- Removed hardcoded NHWC convolution layout for ``fp16`` precision to address the performance drops for ``fp16`` precision on gfx12xx GPUs.
|
||||
|
||||
|
||||
- ROCprofiler-SDK integration:
|
||||
|
||||
- Integrated ROCprofiler-SDK (v3) to XLA to improve profiling of GPU events,
|
||||
support both time-based and step-based profiling.
|
||||
|
||||
- Added unit tests for :code:`rocm_collector` and :code:`rocm_tracer`.
|
||||
|
||||
- Added Triton unsupported conversion from ``f8E4M3FNUZ`` to ``fp16`` with
|
||||
rounding mode.
|
||||
|
||||
- Introduced :code:`CudnnFusedConvDecomposer` to revert fused convolutions
|
||||
when :code:`ConvAlgorithmPicker` fails to find a fused algorithm, and removed
|
||||
unfused fallback paths from :code:`RocmFusedConvRunner`.
|
||||
|
||||
Key features and enhancements for ROCm 7.0
|
||||
===============================================================================
|
||||
|
||||
|
||||
@@ -1,99 +0,0 @@
|
||||
:orphan:
|
||||
|
||||
.. meta::
|
||||
:description: Taichi compatibility
|
||||
:keywords: GPU, Taichi, deep learning, framework compatibility
|
||||
|
||||
.. version-set:: rocm_version latest
|
||||
|
||||
*******************************************************************************
|
||||
Taichi compatibility
|
||||
*******************************************************************************
|
||||
|
||||
`Taichi <https://www.taichi-lang.org/>`_ is an open-source, imperative, and parallel
|
||||
programming language designed for high-performance numerical computation.
|
||||
Embedded in Python, it leverages just-in-time (JIT) compilation frameworks such as LLVM to accelerate
|
||||
compute-intensive Python code by compiling it to native GPU or CPU instructions.
|
||||
|
||||
Taichi is widely used across various domains, including real-time physical simulation,
|
||||
numerical computing, augmented reality, artificial intelligence, computer vision, robotics,
|
||||
visual effects in film and gaming, and general-purpose computing.
|
||||
|
||||
Support overview
|
||||
================================================================================
|
||||
|
||||
- The ROCm-supported version of Taichi is maintained in the official `https://github.com/ROCm/taichi
|
||||
<https://github.com/ROCm/taichi>`__ repository, which differs from the
|
||||
`https://github.com/taichi-dev/taichi <https://github.com/taichi-dev/taichi>`__ upstream repository.
|
||||
|
||||
- To get started and install Taichi on ROCm, use the prebuilt :ref:`Docker image <taichi-docker-compat>`,
|
||||
which includes ROCm, Taichi, and all required dependencies.
|
||||
|
||||
- See the :doc:`ROCm Taichi installation guide <rocm-install-on-linux:install/3rd-party/taichi-install>`
|
||||
for installation and setup instructions.
|
||||
|
||||
- You can also consult the upstream `Installation guide <https://github.com/taichi-dev/taichi>`__
|
||||
for additional context.
|
||||
|
||||
Version support
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
Taichi is supported on `ROCm 6.3.2 <https://repo.radeon.com/rocm/apt/6.3.2/>`__.
|
||||
|
||||
Supported devices
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
- **Officially Supported**: AMD Instinct™ MI250X, MI210X (with the exception of Taichi’s GPU rendering system, CGUI)
|
||||
- **Upcoming Support**: AMD Instinct™ MI300X
|
||||
|
||||
.. _taichi-recommendations:
|
||||
|
||||
Use cases and recommendations
|
||||
================================================================================
|
||||
|
||||
* The `Accelerating Parallel Programming in Python with Taichi Lang on AMD GPUs
|
||||
<https://rocm.blogs.amd.com/artificial-intelligence/taichi/README.html>`__
|
||||
blog highlights Taichi as an open-source programming language designed for high-performance
|
||||
numerical computation, particularly in domains like real-time physical simulation,
|
||||
artificial intelligence, computer vision, robotics, and visual effects. Taichi
|
||||
is embedded in Python and uses just-in-time (JIT) compilation frameworks like
|
||||
LLVM to optimize execution on GPUs and CPUs. The blog emphasizes the versatility
|
||||
of Taichi in enabling complex simulations and numerical algorithms, making
|
||||
it ideal for developers working on compute-intensive tasks. Developers are
|
||||
encouraged to follow recommended coding patterns and utilize Taichi decorators
|
||||
for performance optimization, with examples available in the `https://github.com/ROCm/taichi_examples
|
||||
<https://github.com/ROCm/taichi_examples>`_ repository. Prebuilt Docker images
|
||||
integrating ROCm, PyTorch, and Taichi are provided for simplified installation
|
||||
and deployment, making it easier to leverage Taichi for advanced computational workloads.
|
||||
|
||||
.. _taichi-docker-compat:
|
||||
|
||||
Docker image compatibility
|
||||
================================================================================
|
||||
|
||||
.. |docker-icon| raw:: html
|
||||
|
||||
<i class="fab fa-docker"></i>
|
||||
|
||||
AMD validates and publishes ready-made `ROCm Taichi Docker images <https://hub.docker.com/r/rocm/taichi/tags>`_
|
||||
with ROCm backends on Docker Hub. The following Docker image tag and associated inventories
|
||||
represent the latest Taichi version from the official Docker Hub.
|
||||
Click |docker-icon| to view the image on Docker Hub.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:class: docker-image-compatibility
|
||||
|
||||
* - Docker image
|
||||
- ROCm
|
||||
- Taichi
|
||||
- Ubuntu
|
||||
- Python
|
||||
|
||||
* - .. raw:: html
|
||||
|
||||
<a href="https://hub.docker.com/layers/rocm/taichi/taichi-1.8.0b1_rocm6.3.2_ubuntu22.04_py3.10.12/images/sha256-e016964a751e6a92199032d23e70fa3a564fff8555afe85cd718f8aa63f11fc6"><i class="fab fa-docker fa-lg"></i> rocm/taichi</a>
|
||||
- `6.3.2 <https://repo.radeon.com/rocm/apt/6.3.2/>`_
|
||||
- `1.8.0b1 <https://github.com/taichi-dev/taichi>`_
|
||||
- 22.04
|
||||
- `3.10.12 <https://www.python.org/downloads/release/python-31012/>`_
|
||||
@@ -34,7 +34,7 @@ Runtime
|
||||
|
||||
```{code-block} shell
|
||||
:caption: Example to expose the 1. device and a device based on UUID.
|
||||
export ROCR_VISIBLE_DEVICES="0,GPU-DEADBEEFDEADBEEF"
|
||||
export ROCR_VISIBLE_DEVICES="0,GPU-4b2c1a9f-8d3e-6f7a-b5c9-2e4d8a1f6c3b"
|
||||
```
|
||||
|
||||
### `GPU_DEVICE_ORDINAL`
|
||||
|
||||
11
docs/conf.py
11
docs/conf.py
@@ -8,6 +8,7 @@ import os
|
||||
import shutil
|
||||
import sys
|
||||
from pathlib import Path
|
||||
from subprocess import run
|
||||
|
||||
gh_release_path = os.path.join("..", "RELEASE.md")
|
||||
gh_changelog_path = os.path.join("..", "CHANGELOG.md")
|
||||
@@ -84,6 +85,9 @@ html_context = {"docs_header_version": "7.1.0"}
|
||||
if os.environ.get("READTHEDOCS", "") == "True":
|
||||
html_context["READTHEDOCS"] = True
|
||||
|
||||
# Check if the branch is a docs/ branch
|
||||
official_branch = run(["git", "rev-parse", "--abbrev-ref", "HEAD"], capture_output=True, text=True).stdout.find("docs/")
|
||||
|
||||
# configurations for PDF output by Read the Docs
|
||||
project = "ROCm Documentation"
|
||||
project_path = os.path.abspath(".").replace("\\", "/")
|
||||
@@ -107,7 +111,6 @@ article_pages = [
|
||||
{"file": "compatibility/ml-compatibility/stanford-megatron-lm-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/dgl-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/megablocks-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/taichi-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/ray-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/llama-cpp-compatibility", "os": ["linux"]},
|
||||
{"file": "compatibility/ml-compatibility/flashinfer-compatibility", "os": ["linux"]},
|
||||
@@ -202,7 +205,7 @@ external_toc_path = "./sphinx/_toc.yml"
|
||||
# Add the _extensions directory to Python's search path
|
||||
sys.path.append(str(Path(__file__).parent / 'extension'))
|
||||
|
||||
extensions = ["rocm_docs", "sphinx_reredirects", "sphinx_sitemap", "sphinxcontrib.datatemplates", "version-ref", "csv-to-list-table"]
|
||||
extensions = ["rocm_docs", "sphinx_reredirects", "sphinx_sitemap", "sphinxcontrib.datatemplates", "remote-content", "version-ref", "csv-to-list-table"]
|
||||
|
||||
compatibility_matrix_file = str(Path(__file__).parent / 'compatibility/compatibility-matrix-historical-6.0.csv')
|
||||
|
||||
@@ -216,6 +219,10 @@ html_context = {"docs_header_version": "7.1.0"}
|
||||
if os.environ.get("READTHEDOCS", "") == "True":
|
||||
html_context["READTHEDOCS"] = True
|
||||
|
||||
html_context["official_branch"] = official_branch
|
||||
html_context["version"] = version
|
||||
html_context["release"] = release
|
||||
|
||||
html_theme = "rocm_docs_theme"
|
||||
html_theme_options = {"flavor": "rocm-docs-home"}
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ library_groups:
|
||||
|
||||
- name: "MIGraphX"
|
||||
tag: "migraphx"
|
||||
doc_link: "amdmigraphx:reference/cpp"
|
||||
doc_link: "amdmigraphx:reference/MIGraphX-cpp"
|
||||
data_types:
|
||||
- type: "int8"
|
||||
support: "⚠️"
|
||||
@@ -290,7 +290,7 @@ library_groups:
|
||||
|
||||
- name: "Tensile"
|
||||
tag: "tensile"
|
||||
doc_link: "tensile:reference/precision-support"
|
||||
doc_link: "tensile:src/reference/precision-support"
|
||||
data_types:
|
||||
- type: "int8"
|
||||
support: "✅"
|
||||
|
||||
141
docs/extension/remote-content.py
Normal file
141
docs/extension/remote-content.py
Normal file
@@ -0,0 +1,141 @@
|
||||
from docutils import nodes
|
||||
from docutils.parsers.rst import Directive
|
||||
from docutils.statemachine import ViewList
|
||||
from sphinx.util import logging
|
||||
from sphinx.util.nodes import nested_parse_with_titles
|
||||
import requests
|
||||
import re
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
class BranchAwareRemoteContent(Directive):
|
||||
"""
|
||||
Directive that downloads and includes content from other repositories,
|
||||
matching the branch/tag of the current documentation build.
|
||||
|
||||
Usage:
|
||||
.. remote-content::
|
||||
:repo: owner/repository
|
||||
:path: path/to/file.rst
|
||||
:default_branch: docs/develop # Branch to use when not on a release
|
||||
:tag_prefix: Docs/ # Optional
|
||||
"""
|
||||
|
||||
required_arguments = 0
|
||||
optional_arguments = 0
|
||||
final_argument_whitespace = True
|
||||
has_content = False
|
||||
option_spec = {
|
||||
'repo': str,
|
||||
'path': str,
|
||||
'default_branch': str, # Branch to use when not on a release tag
|
||||
'start_line': int, # Include the file from a specific line
|
||||
'tag_prefix': str, # Prefix for release tags (e.g., 'Docs/')
|
||||
}
|
||||
|
||||
def get_current_version(self):
|
||||
"""Get current version/branch being built"""
|
||||
env = self.state.document.settings.env
|
||||
html_context = env.config.html_context
|
||||
|
||||
# Check if building from a tag
|
||||
if "official_branch" in html_context:
|
||||
if html_context["official_branch"] == 0:
|
||||
if "version" in html_context:
|
||||
# Remove any 'v' prefix
|
||||
version = html_context["version"]
|
||||
if re.match(r'^\d+\.\d+\.\d+$', version):
|
||||
return version
|
||||
|
||||
# Not a version tag, so we'll use the default branch
|
||||
return None
|
||||
|
||||
def get_target_ref(self):
|
||||
"""Get target reference for the remote repository"""
|
||||
current_version = self.get_current_version()
|
||||
|
||||
# If it's a version number, use tag prefix and version
|
||||
if current_version:
|
||||
tag_prefix = self.options.get('tag_prefix', '')
|
||||
return f'{tag_prefix}{current_version}'
|
||||
|
||||
# For any other case, use the specified default branch
|
||||
if 'default_branch' not in self.options:
|
||||
logger.warning('No default_branch specified and not building from a version tag')
|
||||
return None
|
||||
|
||||
return self.options['default_branch']
|
||||
|
||||
def construct_raw_url(self, repo, path, ref):
|
||||
"""Construct the raw.githubusercontent.com URL"""
|
||||
return f'https://raw.githubusercontent.com/{repo}/{ref}/{path}'
|
||||
|
||||
def fetch_and_parse_content(self, url, source_path):
|
||||
"""Fetch content and parse it as RST"""
|
||||
response = requests.get(url)
|
||||
response.raise_for_status()
|
||||
content = response.text
|
||||
|
||||
start_line = self.options.get('start_line', 0)
|
||||
|
||||
# Create ViewList for parsing
|
||||
line_count = 0
|
||||
content_list = ViewList()
|
||||
for line_no, line in enumerate(content.splitlines()):
|
||||
if line_count >= start_line:
|
||||
content_list.append(line, source_path, line_no)
|
||||
line_count+=1
|
||||
|
||||
# Create a section node and parse content
|
||||
node = nodes.section()
|
||||
nested_parse_with_titles(self.state, content_list, node)
|
||||
|
||||
return node.children
|
||||
|
||||
def run(self):
|
||||
if 'repo' not in self.options or 'path' not in self.options:
|
||||
logger.warning('Both repo and path options are required')
|
||||
return []
|
||||
|
||||
target_ref = self.get_target_ref()
|
||||
if not target_ref:
|
||||
return []
|
||||
|
||||
raw_url = self.construct_raw_url(
|
||||
self.options['repo'],
|
||||
self.options['path'],
|
||||
target_ref
|
||||
)
|
||||
|
||||
try:
|
||||
logger.info(f'Attempting to fetch content from {raw_url}')
|
||||
return self.fetch_and_parse_content(raw_url, self.options['path'])
|
||||
except requests.exceptions.RequestException as e:
|
||||
logger.warning(f'Failed to fetch content from {raw_url}: {str(e)}')
|
||||
|
||||
# If we failed on a tag, try falling back to default_branch
|
||||
if re.match(r'^\d+\.\d+\.\d+$', target_ref) or target_ref.startswith('Docs/'):
|
||||
if 'default_branch' in self.options:
|
||||
try:
|
||||
fallback_ref = self.options['default_branch']
|
||||
logger.info(f'Attempting fallback to {fallback_ref}...')
|
||||
|
||||
fallback_url = self.construct_raw_url(
|
||||
self.options['repo'],
|
||||
self.options['path'],
|
||||
fallback_ref
|
||||
)
|
||||
|
||||
return self.fetch_and_parse_content(fallback_url, self.options['path'])
|
||||
except requests.exceptions.RequestException as e2:
|
||||
logger.warning(f'Fallback also failed: {str(e2)}')
|
||||
|
||||
return []
|
||||
|
||||
def setup(app):
|
||||
app.add_directive('remote-content', BranchAwareRemoteContent)
|
||||
|
||||
return {
|
||||
'parallel_read_safe': True,
|
||||
'parallel_write_safe': True,
|
||||
}
|
||||
@@ -100,18 +100,6 @@ The table below summarizes information about ROCm-enabled deep learning framewor
|
||||
|
||||
<a href="https://github.com/ROCm/megablocks"><i class="fab fa-github fa-lg"></i></a>
|
||||
|
||||
* - `Taichi <https://rocm.docs.amd.com/en/latest/compatibility/ml-compatibility/taichi-compatibility.html>`__
|
||||
- .. raw:: html
|
||||
|
||||
<a href="https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/3rd-party/taichi-install.html"><i class="fas fa-link fa-lg"></i></a>
|
||||
-
|
||||
- `Docker image <https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/3rd-party/taichi-install.html#use-a-prebuilt-docker-image-with-taichi-pre-installed>`__
|
||||
- `Wheels package <https://rocm.docs.amd.com/projects/install-on-linux/en/latest/install/3rd-party/taichi-install.html#use-a-wheels-package>`__
|
||||
|
||||
- .. raw:: html
|
||||
|
||||
<a href="https://github.com/ROCm/taichi"><i class="fab fa-github fa-lg"></i></a>
|
||||
|
||||
* - `Ray <https://rocm.docs.amd.com/en/latest/compatibility/ml-compatibility/ray-compatibility.html>`__
|
||||
- .. raw:: html
|
||||
|
||||
|
||||
@@ -277,7 +277,7 @@ PyTorch training
|
||||
|
||||
.. seealso::
|
||||
|
||||
See :ref:`Training a model with PyTorch <amd-pytorch-multinode-examples>` for more examples and information.
|
||||
See :ref:`Training a model with PyTorch <amd-pytorch-training-multinode-examples>` for more examples and information.
|
||||
|
||||
Megatron-LM
|
||||
-----------
|
||||
|
||||
@@ -65,6 +65,8 @@ ROCm documentation is organized into the following categories:
|
||||
* [ROCm libraries](./reference/api-libraries.md)
|
||||
* [ROCm tools, compilers, and runtimes](./reference/rocm-tools.md)
|
||||
* [GPU hardware specifications](./reference/gpu-arch-specs.rst)
|
||||
* [Hardware atomics operation support](./reference/gpu-atomics-operation.rst)
|
||||
* [Environment variables](./reference/env-variables.rst)
|
||||
* [Data types and precision support](./reference/precision-support.rst)
|
||||
* [Graph safe support](./reference/graph-safe-support.rst)
|
||||
<!-- markdownlint-enable MD051 -->
|
||||
|
||||
173
docs/reference/env-variables.rst
Normal file
173
docs/reference/env-variables.rst
Normal file
@@ -0,0 +1,173 @@
|
||||
.. meta::
|
||||
:description: Environment variables reference
|
||||
:keywords: AMD, ROCm, environment variables, environment, reference, settings
|
||||
|
||||
.. role:: cpp(code)
|
||||
:language: cpp
|
||||
|
||||
.. _env-variables-reference:
|
||||
|
||||
*************************************************************
|
||||
ROCm environment variables
|
||||
*************************************************************
|
||||
|
||||
ROCm provides a set of environment variables that allow users to configure and optimize their development
|
||||
and runtime experience. These variables define key settings such as installation paths, platform selection,
|
||||
and runtime behavior for applications running on AMD accelerators and GPUs.
|
||||
|
||||
This page outlines commonly used environment variables across different components of the ROCm software stack,
|
||||
including HIP and ROCR-Runtime. Understanding these variables can help streamline software development and
|
||||
execution in ROCm-based environments.
|
||||
|
||||
HIP environment variables
|
||||
=========================
|
||||
|
||||
The following tables list the HIP environment variables.
|
||||
|
||||
GPU isolation variables
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/hip/docs/reference/env_variables/gpu_isolation_hip_env.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
|
||||
Profiling variables
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/hip/docs/reference/env_variables/profiling_hip_env.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
|
||||
Debug variables
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/hip/docs/reference/env_variables/debug_hip_env.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
Memory management related variables
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/hip/docs/reference/env_variables/memory_management_hip_env.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
Other useful variables
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/hip/docs/reference/env_variables/miscellaneous_hip_env.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
ROCR-Runtime environment variables
|
||||
==================================
|
||||
|
||||
The following table lists the ROCR-Runtime environment variables:
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/rocm-systems
|
||||
:path: /projects/rocr-runtime/runtime/docs/data/env_variables.rst
|
||||
:default_branch: develop
|
||||
:tag_prefix: docs/
|
||||
|
||||
HIPCC environment variables
|
||||
===========================
|
||||
|
||||
This topic provides descriptions of the HIPCC environment variables.
|
||||
|
||||
.. remote-content::
|
||||
:repo: ROCm/llvm-project
|
||||
:path: amd/hipcc/docs/env.rst
|
||||
:default_branch: amd-staging
|
||||
:start_line: 14
|
||||
:tag_prefix: docs/
|
||||
|
||||
Environment variables in ROCm libraries
|
||||
=======================================
|
||||
|
||||
Many ROCm libraries define environment variables for specific tuning, debugging,
|
||||
or behavioral control. The table below provides an overview and links to further
|
||||
documentation.
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 30, 70
|
||||
|
||||
* - Library
|
||||
- Purpose of Environment Variables
|
||||
|
||||
* - :doc:`hipBLASLt <hipblaslt:reference/env-variables>`
|
||||
- Manage logging, debugging, offline tuning, and stream-K configuration
|
||||
for hipBLASLt.
|
||||
|
||||
* - :doc:`hipSPARSELt <hipsparselt:reference/env-variables>`
|
||||
- Control logging, debugging and performance monitoring of hipSPARSELt.
|
||||
|
||||
* - :doc:`rocBLAS <rocblas:reference/env-variables>`
|
||||
- Performance tuning, kernel selection, logging, and debugging for BLAS
|
||||
operations.
|
||||
|
||||
* - :doc:`rocSolver <rocsolver:reference/env_variables>`
|
||||
- Control logging of rocSolver.
|
||||
|
||||
* - :doc:`rocSPARSE <rocsparse:reference/env_variables>`
|
||||
- Control logging of rocSPARSE.
|
||||
|
||||
* - :doc:`MIGraphX <amdmigraphx:reference/MIGraphX-dev-env-vars>`
|
||||
- Control debugging, testing, and model performance tuning options for
|
||||
MIGraphX.
|
||||
|
||||
* - :doc:`MIOpen <miopen:reference/env_variables>`
|
||||
- Control MIOpen logging and debugging, find mode and algorithm behavior
|
||||
and others.
|
||||
|
||||
* - :doc:`MIVisionX <mivisionx:reference/MIVisionX-env-variables>`
|
||||
- Control core OpenVX, GPU/device and debugging/profiling, stitching and
|
||||
chroma key configurations, file I/O operations, model deployment, and
|
||||
neural network parameters of MIVisionX.
|
||||
|
||||
* - :doc:`RCCL <rccl:api-reference/env-variables>`
|
||||
- Control the logging, debugging, compiler and assembly behavior, and
|
||||
cache of RPP.
|
||||
|
||||
* - :doc:`RPP <rpp:reference/rpp-env-variables>`
|
||||
- Logging, debugging, compiler and assembly management, and cache control in RPP
|
||||
|
||||
* - `Tensile <https://rocm.docs.amd.com/projects/Tensile/en/latest/src/reference/environment-variables.html>`_
|
||||
- Enable testing, debugging, and experimental features for Tensile clients and applications
|
||||
|
||||
Key single-variable details
|
||||
===========================
|
||||
|
||||
This section provides detailed descriptions, in the standard format, for ROCm
|
||||
libraries that feature a single, key environment variable (or a very minimal set)
|
||||
which is documented directly on this page for convenience.
|
||||
|
||||
.. _rocalution-vars-detail:
|
||||
|
||||
rocALUTION
|
||||
----------
|
||||
|
||||
.. list-table::
|
||||
:header-rows: 1
|
||||
:widths: 70,30
|
||||
|
||||
* - Environment variable
|
||||
- Value
|
||||
|
||||
* - | ``ROCALUTION_LAYER``
|
||||
| If set to ``1``, enable file logging. Logs each rocALUTION function call including object constructor/destructor, address of the object, memory allocation, data transfers, all function calls for matrices, vectors, solvers, and preconditioners. The log file is placed in the working directory.
|
||||
- | ``1`` (Enable trace file logging)
|
||||
| Default: Not set.
|
||||
@@ -93,7 +93,7 @@ The following table shows whether a ROCm library is graph-safe.
|
||||
- ⚠️ (experimental)
|
||||
*
|
||||
- `rocThrust <https://github.com/ROCm/rocThrust>`_
|
||||
- ❌ (see :doc:`details <rocthrust:hipgraph-support>`)
|
||||
- ❌ (see :doc:`details <rocthrust:reference/rocThrust-hipgraph-support>`)
|
||||
*
|
||||
- `rocWMMA <https://github.com/ROCm/rocWMMA>`_
|
||||
- ❌
|
||||
|
||||
@@ -43,8 +43,6 @@ subtrees:
|
||||
title: DGL compatibility
|
||||
- file: compatibility/ml-compatibility/megablocks-compatibility.rst
|
||||
title: Megablocks compatibility
|
||||
- file: compatibility/ml-compatibility/taichi-compatibility.rst
|
||||
title: Taichi compatibility
|
||||
- file: compatibility/ml-compatibility/ray-compatibility.rst
|
||||
title: Ray compatibility
|
||||
- file: compatibility/ml-compatibility/llama-cpp-compatibility.rst
|
||||
@@ -216,6 +214,8 @@ subtrees:
|
||||
title: ROCm tools, compilers, and runtimes
|
||||
- file: reference/gpu-arch-specs.rst
|
||||
- file: reference/gpu-atomics-operation.rst
|
||||
- file: reference/env-variables.rst
|
||||
title: Environment variables
|
||||
- file: reference/precision-support.rst
|
||||
title: Data types and precision support
|
||||
- file: reference/graph-safe-support.rst
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
rocm-docs-core==1.28.0
|
||||
rocm-docs-core==1.30.0
|
||||
sphinx-reredirects
|
||||
sphinx-sitemap
|
||||
sphinxcontrib.datatemplates==0.11.0
|
||||
|
||||
@@ -8,7 +8,7 @@ accessible-pygments==0.0.5
|
||||
# via pydata-sphinx-theme
|
||||
alabaster==1.0.0
|
||||
# via sphinx
|
||||
asttokens==3.0.0
|
||||
asttokens==3.0.1
|
||||
# via stack-data
|
||||
attrs==25.4.0
|
||||
# via
|
||||
@@ -23,7 +23,7 @@ beautifulsoup4==4.14.2
|
||||
# via pydata-sphinx-theme
|
||||
breathe==4.36.0
|
||||
# via rocm-docs-core
|
||||
certifi==2025.10.5
|
||||
certifi==2025.11.12
|
||||
# via requests
|
||||
cffi==2.0.0
|
||||
# via
|
||||
@@ -31,7 +31,7 @@ cffi==2.0.0
|
||||
# pynacl
|
||||
charset-normalizer==3.4.4
|
||||
# via requests
|
||||
click==8.3.0
|
||||
click==8.3.1
|
||||
# via
|
||||
# jupyter-cache
|
||||
# sphinx-external-toc
|
||||
@@ -50,7 +50,7 @@ docutils==0.21.2
|
||||
# myst-parser
|
||||
# pydata-sphinx-theme
|
||||
# sphinx
|
||||
exceptiongroup==1.3.0
|
||||
exceptiongroup==1.3.1
|
||||
# via ipython
|
||||
executing==2.2.1
|
||||
# via stack-data
|
||||
@@ -187,9 +187,9 @@ requests==2.32.5
|
||||
# via
|
||||
# pygithub
|
||||
# sphinx
|
||||
rocm-docs-core==1.28.0
|
||||
rocm-docs-core==1.30.0
|
||||
# via -r requirements.in
|
||||
rpds-py==0.28.0
|
||||
rpds-py==0.29.0
|
||||
# via
|
||||
# jsonschema
|
||||
# referencing
|
||||
|
||||
Reference in New Issue
Block a user