NVlabs / stylegan3

Official PyTorch implementation of StyleGAN3
Other
6.3k stars 1.11k forks source link

Setting up PyTorch plugin "bias_act_plugin"... Failed! #215

Open h-OUS-e opened 1 year ago

h-OUS-e commented 1 year ago

Describe the bug Hello, I am trying to run stylegan3 on my windows 10 pc (3080ti), but I keep getting the issue that "Setting up PyTorch plugin "bias_act_plugin"... Failed!". I tried several solutions including deleting and reinstalling MS visual studio 2022, and cuda toolkit 11.6, and 11.1, and setting the right paths, but nothing is working and I keep getting the same error. Any advice on how to fix the issue?

To Reproduce Steps to reproduce the behavior:

  1. In 'stylegan3' directory, run command 'python gen_images.py --outdir=out --trunc=1 --seeds=2 --network=https://api.ngc.nvidia.com/v2/models/nvidia/research/stylegan3/versions/1/files/stylegan3-r-afhqv2-512x512.pkl'
  2. See error.

` Loading networks from "https://api.ngc.nvidia.com/v2/models/nvidia/research/stylegan3/versions/1/files/stylegan3-r-afhqv2-512x512.pkl"... C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\scipy__init__.py:146: UserWarning: A NumPy version >=1.16.5 and <1.23.0 is required for this version of SciPy (detected version 1.24.1 warnings.warn(f"A NumPy version >={np_minversion} and <{np_maxversion}" Generating image for seed 2 (0/1) ... Setting up PyTorch plugin "bias_act_plugin"... Failed! Traceback (most recent call last): File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\utils\cpp_extension.py", line 1900, in _run_ninja_build subprocess.run( File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\subprocess.py", line 528, in run raise CalledProcessError(retcode, process.args, subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "C:\Users\PECIH\Documents\GitHub\stylegan3\gen_images.py", line 143, in generate_images() # pylint: disable=no-value-for-parameter File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\click\core.py", line 1130, in call return self.main(args, kwargs) File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\click\core.py", line 1055, in main rv = self.invoke(ctx) File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\click\core.py", line 1404, in invoke return ctx.invoke(self.callback, ctx.params) File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\click\core.py", line 760, in invoke return __callback(args, kwargs) File "C:\Users\PECIH\Documents\GitHub\stylegan3\gen_images.py", line 135, in generate_images img = G(z, label, truncation_psi=truncation_psi, noise_mode=noise_mode) File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\nn\modules\module.py", line 1194, in _call_impl return forward_call(*input, *kwargs) File "", line 503, in forward File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\nn\modules\module.py", line 1194, in _call_impl return forward_call(input, kwargs) File "", line 143, in forward File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\nn\modules\module.py", line 1194, in _call_impl return forward_call(*input, **kwargs) File "", line 92, in forward File "C:\Users\PECIH\Documents\GitHub\stylegan3\torch_utils\ops\bias_act.py", line 84, in bias_act if impl == 'cuda' and x.device.type == 'cuda' and _init(): File "C:\Users\PECIH\Documents\GitHub\stylegan3\torch_utils\ops\bias_act.py", line 41, in _init _plugin = custom_ops.get_plugin( File "C:\Users\PECIH\Documents\GitHub\stylegan3\torch_utils\custom_ops.py", line 136, in get_plugin torch.utils.cpp_extension.load(name=module_name, build_directory=cached_build_dir, File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\utils\cpp_extension.py", line 1284, in load return _jit_compile( File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\utils\cpp_extension.py", line 1508, in _jit_compile _write_ninja_file_and_build_library( File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\utils\cpp_extension.py", line 1623, in _write_ninja_file_and_build_library _run_ninja_build( File "C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\utils\cpp_extension.py", line 1916, in _run_ninja_build raise RuntimeError(message) from e RuntimeError: Error building extension 'bias_act_plugin': [1/2] cl /showIncludes -DTORCH_EXTENSION_NAME=bias_act_plugin -DTORCH_API_INCLUDE_EXTENSION_H -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\TH -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\include" -IC:\Users\PECIH\miniconda3\envs\stylegan3\Include -D_GLIBCXX_USE_CXX11_ABI=0 /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -c C:\Users\PECIH\AppData\Local\torch_extensions\torch_extensions\Cache\py39_cu116\bias_act_plugin\d197188c6eb43b2685156af41c1c4adc-nvidia-geforce-rtx-3080-ti\bias_act.cpp /Fobias_act.o FAILED: bias_act.o cl /showIncludes -DTORCH_EXTENSION_NAME=bias_act_plugin -DTORCH_API_INCLUDE_EXTENSION_H -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\TH -IC:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.6\include" -IC:\Users\PECIH\miniconda3\envs\stylegan3\Include -D_GLIBCXX_USE_CXX11_ABI=0 /MD /wd4819 /wd4251 /wd4244 /wd4267 /wd4275 /wd4018 /wd4190 /EHsc -c C:\Users\PECIH\AppData\Local\torch_extensions\torch_extensions\Cache\py39_cu116\bias_act_plugin\d197188c6eb43b2685156af41c1c4adc-nvidia-geforce-rtx-3080-ti\bias_act.cpp /Fobias_act.o Microsoft (R) C/C++ Optimizing Compiler Version 19.34.31937 for x64 Copyright (C) Microsoft Corporation. All rights reserved.

C:\Users\PECIH\miniconda3\envs\stylegan3\lib\site-packages\torch\include\c10/macros/Macros.h(3): fatal error C1083: Cannot open include file: 'cassert': No such file or directory ninja: build stopped: subcommand failed. `

Expected behavior I was expecting an image to be generate but got this issue instead.

Desktop (please complete the following information):

KryptixOne commented 1 year ago

Alright, So i've been dealing with this problem for the last... i dunno 16 hours or so and I finally got my setup up and running.

That being said, I'm not sure which one was the killing move so I'll say all the changes I made:

  1. In Enviornment Variables, create two new variables LIB and LIBPATH with the variable being set to the location of your python library file pythonXX.lib
  2. Download CMAKE from https://cmake.org/
  3. Install Visual Studio 2019 community edition and be sure to install Desktop Dev with C++
  4. Finally, add this to your path variables, "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Auxiliary\Build\vcvars64.bat" or whereever your VCVARS bat file is.

Additional info: Using python 3.8.8 PyTorch 1.13.1 + Cu117

Hopefully one of these steps help you out too!

qinghew commented 1 year ago

3090, ubuntu meets this issue. install re2c by: tar -xvzfre2c-1.0.3.targz cd re2c-1.0.3/ autoreconf-i-Wall make make install

then install ninja by: git clone git://github.com/ninja-build/ninja.git && cd ninja ./configure.py --bootstrap cp ninja /usr/bin/

the current terminal can use ninja