CuPy не работает на Ubuntu 18.04 с CUDA 9.0 - PullRequest
2 голосов
/ 23 декабря 2019

Условия:

  • CuPy версия 7.0.0
  • ОС / платформа Ubuntu 18.04
  • CUDA версия 9.0
  • cuDNN / NCCL версия 7.6.5 (для cuda 9.0)
  • Графический процессор NVIDIA GTX580
  • Версия драйвера 390.116

Код 1:

import cupy as cp
x = cp.arange(6).reshape(2, 3).astype('f')

Сообщение об ошибке 1:

NVRTC compilation error: nvrtc: error: invalid value for --gpu-architecture (-arch)

-----
Name:
Options: -I/home/liu/.local/lib/python2.7/site-packages/cupy/core/include -I /usr/local/cuda-9.0/include -ftz=true -arch=compute_20
CUDA source:
1
-----
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/liu/.local/lib/python2.7/site-packages/cupy/creation/ranges.py", line 57, in arange
    _arange_ufunc(typ(start), typ(step), ret, dtype=dtype)
  File "cupy/core/_kernel.pyx", line 864, in cupy.core._kernel.ufunc.__call__
  File "cupy/core/_kernel.pyx", line 876, in cupy.core._kernel.ufunc._get_ufunc_kernel
  File "cupy/core/_kernel.pyx", line 638, in cupy.core._kernel._get_ufunc_kernel
  File "cupy/core/_kernel.pyx", line 60, in cupy.core._kernel._get_simple_elementwise_kernel
  File "cupy/core/carray.pxi", line 166, in cupy.core.core.compile_with_cache
  File "/home/liu/.local/lib/python2.7/site-packages/cupy/cuda/compiler.py", line 136, in compile_with_cache
    base = _preprocess('', options, arch)
  File "/home/liu/.local/lib/python2.7/site-packages/cupy/cuda/compiler.py", line 97, in _preprocess
    result = prog.compile(options)
  File "/home/liu/.local/lib/python2.7/site-packages/cupy/cuda/compiler.py", line 250, in compile
    raise CompileException(log, self.src, self.name, options)
cupy.cuda.compiler.CompileException: nvrtc: error: invalid value for --gpu-architecture (-arch)

Код 2:

import cupy as cp
cp.random.random_sample(10)

Сообщение об ошибке 2:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/liu/.local/lib/python3.6/site-packages/cupy/random/sample.py", line 161, in random_sample
    return rs.random_sample(size=size, dtype=dtype)
  File "/home/liu/.local/lib/python3.6/site-packages/cupy/random/generator.py", line 540, in random_sample
    out = self._random_sample_raw(size, dtype)
  File "/home/liu/.local/lib/python3.6/site-packages/cupy/random/generator.py", line 528, in _random_sample_raw
    func(self._generator, out.data.ptr, out.size)
  File "cupy/cuda/curand.pyx", line 158, in cupy.cuda.curand.generateUniformDouble
  File "cupy/cuda/curand.pyx", line 162, in cupy.cuda.curand.generateUniformDouble
  File "cupy/cuda/curand.pyx", line 86, in cupy.cuda.curand.check_status
cupy.cuda.curand.CURANDError: CURAND_STATUS_LAUNCH_FAILURE

1 Ответ

4 голосов
/ 23 декабря 2019

Вычислительная способность GeForce GTX 580 составляет 2.0, но она не поддерживается CuPy и также не поддерживается ни одной версией инструментария CUDA, более новой, чем CUDA 8.0.

https://docs -cupy.chainer. org / en / latest / install.html # требования

Вычислительная способность графического процессора должна быть не менее 3,0.

https://docs.nvidia.com/cuda/archive/9.0/cuda-toolkit-release-notes/index.html#unsupported-features

Поддержка архитектуры Fermi . Набор инструментов CUDA, включая компилятор CUDA (nvcc), инструменты разработчика и библиотеки CUDA, больше не поддерживает архитектуру Fermi (sm_2.x). Обратите внимание, что поддержка архитектуры Fermi удаляется из набора инструментов CUDA, но не из драйвера. Приложения, скомпилированные с помощью CUDA 8 или более ранней версии, будут продолжать работать на архитектуре Fermi с более новыми драйверами NVIDIA.

...