Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions docs/source/en/user_guide/getting_started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ Install the runtime environment from the repository root (on Windows, run `insta
sh install.sh
```

This auto-detects your GPU vendor (NVIDIA → CUDA, AMD → ROCm) and installs the runtime workspace packages, the matching PyTorch wheels, the required SKRL Torch provider, and the built-in FastSAC algorithm. Runtime installation is selective: development tools, docs, RSL-RL, SKRL JAX, and other optional extras are not installed unless requested.
This auto-detects your GPU vendor (NVIDIA → CUDA, AMD → ROCm) and installs the runtime workspace packages, the matching PyTorch wheels, the required SKRL Torch provider, and the built-in FastSAC algorithm. On Linux, `install.sh` also installs Intel TBB by default for Numba parallel kernels, including with `--all` and either GPU profile. Other platforms do not enable TBB by default for runtime installation. Development tools, docs, RSL-RL, SKRL JAX, and other optional extras are not installed unless requested.

### Activate the Environment

Expand Down Expand Up @@ -96,7 +96,7 @@ workspace packages and supported development extras. Backend flags select or add
| `--skrl-torch` | — | Compatibility flag; SKRL Torch is already required by the root package |
| `--skrl-jax` | — | Add SKRL on JAX backend, Linux only |
| `--rslrl` | — | Add RSL-RL on PyTorch backend while retaining required SKRL |
| `--tbb` | — | Install Intel TBB for the numba parallel kernels; recommended for training on many-core servers (64+ cores), auto-activates once installed |
| `--tbb` | — | Explicitly install Intel TBB for Numba parallel kernels; already enabled by default in `install.sh` on Linux, auto-activates once installed |
| `--docs` | — | Add the toolchain (sphinx) needed to build the documentation locally |
| `-h`, `--help` | — | Show the help message |

Expand Down
4 changes: 2 additions & 2 deletions docs/source/zh_CN/user_guide/getting_started/installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ sh install.sh
```

该命令会自动探测 GPU 厂商(NVIDIA → CUDA,AMD → ROCm),安装运行环境所需的 workspace package、对应的
PyTorch wheel、必需的 SKRL Torch provider 以及内置的 FastSAC 算法。运行环境采用选择性安装:开发工具、文档工具、RSL-RL、SKRL JAX 和其他可选 extra 不会自动安装。
PyTorch wheel、必需的 SKRL Torch provider 以及内置的 FastSAC 算法。Linux 上,`install.sh` 默认还会为 Numba 并行 kernel 安装 Intel TBB,`--all` 和两种 GPU 配置均包含 TBB;其他平台的默认运行环境安装不会启用 TBB。开发工具、文档工具、RSL-RL、SKRL JAX 和其他可选 extra 不会自动安装。

:::{dropdown} 配置国内镜像源(可选)
:animate: fade-in
Expand Down Expand Up @@ -116,7 +116,7 @@ workspace plugin;`--all` 才会安装全部 workspace package 与支持的开
| `--skrl-torch` | — | 兼容性参数;SKRL Torch 已由根项目作为必需依赖提供 |
| `--skrl-jax` | — | 添加 SKRL(JAX)训练后端,仅 Linux |
| `--rslrl` | — | 添加 RSL-RL(PyTorch)训练后端,同时保留必需的 SKRL |
| `--tbb` | — | 为 numba 并行 kernel 安装 Intel TBB 线程层;多核服务器(64 核以上)训练推荐启用,安装后自动生效 |
| `--tbb` | — | 显式为 Numba 并行 kernel 安装 Intel TBB 线程层;Linux 上的 `install.sh` 已默认启用,安装后自动生效 |
| `--docs` | — | 追加本地构建文档所需的工具链(Sphinx) |
| `-h`、`--help` | — | 显示帮助 |

Expand Down
15 changes: 10 additions & 5 deletions install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@
#
# Built-in FastSAC and SKRL on Torch are always installed. --skrl-jax adds
# the JAX runtime, and --rslrl adds the RSLRL plugin; multiple flags combine.
# --tbb installs Intel TBB so numba parallel kernels use its threading layer
# (avoids the OpenMP per-region thread-wakeup storm on many-core hosts).
# Linux installs Intel TBB by default so numba parallel kernels use its threading
# layer (avoids the OpenMP per-region thread-wakeup storm on many-core hosts).
# --tbb remains available to explicitly request TBB on other platforms.

set -e

Expand All @@ -27,7 +28,7 @@ usage() {
echo " --skrl-torch Training backend: SKRL on PyTorch (default)"
echo " --skrl-jax Training backend: SKRL on JAX (Linux only)"
echo " --rslrl Training backend: RSL-RL on PyTorch"
echo " --tbb Install Intel TBB for numba parallel kernels (recommended on many-core hosts)"
echo " --tbb Install Intel TBB for numba parallel kernels (default on Linux)"
echo " -h, --help Show this help"
}

Expand Down Expand Up @@ -142,6 +143,7 @@ if [ -z "$GPU" ]; then
fi

case "$(uname -s 2>/dev/null)" in
Linux) IS_WINDOWS=""; TBB=1 ;;
MINGW*|MSYS*|CYGWIN*) IS_WINDOWS=1 ;;
*) IS_WINDOWS="" ;;
esac
Expand All @@ -151,10 +153,13 @@ if [ "$GPU" = rocm ] && [ -n "$IS_WINDOWS" ]; then
exit 1
fi

TBB_EXTRA=""
[ -n "$TBB" ] && TBB_EXTRA=" --extra tbb"

if [ -n "$ALL" ]; then
if [ "$GPU" = rocm ]; then
set -x
uv sync --all-packages --all-groups --extra rocm --extra rslrl --extra unitree --extra docs
uv sync --all-packages --all-groups --extra rocm --extra rslrl --extra unitree --extra docs$TBB_EXTRA
else
set -x
uv sync --all-packages --all-groups --all-extras --no-extra rocm
Expand All @@ -164,7 +169,7 @@ else
[ -n "$SKRL_JAX" ] && EXTRAS="$EXTRAS --extra skrl-jax"
[ -n "$RSLRL" ] && EXTRAS="$EXTRAS --extra rslrl"
[ -n "$DOCS" ] && EXTRAS="$EXTRAS --extra docs"
[ -n "$TBB" ] && EXTRAS="$EXTRAS --extra tbb"
EXTRAS="$EXTRAS$TBB_EXTRA"
set -x
uv sync --no-default-groups --extra "$GPU"$EXTRAS
fi
Loading