Closed shuchenYee closed 6 months ago
I have the same error on Windows 11 with an RTX 4080 GPU. I followed the exact instructions from the installation page.
This is the command that fails where the data is at the specified path:
ns-train instant-ngp --data "path\to\data\nerfstudio\plane"
nvidia-smi
output :
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 551.61 Driver Version: 551.61 CUDA Version: 12.4 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA GeForce RTX 4080 WDDM | 00000000:01:00.0 On | N/A |
| 0% 44C P8 25W / 320W | 1620MiB / 16376MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
These are the installed packages:
This is the full output of the command including the error:
I found the solution to my problem and there are several steps to follow: before installing NerfStudio you have to install CUDA 11.8 exactly from here. Then make sure that the nvcc
command is detected in your terminal. Then other issues may eventually crop up when installing tiny cuda nn, which I solved by using these two comments: here and here. Finally, if you get issues with relating to "cl.exe" then you need to add the Visual Studio folder containing it to the path (see the FAQ here) for example add the following to PATH environment variable: C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64
Describe the bug I can only run the
ns-train nerfacto --data data/nerfstudio/poster
without any error. When I tried to run any other method, the command prompt outputs error.To Reproduce Steps to reproduce the behavior:
ns-train instant-ngp-bounded--data data/nerfstudio/poster
During handling of the above exception, another exception occurred:
Traceback (most recent call last): File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Users\yscsh\miniconda3\envs\nerfstudio\Scripts\ns-train.exe__main.py", line 7, in
File "C:\Users\yscsh\nerfstudio\nerfstudio\scripts\train.py", line 262, in entrypoint
main(
File "C:\Users\yscsh\nerfstudio\nerfstudio\scripts\train.py", line 247, in main
launch(
File "C:\Users\yscsh\nerfstudio\nerfstudio\scripts\train.py", line 189, in launch
main_func(local_rank=0, world_size=world_size, config=config)
File "C:\Users\yscsh\nerfstudio\nerfstudio\scripts\train.py", line 100, in train_loop
trainer.train()
File "C:\Users\yscsh\nerfstudio\nerfstudio\engine\trainer.py", line 250, in train
loss, loss_dict, metrics_dict = self.train_iteration(step)
File "C:\Users\yscsh\nerfstudio\nerfstudio\utils\profiler.py", line 112, in inner
out = func(*args, kwargs)
File "C:\Users\yscsh\nerfstudio\nerfstudio\engine\trainer.py", line 471, in trainiteration
, loss_dict, metrics_dict = self.pipeline.get_train_loss_dict(step=step)
File "C:\Users\yscsh\nerfstudio\nerfstudio\pipelines\dynamic_batch.py", line 79, in get_train_loss_dict
model_outputs, loss_dict, metrics_dict = super().get_train_loss_dict(step)
File "C:\Users\yscsh\nerfstudio\nerfstudio\utils\profiler.py", line 112, in inner
out = func(*args, *kwargs)
File "C:\Users\yscsh\nerfstudio\nerfstudio\pipelines\base_pipeline.py", line 300, in get_train_loss_dict
model_outputs = self._model(ray_bundle) # train distributed data parallel model if world_size > 1
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\nn\modules\module.py", line 1518, in _wrapped_call_impl
return self._call_impl(args, kwargs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\nn\modules\module.py", line 1527, in _call_impl
return forward_call(*args, kwargs)
File "C:\Users\yscsh\nerfstudio\nerfstudio\models\base_model.py", line 143, in forward
return self.get_outputs(ray_bundle)
File "C:\Users\yscsh\nerfstudio\nerfstudio\models\instant_ngp.py", line 175, in get_outputs
ray_samples, ray_indices = self.sampler(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\nn\modules\module.py", line 1518, in _wrapped_call_impl
return self._call_impl(*args, *kwargs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\nn\modules\module.py", line 1527, in _call_impl
return forward_call(args, kwargs)
File "C:\Users\yscsh\nerfstudio\nerfstudio\model_components\ray_samplers.py", line 482, in forward
ray_indices, starts, ends = self.occupancy_grid.sampling(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils_contextlib.py", line 115, in decorate_context
return func(*args, kwargs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\nerfacc\estimators\occ_grid.py", line 164, in sampling
intervals, samples = traverse_grids(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils_contextlib.py", line 115, in decorate_context
return func(*args, *kwargs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\nerfacc\grid.py", line 128, in traverse_grids
t_mins, t_maxs, hits = ray_aabb_intersect(rays_o, rays_d, aabbs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils_contextlib.py", line 115, in decorate_context
return func(args, kwargs)
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\nerfacc\grid.py", line 43, in ray_aabb_intersect
t_mins, t_maxs, hits = _C.ray_aabb_intersect(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\nerfacc\cuda\ init__.py", line 11, in call_cuda
from ._backend import _C
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\nerfacc\cuda_backend.py", line 76, in
_C = load(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils\cpp_extension.py", line 1308, in load
return _jit_compile(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils\cpp_extension.py", line 1710, in _jit_compile
_write_ninja_file_and_build_library(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils\cpp_extension.py", line 1810, in _write_ninja_file_and_build_library
_write_ninja_file_to_build_library(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils\cpp_extension.py", line 2242, in _write_ninja_file_to_build_library
_write_ninja_file(
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\site-packages\torch\utils\cpp_extension.py", line 2382, in _write_ninja_file
cl_paths = subprocess.check_output(['where',
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\subprocess.py", line 415, in check_output
return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
File "C:\Users\yscsh\miniconda3\envs\nerfstudio\lib\subprocess.py", line 516, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['where', 'cl']' returned non-zero exit status 1.
Screenshots