Set up a fresh Python environment:
conda create -n bayes3d python=3.9
conda activate bayes3d
Install compatible versions JAX and Torch:
pip install --upgrade torch==2.2.0 torchvision==0.17.0+cu118 --index-url https://download.pytorch.org/whl/cu118
pip install --upgrade jax[cuda11_local]==0.4.20 -f https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
Bayes3D is built on top of GenJAX, which is currently hosted in a private Python package repository. To configure your machine to access GenJAX:
- File an issue asking @sritchie to give you access.
- Install the Google Cloud command line tools.
- Follow the instructions on the installation page
- run
gcloud auth application-default login
as described in this guide.
Then run the following command to configure pip
to use these new gcloud
commands:
pip install keyring keyrings.google-artifactregistry-auth
Finally, install Bayes3D:
pip install bayes3d --extra-index-url https://us-west1-python.pkg.dev/probcomp-caliban/probcomp/simple/
Download model and data assets:
wget -q -O - https://raw.githubusercontent.com/probcomp/bayes3d/main/download.sh | bash
Run python demo.py
to test installation setup.
Error:
fatal error: EGL/egl.h: No such file or directory
#include <EGL/egl.h>
fatal error: GL/glu.h: No such file or directory
#include <GL/glu.h>
Run:
sudo apt-get install mesa-common-dev libegl1-mesa-dev libglfw3-dev libgl1-mesa-dev libglu1-mesa-dev
Error:
[F glutil.cpp:338] eglInitialize() failed
Aborted (core dumped)
Reinstall NVIDIA drivers with sudo apt-get install nvidia-driver-XXX
. Check version of driver using nvidia-smi
.
Error:
ImportError: libcupti.so.11.7: cannot open shared object file: No such file or directory
Run:
pip install torch==2.0.0+cu118 torchvision==0.15.1+cu118 torchaudio==2.0.1 --index-url https://download.pytorch.org/whl/cu118
Error:
raise RuntimeError("Ninja is required to load C++ extensions")
Run:
sudo apt-get update
sudo apt-get install ninja-build
To check your CUDA version:
nvcc --version
- Start new VM instance (see link). Select GPU - NVIDIA V100 and Machine Type 8vCPU 4 Core 30GB.
-From the VM instances page, searched for public image c2-deeplearning-pytorch-2-0-gpu-v20230925-debian-11-py310
. Increase storage to 1000GB.
-
Note that public image names get updated frequently, so it is possible you may not find the one mentioned above. To find the latest public image, go to the public list, and look for an image as close to the one above (Debian 11, CUDA 11.8, Python 3.10, Pytorch 2.0 etc.).
-
SSH into instance and when prompted, install the NVIDIA drivers.
-
Follow installation guide.
Distributed under the Apache 2.0 license. See LICENSE.