fangwei123456 / spikingjelly

SpikingJelly is an open-source deep learning framework for Spiking Neural Network (SNN) based on PyTorch.
https://spikingjelly.readthedocs.io
Other
1.35k stars 239 forks source link

问题:ModuleNotFoundError:No module named '_C_neuron' #343

Open zuwenqiang opened 1 year ago

zuwenqiang commented 1 year ago

Hi~在解决这个问题时,参照了https://github.com/fangwei123456/spikingjelly/issues/46 我的环境是:pytorch=1.8.2+cu111,RTX3080,win10 我通过git clone,并且git reset来安装spikingjelly 在python setup.py install出现问题: C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py:304: UserWarning: Error checking compiler version for cl: 'utf-8' codec can't decode byte 0xd3 in position 0: invalid continuation byte warnings.warn(f'Error checking compiler version for {compiler}: {error}') building '_C_neuron' extension Emitting ninja build file C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\build.ninja... Compiling objects... Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N) [1/2] C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -DWITH_CUDA -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\TH -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -IC:\Users\BAAI\anaconda3\envs\pytorch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -c C:\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.cu -o C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.obj -DCUDA_NO_HALF_OPERATORS -DCUDA_NO_HALF_CONVERSIONS -DCUDA_NO_BFLOAT16_CONVERSIONS -DCUDA_NO_HALF2_OPERATORS --expt-relaxed-constexpr -use_fast_math -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C_neuron -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_86,code=compute_86 -gencode=arch=compute_86,code=sm_86 FAILED: C:/Users/BAAI/Desktop/spikingjelly/build/temp.win-amd64-3.7/Release/Users/BAAI/Desktop/spikingjelly/spikingjelly/cext/csrc/neuron/neuron_forward_kernel.obj C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -DWITH_CUDA -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\TH -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -IC:\Users\BAAI\anaconda3\envs\pytorch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -c C:\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.cu -o C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_forward_kernel.obj -DCUDA_NO_HALF_OPERATORS -DCUDA_NO_HALF_CONVERSIONS -DCUDA_NO_BFLOAT16_CONVERSIONS -DCUDA_NO_HALF2_OPERATORS --expt-relaxed-constexpr -use_fast_math -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C_neuron -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_86,code=compute_86 -gencode=arch=compute_86,code=sm_86 C:/Users/BAAI/anaconda3/envs/pytorch/lib/site-packages/torch/include\c10/macros/Macros.h(189): warning C4067: 预处理器指令后有意外标记 - 应输入换行符 C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\pybind11\detail/common.h(108): warning C4005: “HAVE_SNPRINTF”: 宏重定义 C:\Users\BAAI\anaconda3\envs\pytorch\include\pyerrors.h(490): note: 参见“HAVE_SNPRINTF”的前一个定义 C:/Users/BAAI/anaconda3/envs/pytorch/lib/site-packages/torch/include\c10/macros/Macros.h(189): warning C4067: 预处理器指令后有意外标记 - 应输入换行符 C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\pybind11\detail/common.h(108): warning C4005: “HAVE_SNPRINTF”: 宏重定义 C:\Users\BAAI\anaconda3\envs\pytorch\include\pyerrors.h(490): note: 参见“HAVE_SNPRINTF”的前一个定义 neuron_forward_kernel.cu nvcc error : 'cudafe++' died with status 0xC00000FD (STACK_OVERFLOW) [2/2] C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -DWITH_CUDA -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\TH -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -IC:\Users\BAAI\anaconda3\envs\pytorch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -c C:\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.cu -o C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.obj -DCUDA_NO_HALF_OPERATORS -DCUDA_NO_HALF_CONVERSIONS -DCUDA_NO_BFLOAT16_CONVERSIONS -DCUDA_NO_HALF2_OPERATORS --expt-relaxed-constexpr -use_fast_math -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C_neuron -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_86,code=compute_86 -gencode=arch=compute_86,code=sm_86 FAILED: C:/Users/BAAI/Desktop/spikingjelly/build/temp.win-amd64-3.7/Release/Users/BAAI/Desktop/spikingjelly/spikingjelly/cext/csrc/neuron/neuron_backward_kernel.obj C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\bin\nvcc --generate-dependencies-with-compile --dependency-output C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.obj.d --use-local-env -Xcompiler /MD -Xcompiler /wd4819 -Xcompiler /wd4251 -Xcompiler /wd4244 -Xcompiler /wd4267 -Xcompiler /wd4275 -Xcompiler /wd4018 -Xcompiler /wd4190 -Xcompiler /EHsc -Xcudafe --diag_suppress=base_class_has_different_dll_interface -Xcudafe --diag_suppress=field_without_dll_interface -Xcudafe --diag_suppress=dll_interface_conflict_none_assumed -Xcudafe --diag_suppress=dll_interface_conflict_dllexport_assumed -DWITH_CUDA -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\torch\csrc\api\include -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\TH -IC:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\THC "-IC:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -IC:\Users\BAAI\anaconda3\envs\pytorch\include -IC:\Users\BAAI\anaconda3\envs\pytorch\include "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.35.32215\ATLMFC\include" "-IC:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Auxiliary\VS\include" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\ucrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\um" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\shared" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\winrt" "-IC:\Program Files (x86)\Windows Kits\10\include\10.0.22000.0\cppwinrt" "-IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -c C:\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.cu -o C:\Users\BAAI\Desktop\spikingjelly\build\temp.win-amd64-3.7\Release\Users\BAAI\Desktop\spikingjelly\spikingjelly\cext\csrc\neuron\neuron_backward_kernel.obj -DCUDA_NO_HALF_OPERATORS -DCUDA_NO_HALF_CONVERSIONS -DCUDA_NO_BFLOAT16_CONVERSIONS -DCUDA_NO_HALF2_OPERATORS --expt-relaxed-constexpr -use_fast_math -DTORCH_API_INCLUDE_EXTENSION_H -DTORCH_EXTENSION_NAME=_C_neuron -D_GLIBCXX_USE_CXX11_ABI=0 -gencode=arch=compute_86,code=compute_86 -gencode=arch=compute_86,code=sm_86 C:/Users/BAAI/anaconda3/envs/pytorch/lib/site-packages/torch/include\c10/macros/Macros.h(189): warning C4067: 预处理器指令后有意外标记 - 应输入换行符 C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\pybind11\detail/common.h(108): warning C4005: “HAVE_SNPRINTF”: 宏重定义 C:\Users\BAAI\anaconda3\envs\pytorch\include\pyerrors.h(490): note: 参见“HAVE_SNPRINTF”的前一个定义 C:/Users/BAAI/anaconda3/envs/pytorch/lib/site-packages/torch/include\c10/macros/Macros.h(189): warning C4067: 预处理器指令后有意外标记 - 应输入换行符 C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\include\pybind11\detail/common.h(108): warning C4005: “HAVE_SNPRINTF”: 宏重定义 C:\Users\BAAI\anaconda3\envs\pytorch\include\pyerrors.h(490): note: 参见“HAVE_SNPRINTF”的前一个定义 neuron_backward_kernel.cu nvcc error : 'cudafe++' died with status 0xC00000FD (STACK_OVERFLOW) ninja: build stopped: subcommand failed. Traceback (most recent call last): File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py", line 1673, in _run_ninja_build env=env) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\subprocess.py", line 512, in run output=stdout, stderr=stderr) 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 "setup.py", line 76, in "build_ext": BuildExtension File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools__init__.py", line 153, in setup return distutils.core.setup(**attrs) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\core.py", line 148, in setup dist.run_commands() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\dist.py", line 966, in run_commands self.run_command(cmd) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\dist.py", line 985, in run_command cmd_obj.run() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\install.py", line 67, in run self.do_egg_install() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\install.py", line 109, in do_egg_install self.run_command('bdist_egg') File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\cmd.py", line 313, in run_command self.distribution.run_command(command) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\dist.py", line 985, in run_command cmd_obj.run() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\bdist_egg.py", line 164, in run cmd = self.call_command('install_lib', warn_dir=0) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\bdist_egg.py", line 150, in call_command self.run_command(cmdname) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\cmd.py", line 313, in run_command self.distribution.run_command(command) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\dist.py", line 985, in run_command cmd_obj.run() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\install_lib.py", line 11, in run self.build() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\command\install_lib.py", line 107, in build self.run_command('build_ext') File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\cmd.py", line 313, in run_command self.distribution.run_command(command) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\dist.py", line 985, in run_command cmd_obj.run() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\build_ext.py", line 79, in run _build_ext.run(self) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\Cython\Distutils\old_build_ext.py", line 186, in run _build_ext.build_ext.run(self) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\command\build_ext.py", line 340, in run self.build_extensions() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py", line 708, in build_extensions build_ext.build_extensions(self) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\Cython\Distutils\old_build_ext.py", line 195, in build_extensions _build_ext.build_ext.build_extensions(self) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\command\build_ext.py", line 449, in build_extensions self._build_extensions_serial() File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\command\build_ext.py", line 474, in _build_extensions_serial self.build_extension(ext) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\setuptools\command\build_ext.py", line 196, in build_extension _build_ext.build_extension(self, ext) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\distutils\command\build_ext.py", line 534, in build_extension depends=ext.depends) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py", line 690, in win_wrap_ninja_compile with_cuda=with_cuda) File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py", line 1359, in _write_ninja_file_and_compile_objects error_prefix='Error compiling objects for extension') File "C:\Users\BAAI\anaconda3\envs\pytorch\lib\site-packages\torch\utils\cpp_extension.py", line 1683, in _run_ninja_build raise RuntimeError(message) from e RuntimeError: Error compiling objects for extension

请问这个是和C++的编译环境有关吗?我在这步之前安装了VS build-up tools和CUDA的驱动

fangwei123456 commented 1 year ago

安装新版本试试?c_neuron是极其古老的代码版本...