Я пытаюсь использовать пакет python, который использует cupy, на вычислительном сервере, используя планировщик slurm под CentOS, и при попытке использовать пакет я получил ошибки компиляции. Я закончу полный журнал в конце поста.
Фактическая проблема возникает из этой строки журнала:
cupy.cuda.compiler.CompileException: /usr/include/gnu/stubs.h(7): catastrophic error: cannot open source file "gnu/stubs-32.h"
Библиотека не была установлена, поэтому я спросил администраторовсервера для установки библиотеки: вот что они сделали:
ls /usr/include/gnu/
libc-version.h lib-names.h stubs-32.h stubs-64.h stubs.h
Что у меня есть:
- nvcc установлен, я добавляю перед запуском задания:
CUDA_PATH=/gpfs/softs/contrib/apps/cuda/9.2.14
- Я установил базовую версию Cupy: cupy-cuda92
- Библиотека заглушек установлена в
/usr/include/gnu/
Похоже, что Cupy-компилятор пытается найтибиблиотека в gnu/stubs-32.h
вместо /usr/include/gnu/
. Я уже пытался добавить это в systemmpath без какого-либо успеха.
Вот полный ответ:
Traceback (most recent call last):
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/cupy/cuda/compiler.py", line 242, in compile
nvrtc.compileProgram(self.ptr, options)
File "cupy/cuda/nvrtc.pyx", line 98, in cupy.cuda.nvrtc.compileProgram
File "cupy/cuda/nvrtc.pyx", line 108, in cupy.cuda.nvrtc.compileProgram
File "cupy/cuda/nvrtc.pyx", line 53, in cupy.cuda.nvrtc.check_status
cupy.cuda.nvrtc.NVRTCError: NVRTC_ERROR_COMPILATION (6)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/gpfs/home/maxlavaud/data_code/tutorials/SingleFrame.py", line 268, in <module>
guess = fitter.model.hologram().reshape(shape)
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/pylorenzmie/theory/LMHologram.py", line 63, in hologram
field = self.field()
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/pylorenzmie/theory/CudaGeneralizedLorenzMie.py", line 163, in field
*self.result))
File "cupy/core/raw.pyx", line 51, in cupy.core.raw.RawKernel.__call__
File "cupy/util.pyx", line 55, in cupy.util.memoize.decorator.ret
File "cupy/core/raw.pyx", line 57, in cupy.core.raw._get_raw_kernel
File "cupy/core/carray.pxi", line 125, in cupy.core.core.compile_with_cache
File "cupy/core/carray.pxi", line 166, in cupy.core.core.compile_with_cache
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/cupy/cuda/compiler.py", line 165, in compile_with_cache
ptx = compile_using_nvrtc(source, options, arch, name + '.cu')
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/cupy/cuda/compiler.py", line 81, in compile_using_nvrtc
ptx = prog.compile(options)
File "/gpfs/home/maxlavaud/miniconda3/envs/pylorenzmie/lib/python3.7/site-packages/cupy/cuda/compiler.py", line 246, in compile
raise CompileException(log, self.src, self.name, options)
cupy.cuda.compiler.CompileException: /usr/include/gnu/stubs.h(7): catastrophic error: cannot open source file "gnu/stubs-32.h"
1 catastrophic error detected in the compilation of "/tmp/SLURM_JOB_1689734/tmpw9uygc_5/017a7125fa6610838b49429ceb5a2959_2.cubin.cu".
Compilation terminated.