nvcc fatal: неподдерживаемая архитектура графического процессора «compute_61» при установленном CUDA 8.0

У меня возникла проблема при установке cutorch с luarocks. Ошибка сообщает, что архитектура графического процессора «compute_61» не поддерживается. После некоторого поиска я понял, что проблема может быть вызвана старой версией CUDA. Но это не так, так как у меня CUDA 8.0

sudo ~/torch/install/bin/luarocks install cutorch
Installing https://raw.githubusercontent.com/torch/rocks/master/cutorch-scm-1.rockspec...
Using https://raw.githubusercontent.com/torch/rocks/master/cutorch-scm-1.rockspec... switching to 'build' mode
Cloning into 'cutorch'...
remote: Counting objects: 220, done.
remote: Compressing objects: 100% (174/174), done.
remote: Total 220 (delta 60), reused 93 (delta 44), pack-reused 0
Receiving objects: 100% (220/220), 211.56 KiB | 0 bytes/s, done.
Resolving deltas: 100% (60/60), done.
Checking connectivity... done.
cmake -E make_directory build && cd build && cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="/home/anya/torch/install/bin/.." -DCMAKE_INSTALL_PREFIX="/home/anya/torch/install/lib/luarocks/rocks/cutorch/scm-1" && make -j$(getconf _NPROCESSORS_ONLN) install

-- The C compiler identification is GNU 5.4.1
-- The CXX compiler identification is GNU 5.4.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found Torch7 in /home/anya/torch/install
-- Found CUDA: /usr (found suitable version "7.5", minimum required is "6.5") 
-- TH_LIBRARIES: TH
-- Found gcc >=5 and CUDA <= 7.5, adding workaround C++ flags
-- MAGMA not found. Compiling without MAGMA support
-- Autodetected CUDA architecture(s): 6.1
-- got cuda version 7.5
-- Found CUDA with FP16 support, compiling with torch.CudaHalfTensor
-- CUDA_NVCC_FLAGS: -gencode;arch=compute_61,code=sm_61;-DCUDA_HAS_FP16=1
-- THC_SO_VERSION: 0
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/luarocks_cutorch-scm-1-201/cutorch/build
[  2%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensor.cu.o
[  2%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCReduceApplyUtils.cu.o
[  3%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCHalf.cu.o
[  5%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCSleep.cu.o
[  5%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCBlas.cu.o
[  6%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorage.cu.o
[  7%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorageCopy.cu.o
[  9%] Building NVCC (Device) object lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensorCopy.cu.o
nvcc fatal   : Unsupported gpu architecture 'compute_61'
CMake Error at THC_generated_THCTensor.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCTensor.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:98: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensor.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensor.cu.o] Error 1
make[2]: *** Waiting for unfinished jobs....
nvcc fatal   : Unsupported gpu architecture 'compute_61'
CMake Error at THC_generated_THCReduceApplyUtils.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCReduceApplyUtils.cu.o


nvcc fatal   : Unsupported gpu architecture 'compute_61'
CMake Error at THC_generated_THCSleep.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCSleep.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:63: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCReduceApplyUtils.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCReduceApplyUtils.cu.o] Error 1
lib/THC/CMakeFiles/THC.dir/build.make:77: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCSleep.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCSleep.cu.o] Error 1
nvcc fatal   : Unsupported gpu architecture 'compute_61'
nvcc fatal   : Unsupported gpu architecture 'compute_61'
CMake Error at THC_generated_THCStorageCopy.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCStorageCopy.cu.o


CMake Error at THC_generated_THCBlas.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCBlas.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:91: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorageCopy.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorageCopy.cu.o] Error 1
nvcc fatal   : Unsupported gpu architecture 'compute_61'
lib/THC/CMakeFiles/THC.dir/build.make:70: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCBlas.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCBlas.cu.o] Error 1
CMake Error at THC_generated_THCHalf.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCHalf.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:546: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCHalf.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCHalf.cu.o] Error 1
nvcc fatal   : Unsupported gpu architecture 'compute_61'
nvcc fatal   : Unsupported gpu architecture 'compute_61'
CMake Error at THC_generated_THCStorage.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCStorage.cu.o


CMake Error at THC_generated_THCTensorCopy.cu.o.cmake:207 (message):
  Error generating
  /tmp/luarocks_cutorch-scm-1-201/cutorch/build/lib/THC/CMakeFiles/THC.dir//./THC_generated_THCTensorCopy.cu.o


lib/THC/CMakeFiles/THC.dir/build.make:84: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorage.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCStorage.cu.o] Error 1
lib/THC/CMakeFiles/THC.dir/build.make:105: recipe for target 'lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensorCopy.cu.o' failed
make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensorCopy.cu.o] Error 1
CMakeFiles/Makefile2:172: recipe for target 'lib/THC/CMakeFiles/THC.dir/all' failed
make[1]: *** [lib/THC/CMakeFiles/THC.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

Error: Build error: Failed building.

У меня версия CUDA 8.0 и видеокарта GTX1070.

nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

и драйвер нвидиа-367

nvidia-smi
Tue Jan 17 14:04:47 2017       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57                 Driver Version: 367.57                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 1070    Off  | 0000:01:00.0     Off |                  N/A |
| N/A   51C    P5    11W /  N/A |    209MiB /  8113MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0       997    G   /usr/lib/xorg/Xorg                             164MiB |
|    0      1855    G   compiz                                          42MiB |
+-----------------------------------------------------------------------------+

В чем может быть проблема?


person Anya Piunova    schedule 17.01.2017    source источник
comment
Вывод cmake намекает на установку Cuda 7.5 на вашем компьютере. Вы можете попробовать обновить его или отредактировать Makefile для использования Cuda 8.0 или даже отредактировать переменную среды, указывающую на cuda 7.5 (если она есть).   -  person Rakete1111    schedule 17.01.2017


Ответы (3)


В cmake проверяет в начале установки cutorch у вас есть:

-- Found CUDA: /usr (found suitable version "7.5", minimum required is "6.5")

Похоже, у вас установлены две версии CUDA, и установщик выбирает 7.5. Другой вариант — установщик не поддерживает 8.0.

person pSoLT    schedule 17.01.2017

Спасибо всем, кто ответил. Наконец, проблема была решена путем переустановки Torch И (что, я думаю, может быть причиной) обновления cudnn (с версии V4 до V5).

person Anya Piunova    schedule 17.01.2017
comment
Пожалуйста, перечислите задействованные версии. - person einpoklum; 20.04.2018

У меня было нечто подобное (compute 70). Я думаю, это потому, что я обновил свой дистрибутив Ubuntu (16.04 -> 18.04), а cuda 8.0 не поддерживается для Ubuntu 18.04. Я удалил cuda 8.0, установил cuda 10.1, и проблема, похоже, исчезла.

Предостережение: я пытался решить проблему несколькими способами, и это было последнее, что я пробовал, прежде чем оно сработало. Технически это мог быть один из промежуточных шагов, который решил ошибку unsupported gpu architecture, но я не могу вернуться и проверить сейчас.

person craq    schedule 21.08.2019