Install + build log for NVIDIA's FVDB (Feature Volume Deep Learning)
on Ubuntu 24.04, CUDA 12.6, RTX 3060 (compute capability 8.6).
Documents the four-issue cascade hit during bring-up: venv pip
failure, conda environment conflict, PyTorch-vs-system C++11 ABI
mismatch, and the TORCH_CUDA_ARCH_LIST="8.6" flag
that has to be set for Ampere-only builds. The successful build
enables the FVDB-based work later referenced from the MambaFlow3D
(Topic 26) and G-Splats-vs-VDB (Topic 23) topics.
FVDB is the PyTorch-integrated differentiable sparse-voxel library NVIDIA ships as the deep-learning replacement for OpenVDB. The thesis line wants it for two reasons: (i) training networks on sparse-voxel data without writing custom CUDA kernels, (ii) the procedural-pipeline integration leg of the G-Splats-vs-VDB decision (Topic 23) — VDB is Houdini-native, FVDB is its differentiable cousin.
The target rig: rented Vast.ai instance, RTX 3060 12 GB, Ubuntu 24.04, CUDA 12.6 (later 12.9), nvcc 12.6.85. The reference install instructions in the FVDB repo assume Ubuntu 22.04 + CUDA 11.8 + pre-built wheels — the bring-up on the current stack hits four distinct failure modes before the build succeeds.
| # | Symptom | Cause | Fix |
|---|---|---|---|
| 1 | python3 -m venv fvdb fails on Ubuntu 24.04 | ensurepip is not bundled with the system python on Ubuntu 24.04 Docker images | Use python3 -m venv --without-pip, then bootstrap pip via get-pip.py; alternative: apt install python3-venv python3-pip python3-dev |
| 2 | conda env create -f env/dev_environment.yml fails with prefix already exists | Conda environment from a previous attempt is still on disk | Either conda activate fvdb (reuse it) or conda env remove -n fvdb + recreate |
| 3 | FVDB build fails with C++11 ABI mismatch against system PyTorch | PyPI PyTorch wheel uses pre-C++11 ABI; conda-forge PyTorch uses C++11 ABI; FVDB build inherits the wrong one | Install PyTorch from conda-forge (not pip) so the ABI matches FVDB's expectation |
| 4 | Build emits warnings about non-Ampere compute capabilities; runtime fails on Ampere card | FVDB build defaults to compile-for-all-architectures, which fails on some non-Ampere paths | Set TORCH_CUDA_ARCH_LIST="8.6" before ./build.sh install -v; restricts compile to Ampere only |
conda-forge PyTorch + TORCH_CUDA_ARCH_LIST="8.6".
Two flags, build succeeds.
The two non-obvious requirements that together unstick an
otherwise vanilla FVDB install: install PyTorch from
conda-forge rather than pip (C++11 ABI alignment),
and set TORCH_CUDA_ARCH_LIST="8.6" before invoking
the build script (restricts compile to Ampere only). With both
set, the install on a Vast.ai RTX 3060 12 GB takes ~20–30 minutes
and produces a working FVDB import in PyTorch.
Step through the four-issue cascade. Each button replays one bring-up failure; the right pane shows the diagnostic output and the one-line fix.