J'ai consulté de nombreuses pages et je ne pouvais pas suivre ce qu'elles disaient parce qu'elles n'étaient pas claires et/ou que mes connaissances ne suffisaient pas.
J'essaye de courir:
luarocks install https://raw.githubusercontent.com/qassemoquab/stnbhwd/master/stnbhwd-scm-1.rockspec
Afin que je puisse exécuter DenseCap sur certaines images en utilisant l’accélération GPU. Quand je le lance, j'obtiens cette erreur:
$ luarocks install https://raw.githubusercontent.com/qassemoquab/stnbhwd/master/stnbhwd-scm-1.rockspec
Using https://raw.githubusercontent.com/qassemoquab/stnbhwd/master/stnbhwd-scm-1.rockspec... switching to 'build' mode
Cloning into 'stnbhwd'...
remote: Counting objects: 24, done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 24 (delta 0), reused 14 (delta 0), pack-reused 0
Receiving objects: 100% (24/24), 19.42 KiB | 0 bytes/s, done.
Checking connectivity... done.
cmake -E make_directory build && cd build && cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH="/home/tex/torch/install/bin/.." -DCMAKE_INSTALL_PREFIX="/home/tex/torch/install/lib/luarocks/rocks/stnbhwd/scm-1" && make
-- The C compiler identification is GNU 5.4.0
-- The CXX compiler identification is GNU 5.4.0
-- 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/tex/torch/install
-- Try OpenMP C flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Try OpenMP CXX flag = [-fopenmp]
-- Performing Test OpenMP_FLAG_DETECTED
-- Performing Test OpenMP_FLAG_DETECTED - Success
-- Found OpenMP: -fopenmp
-- Compiling with OpenMP support
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Looking for pthread_create
-- Looking for pthread_create - not found
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found CUDA: /usr/local/cuda (found suitable version "9.0", minimum required is "5.5")
-- Configuring done
-- Generating done
-- Build files have been written to: /tmp/luarocks_stnbhwd-scm-1-4197/stnbhwd/build
Scanning dependencies of target stn
[ 25%] Building C object CMakeFiles/stn.dir/init.c.o
[ 50%] Linking C shared module libstn.so
[ 50%] Built target stn
[ 75%] Building NVCC (Device) object CMakeFiles/custn.dir/custn_generated_init.cu.o
nvcc fatal : Value 'sm_20' is not defined for option 'gpu-architecture'
CMake Error at custn_generated_init.cu.o.cmake:207 (message):
Error generating
/tmp/luarocks_stnbhwd-scm-1-4197/stnbhwd/build/CMakeFiles/custn.dir//./custn_generated_init.cu.o
CMakeFiles/custn.dir/build.make:63: recipe for target 'CMakeFiles/custn.dir/custn_generated_init.cu.o' failed
make[2]: *** [CMakeFiles/custn.dir/custn_generated_init.cu.o] Error 1
CMakeFiles/Makefile2:104: recipe for target 'CMakeFiles/custn.dir/all' failed
make[1]: *** [CMakeFiles/custn.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
Error: Build error: Failed building.
J'ai été capable de luarocks install cutorch
, luarocks install cunn
et luarocks install cudnn
très bien.
J'utilise Ubuntu 16.04 sur une GTX 1080ti.
$ nvidia-smi
Tue Dec 5 16:25:42 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.90 Driver Version: 384.90 |
|-------------------------------+----------------------+----------------------+
| 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 108... Off | 00000000:29:00.0 On | N/A |
| 0% 47C P8 16W / 250W | 716MiB / 11169MiB | 1% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 1128 G /usr/lib/xorg/Xorg 479MiB |
| 0 1782 G compiz 234MiB |
+-----------------------------------------------------------------------------+
Pour une raison quelconque, lorsque je lance $ nvcc -V
, je reçois:
The program 'nvcc' is currently not installed. You can install it by typing:
Sudo apt install nvidia-cuda-toolkit
..et c'est un autre gros problème auquel je suis confronté. Lorsque j'installe nvcc, il installe le toolkit pour Cuda 7.5, mais je dispose de Cuda 9.0. Je l'ai installé en utilisant le fichier .deb qui vient de le site web de Cuda .
$ Sudo apt-get install cuda
Reading package lists... Done
Building dependency tree
Reading state information... Done
cuda is already the newest version (9.0.176-1).
The following packages were automatically installed and are no longer required:
libcublas7.5 libcudart7.5 libcufft7.5 libcufftw7.5 libcuinj64-7.5
libcurand7.5 libcusolver7.5 libcusparse7.5 libnppc7.5 libnppi7.5 libnpps7.5
libnvblas7.5 libnvrtc7.5 libnvtoolsext1 libnvvm3 libthrust-dev libvdpau-dev
nvidia-cuda-dev nvidia-cuda-doc nvidia-cuda-gdb nvidia-opencl-dev
nvidia-profiler nvidia-visual-profiler opencl-headers
Use 'Sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 222 not upgraded.
Honnêtement, je pense que je dois installer nvcc, mais comme je l’ai dit, il s’installe pour la mauvaise version, et je ne peux pas, à vie, trouver comment l’installer pour la bonne version, et je ne comprends vraiment pas pourquoi je suis. obtenir cette erreur maintenant même si j'ai déjà installé cutorch, cudnn et cunn très bien. Toute aide est appréciée ...
Merci
Essayez de modifier l’architecture du code (telle que sm_20 ) en une version supérieure de CMakeLists.txt de stnbhwd que vous essayez d’installer.
De:
IF (CUDA_FOUND)
LIST(APPEND CUDA_NVCC_FLAGS "-Arch=sm_20")
à:
IF (CUDA_FOUND)
LIST(APPEND CUDA_NVCC_FLAGS "-Arch=sm_30")
Pour installer nvcc, essayez ceci:
Sudo apt-get install nvidia-cuda-toolkit
Comme vous l'avez mentionné:
mais j'ai Cuda 9.0
Cuda 9.0 ne supporte pas l'architecture SM_20 ( plus d'infos ).
Vous avez un nouveau gpu:
J'utilise Ubuntu 16.04 sur une GTX 1080ti.
qui est basé sur l'architecture Pascal (SM_60). Donc, vous n'avez probablement pas besoin du support de l'architecture SM_20.