This guide describes the reference installation for WNM-3D, including the model runtime, CUDA-accelerated dependencies, and the GN-Bench evaluation stack.
Important
WNM-3D and GN-Bench use different PyTorch and CUDA versions. Install them in separate Conda environments as documented below.
| Component | Conda environment | Python | PyTorch | CUDA toolkit |
|---|---|---|---|---|
| WNM-3D policy server and training | wnm_3d |
3.11 | 2.8.0 | 12.9 |
| GN0 / GN-Bench evaluation | bae |
3.10 | 2.4.0 | 12.4 |
Before proceeding, ensure that the host system provides:
- A Linux environment with an NVIDIA GPU and a compatible NVIDIA driver
- Git
- Miniconda, Anaconda, or Miniforge
- Sufficient local storage for model checkpoints, simulator assets, and the InteriorGS and GN-Matrix datasets
You can confirm that the NVIDIA driver is available with:
nvidia-smiThe released Stage-III policy server has been validated on an NVIDIA H100
80 GB GPU. In the reference single-replica configuration
(--num-replicas 1), the loaded server used approximately 27 GiB of GPU
memory. This is an observed deployment figure rather than a strict minimum;
memory use can vary with the CUDA stack, attention implementation, and
inference settings.
The default server command launches eight independent replicas and therefore
expects eight visible GPUs. For a single-GPU deployment, pass
--cuda-devices 0 --num-replicas 1. The training launchers also default to
eight GPUs and retain the batch sizes and distributed settings used by the
project; other configurations should be validated for both memory use and
effective global batch size.
Each released stage checkpoint occupies approximately 26 GiB. Reserve additional space for datasets, simulator assets, training checkpoints, and optimizer states.
git clone https://github.com/TeleHuman/WNM-3D.git
cd WNM-3DIf you already have a local checkout, run the remaining commands from the repository root.
Create a dedicated Python 3.11 environment:
conda create -n wnm_3d python=3.11 -y
conda activate wnm_3dUpgrade the Python packaging toolchain before installing compiled dependencies:
python -m pip install --upgrade pip setuptools wheelInstall the reference PyTorch build for CUDA 12.9:
python -m pip install \
torch==2.8.0 \
torchvision==0.23.0 \
torchaudio==2.8.0 \
--index-url https://download.pytorch.org/whl/cu129Install the matching CUDA toolkit used to compile CUDA extensions:
conda install \
-c "nvidia/label/cuda-12.9.0" \
-c nvidia \
-c conda-forge \
cuda-toolkit=12.9 \
-yInstall WNM-3D and its Python dependencies in editable mode:
python -m pip install -e .For development and testing, install the optional development dependencies:
python -m pip install -e '.[dev]'Install FlashAttention without build isolation so that it compiles against the PyTorch and CUDA versions in the active environment:
python -m pip install flash-attn --no-build-isolationIf a source build is not supported on your platform, consult the official FlashAttention release page for compatible installation artifacts.
Confirm that PyTorch detects CUDA and that the WNM-3D package is importable:
python - <<'PY'
import torch
import gammanav
print(f"PyTorch: {torch.__version__}")
print(f"CUDA runtime: {torch.version.cuda}")
print(f"CUDA available: {torch.cuda.is_available()}")
print(f"WNM-3D package: {gammanav.__path__[0]}")
PYFor a GPU-enabled deployment, CUDA available should report True.
WNM-3D provides the policy server. The companion GN0 repository provides the GN-Bench simulator and evaluation workers.
From the parent directory of WNM-3D, clone GN0 and initialize the benchmark
tooling:
cd ..
git clone https://github.com/TeleHuman/GN0.git
cd GN0
git submodule update --init GN-Bench-ToolsCreate a separate Python 3.10 environment for the simulator stack:
conda create -n bae python=3.10 -y
conda activate bae
python -m pip install --upgrade pip setuptools wheelInstall the GN-Bench reference PyTorch build and CUDA 12.4 toolkit:
python -m pip install \
torch==2.4.0 \
torchvision==0.19.0 \
torchaudio==2.4.0 \
--index-url https://download.pytorch.org/whl/cu124
conda install \
-c "nvidia/label/cuda-12.4.0" \
-c nvidia \
-c conda-forge \
cuda-toolkit=12.4 \
-yInstall GN-Bench, GN0, and the matching gsplat build:
python -m pip install -e ./GN-Bench-Tools
python -m pip install -r requirements.txt
python -m pip install -e .
python -m pip install gsplat \
--index-url https://docs.gsplat.studio/whl/pt24cu124For simulator-specific requirements and troubleshooting, refer to the GN0 installation guide.