nerfstudio
nerfstudio copied to clipboard
Unsupported gpu architecture 'compute_89'
When I try installing it i got this error after running this: pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
N_H -DTORCH_EXTENSION_NAME=_C -D_GLIBCXX_USE_CXX11_ABI=0 --use-local-env nvcc fatal : Unsupported gpu architecture 'compute_89' error: command 'C:\\Program Files\\NVIDIA GPU Computing Toolkit\\CUDA\\v11.2\\bin\\nvcc.exe' failed with exit code 1 [end of output]
So i check nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2022 NVIDIA Corporation Built on Tue_Mar__8_18:36:24_Pacific_Standard_Time_2022 Cuda compilation tools, release 11.6, V11.6.124 Build cuda_11.6.r11.6/compiler.31057947_0
Edit: My GPU 4090
I think you will need to install CUDA toolkit >= 11.8
https://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/
I have installed 11.8 and added it to the system env, however here is the full error as it did not change anyhting with 11.8
nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2022 NVIDIA Corporation Built on Wed_Sep_21_10:41:10_Pacific_Daylight_Time_2022 Cuda compilation tools, release 11.8, V11.8.89 Build cuda_11.8.r11.8/compiler.31833905_0
`pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com Collecting git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch Cloning https://github.com/NVlabs/tiny-cuda-nn/ to c:\users\XXX\appdata\local\temp\pip-req-build-r0zahs1x Running command git clone --filter=blob:none --quiet https://github.com/NVlabs/tiny-cuda-nn/ 'C:\Users\XXX\AppData\Local\Temp\pip-req-build-r0zahs1x' Resolved https://github.com/NVlabs/tiny-cuda-nn/ to commit 9acde9481f76c8f00fb8f0e75dae9c9f4b892de8 Running command git submodule update --init --recursive -q Preparing metadata (setup.py) ... done Building wheels for collected packages: tinycudann Building wheel for tinycudann (setup.py) ... error error: subprocess-exited-with-error
× python setup.py bdist_wheel did not run successfully. │ exit code: 1 ╰─> [21 lines of output] Building PyTorch extension for tiny-cuda-nn version 1.6 Obtained compute capability 89 from PyTorch running bdist_wheel running build running build_py creating build creating build\lib.win-amd64-cpython-38 creating build\lib.win-amd64-cpython-38\tinycudann copying tinycudann\modules.py -> build\lib.win-amd64-cpython-38\tinycudann copying tinycudann_init_.py -> build\lib.win-amd64-cpython-38\tinycudann running egg_info creating tinycudann.egg-info writing tinycudann.egg-info\PKG-INFO writing dependency_links to tinycudann.egg-info\dependency_links.txt writing top-level names to tinycudann.egg-info\top_level.txt writing manifest file 'tinycudann.egg-info\SOURCES.txt' reading manifest file 'tinycudann.egg-info\SOURCES.txt' writing manifest file 'tinycudann.egg-info\SOURCES.txt' copying tinycudann\bindings.cpp -> build\lib.win-amd64-cpython-38\tinycudann running build_ext error: [WinError 2] The system cannot find the file specified [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. ERROR: Failed building wheel for tinycudann Running setup.py clean for tinycudann Failed to build tinycudann Installing collected packages: tinycudann Running setup.py install for tinycudann ... error error: subprocess-exited-with-error
× Running setup.py install for tinycudann did not run successfully. │ exit code: 1 ╰─> [15 lines of output] Building PyTorch extension for tiny-cuda-nn version 1.6 Obtained compute capability 89 from PyTorch running install C:\Users\XXX\Anaconda3\envs\nerfstudio\lib\site-packages\setuptools\command\install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools. warnings.warn( running build running build_py running egg_info writing tinycudann.egg-info\PKG-INFO writing dependency_links to tinycudann.egg-info\dependency_links.txt writing top-level names to tinycudann.egg-info\top_level.txt reading manifest file 'tinycudann.egg-info\SOURCES.txt' writing manifest file 'tinycudann.egg-info\SOURCES.txt' running build_ext error: [WinError 2] The system cannot find the file specified [end of output]
note: This error originates from a subprocess, and is likely not a problem with pip. error: legacy-install-failure
× Encountered error while trying to install package. ╰─> tinycudann
note: This is an issue with the package mentioned above, not pip. hint: See above for output from the failure.`
running build_ext
error: [WinError 2] The system cannot find the file specified
Hmmm.... interesting. Not sure what is going on. Maybe you can try to clone the repo and build from source that way? I am also not familiar with Windows, so i cannot try to reproduce your error.
I also do not have a GPU as good as yours :)
Also consider raising an issue on the TinyCudaNN github. They may have more pointers - https://github.com/NVlabs/tiny-cuda-nn/issues
I installed it using Visual Studio 2019 as follows. Operates on CUDA 11.6.
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 -f https://download.pytorch.org/whl/torch_stable.html pip install git+https://github.com/NVlabs/tiny-cuda-nn/#subdirectory=bindings/torch
Take a look at https://github.com/NVlabs/tiny-cuda-nn/issues/245
@Tobe2d I also ran into similar problem trying to install on win10 with RTX4090, have you found a solution yet?
I fresh install everything and tested so many suggested solutions till it work.
Below is my conda env detils. hope it will help you.
name: nerfstudio
channels:
- conda-forge
- defaults
dependencies:
- ca-certificates=2022.12.7=h5b45459_0
- certifi=2022.12.7=pyhd8ed1ab_0
- libffi=3.4.2=hd77b12b_6
- openssl=1.1.1s=h2bbff1b_0
- python=3.8.15=h6244533_2
- sqlite=3.40.0=h2bbff1b_0
- vc=14.2=h21ff451_1
- vs2015_runtime=14.27.29016=h5e58377_2
- wincertstore=0.2=py38haa95532_2
- pip:
- absl-py==1.3.0
- aiohttp==3.8.1
- aioice==0.7.6
- aiortc==1.3.2
- aiosignal==1.3.1
- alabaster==0.7.13
- anyio==3.6.2
- appdirs==1.4.4
- argon2-cffi==21.3.0
- argon2-cffi-bindings==21.2.0
- astroid==2.11.7
- asttokens==2.2.1
- async-timeout==4.0.2
- atomicwrites==1.4.1
- attrs==22.2.0
- av==9.2.0
- babel==2.11.0
- backcall==0.2.0
- beautifulsoup4==4.11.1
- bidict==0.22.1
- black==22.3.0
- bleach==5.0.1
- cachetools==5.2.0
- cffi==1.15.1
- charset-normalizer==2.1.1
- click==8.1.3
- colorama==0.4.6
- comm==0.1.2
- commonmark==0.9.1
- configargparse==1.5.3
- cryptography==38.0.4
- cycler==0.11.0
- dash==2.7.1
- dash-core-components==2.0.0
- dash-html-components==2.0.0
- dash-table==5.0.0
- debugpy==1.6.4
- decorator==5.1.1
- defusedxml==0.7.1
- descartes==1.1.0
- dill==0.3.6
- dnspython==2.2.1
- docker-pycreds==0.4.0
- docstring-parser==0.14.1
- docutils==0.19
- entrypoints==0.4
- execnet==1.9.0
- executing==1.2.0
- fastjsonschema==2.16.2
- filelock==3.9.0
- fire==0.5.0
- flask==2.2.2
- fonttools==4.38.0
- frozendict==2.3.4
- frozenlist==1.3.3
- functorch==0.2.1
- furo==2022.9.29
- gdown==4.6.0
- gitdb==4.0.10
- gitpython==3.1.30
- google-auth==2.15.0
- google-auth-oauthlib==0.4.6
- google-crc32c==1.5.0
- greenlet==2.0.2
- grpcio==1.51.1
- h5py==3.7.0
- idna==3.4
- imageio==2.21.1
- imagesize==1.4.1
- importlib-metadata==6.0.0
- importlib-resources==5.10.2
- iniconfig==1.1.1
- ipykernel==6.19.4
- ipython==8.6.0
- ipython-genutils==0.2.0
- ipywidgets==8.0.4
- isort==5.11.4
- itsdangerous==2.1.2
- jedi==0.18.2
- jinja2==3.1.2
- joblib==1.2.0
- json5==0.9.11
- jsonschema==4.17.3
- jupyter==1.0.0
- jupyter-cache==0.5.0
- jupyter-client==7.4.8
- jupyter-console==6.4.4
- jupyter-core==5.1.2
- jupyter-server==1.23.4
- jupyterlab==3.3.4
- jupyterlab-pygments==0.2.2
- jupyterlab-server==2.18.0
- jupyterlab-widgets==3.0.5
- kiwisolver==1.4.4
- lazy-object-proxy==1.8.0
- lpips==0.1.4
- markdown==3.4.1
- markdown-it-py==2.2.0
- markupsafe==2.1.1
- matplotlib==3.5.3
- matplotlib-inline==0.1.6
- mccabe==0.7.0
- mdit-py-plugins==0.3.5
- mdurl==0.1.2
- mediapy==1.1.0
- mistune==2.0.4
- msgpack==1.0.4
- msgpack-numpy==0.4.8
- multidict==6.0.4
- mypy==0.991
- mypy-extensions==0.4.3
- myst-nb==0.16.0
- myst-parser==0.18.1
- nbclassic==0.4.8
- nbclient==0.5.13
- nbconvert==7.2.5
- nbformat==5.5.0
- nerfacc==0.3.5
- nerfstudio==0.1.19
- nest-asyncio==1.5.6
- netifaces==0.11.0
- networkx==2.8.8
- ninja==1.10.2.3
- notebook==6.5.2
- notebook-shim==0.2.2
- numpy==1.24.1
- nuscenes-devkit==1.1.9
- oauthlib==3.2.2
- open3d==0.16.0
- opencv-python==4.6.0.66
- packaging==22.0
- pandocfilters==1.5.0
- parso==0.8.3
- pathspec==0.10.3
- pathtools==0.1.2
- pickleshare==0.7.5
- pillow==9.3.0
- pip==23.0.1
- pkgutil-resolve-name==1.3.10
- platformdirs==2.6.2
- plotly==5.7.0
- pluggy==1.0.0
- prometheus-client==0.15.0
- promise==2.3
- prompt-toolkit==3.0.36
- protobuf==3.20.2
- psutil==5.9.4
- pure-eval==0.2.2
- py==1.11.0
- pyasn1==0.4.8
- pyasn1-modules==0.2.8
- pybind11==2.10.3
- pycocotools==2.0.6
- pycparser==2.21
- pyee==9.0.4
- pyequilib==0.5.6
- pygments==2.14.0
- pylibsrtp==0.7.1
- pylint==2.13.4
- pymeshlab==2022.2.post2
- pyngrok==5.1.0
- pyparsing==3.0.9
- pyquaternion==0.9.9
- pyrsistent==0.19.3
- pysocks==1.7.1
- pytest==7.1.2
- pytest-forked==1.4.0
- pytest-xdist==2.5.0
- python-dateutil==2.8.2
- python-engineio==4.3.4
- python-socketio==5.7.1
- pytz==2022.7
- pywavelets==1.4.1
- pywin32==305
- pywinpty==2.0.10
- pyyaml==6.0
- pyzmq==24.0.1
- qtconsole==5.4.0
- qtpy==2.3.0
- readthedocs-sphinx-search==0.1.2
- requests==2.28.1
- requests-oauthlib==1.3.1
- rich==12.5.1
- rsa==4.9
- scikit-image==0.19.3
- scikit-learn==1.2.0
- scipy==1.9.3
- send2trash==1.8.0
- sentry-sdk==1.12.1
- setproctitle==1.3.2
- setuptools==67.6.1
- shapely==2.0.0
- shortuuid==1.0.11
- shtab==1.5.8
- six==1.16.0
- smmap==5.0.0
- sniffio==1.3.0
- snowballstemmer==2.2.0
- soupsieve==2.3.2.post1
- sphinx==5.2.1
- sphinx-argparse==0.3.1
- sphinx-basic-ng==1.0.0b1
- sphinx-copybutton==0.5.0
- sphinx-design==0.2.0
- sphinx-togglebutton==0.3.2
- sphinxcontrib-applehelp==1.0.4
- sphinxcontrib-devhelp==1.0.2
- sphinxcontrib-htmlhelp==2.0.1
- sphinxcontrib-jsmath==1.0.1
- sphinxcontrib-qthelp==1.0.3
- sphinxcontrib-serializinghtml==1.1.5
- sphinxemoji==0.2.0
- sphinxext-opengraph==0.6.3
- sqlalchemy==1.4.47
- stack-data==0.6.2
- tabulate==0.9.0
- tenacity==8.1.0
- tensorboard==2.9.0
- tensorboard-data-server==0.6.1
- tensorboard-plugin-wit==1.8.1
- termcolor==2.2.0
- terminado==0.17.1
- threadpoolctl==3.1.0
- tifffile==2022.10.10
- tinycss2==1.2.1
- tinycudann==1.7
- tokenize-rt==5.0.0
- tomli==2.0.1
- torch==1.12.1+cu113
- torch-fidelity==0.3.0
- torchmetrics==0.11.0
- torchtyping==0.1.4
- torchvision==0.13.1+cu113
- tornado==6.2
- tqdm==4.64.1
- traitlets==5.8.0
- typeguard==2.13.3
- typing-extensions==4.4.0
- tyro==0.3.36
- u-msgpack-python==2.7.2
- urllib3==1.26.13
- wandb==0.13.7
- wcwidth==0.2.5
- webencodings==0.5.1
- websocket-client==1.4.2
- werkzeug==2.2.2
- wheel==0.38.4
- widgetsnbextension==4.0.5
- wrapt==1.14.1
- xatlas==0.0.7
- yarl==1.8.2
- zipp==3.11.0
prefix: C:\Users\username\anaconda3\envs\nerfstudio
@Tobe2d thanks for your reply, looks like you are using "torch==1.12.1+cu113", may I ask what the following do you use?
- OS (Windows or Linux)
- Nvidia driver version
- CUDA version
- Visual Studio version
@cyz2727327 Sure, check the below:
-
OS (Windows or Linux) Windows 11
-
Nvidia driver version Studio Drivers 531.41
-
CUDA version Release 12.1, V12.1.66 Build cuda_12.1.r12.1/compiler.32415258_0
-
Visual Studio version I have 2019 and 2022
Those are my workign settings. Hope it help.
@Tobe2d hi may i ask what's your pytorch version?
for me i got
The detected CUDA version (12.1) mismatches the version that was used to compile PyTorch (11.7). Please make sure to use the same CUDA versions.