web-dev-qa-db-fra.com

La compilation du noyau CUDA a échoué

J'ai geforce 1070, ubuntu-studio 16.10 et installé CUDA 8 (à partir d'ici: https://developer.nvidia.com/cuda-toolkit ). J'installe également g ++ 5 et crée un lien symbolique

ln -s/usr/bin/gcc-5/usr/local/cuda/bin/gcc

mais quand j'essaie de rendre le modèle dans Blender, j'ai reçu une pile de messages après "Compiler le noyau CUDA". Tous les journaux (exécutés depuis la console)

crystal@ustudio:~$ blender
connect failed: No such file or directory
Read new prefs: /home/crystal/.config/blender/2.77/config/userpref.blend
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock
JackShmReadWritePtr::~JackShmReadWritePtr - Init not done for 4294967295, skipping unlock
AL lib: (WW) ALCjackBackendFactory_init: jack_client_open() failed, 0x11
AL lib: (WW) alc_initconfig: Failed to initialize backend "jack"
read blend: /home/crystal/Downloads/BMW27.blend
skipping driver '-90*brake', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
CUDA version 8.0 detected, build may succeed but only CUDA 7.5 is officially supported.
Compiling CUDA kernel ...
"/usr/local/cuda/bin/nvcc" -Arch=sm_61 -m64 --cubin "/usr/share/blender/scripts/addons/cycles/kernel/kernels/cuda/kernel.cu" -o "/home/crystal/.config/blender/2.77/cache/cycles_kernel_sm61_19BAB894867FFAFF2ADC00F401D5E4EB.cubin" --ptxas-options="-v" --use_fast_math -I"/usr/share/blender/scripts/addons/cycles/kernel" -DNVCC -D__KERNEL_CUDA_VERSION__=80
/usr/share/blender/scripts/addons/cycles/kernel/kernels/cuda/kernel.cu:94:2: error: #error "Unknown or unsupported CUDA architecture, can't determine launch bounds"
 #error "Unknown or unsupported CUDA architecture, can't determine launch bounds"
  ^
/usr/share/blender/scripts/addons/cycles/kernel/kernels/cuda/kernel.cu:112:87: error: division by zero in #if
 #if CUDA_MULTIPRESSOR_MAX_REGISTERS/(CUDA_THREADS_BLOCK_WIDTH*CUDA_THREADS_BLOCK_WIDTH*CUDA_KERNEL_MAX_REGISTERS) > CUDA_MULTIPROCESSOR_MAX_BLOCKS
                                                                                       ^
CUDA kernel compilation failed, see console for details.

Refer to the Cycles GPU rendering documentation for possible solutions:
http://www.blender.org/manual/render/cycles/gpu_rendering.html

skipping driver '100*power', automatic scripts are disabled
skipping driver '90*brake', automatic scripts are disabled
skipping driver '-100*power', automatic scripts are disabled
skipping driver '-90*brake', automatic scripts are disabled
Error: CUDA kernel compilation failed, see console for details.

mélangeur --version
Blender 2.77 (sub 0)

Comment le réparer? Merci d'avance.

3
Crystal

Cela a fonctionné pour moi sur Blender 2.76b (Ubuntu 16.04)

  1. Ouvrez kernel.cu

Sudo gedit /usr/share/blender/scripts/addons/cycles/kernel/kernels/cuda/kernel.cu

  1. Trouvez la ligne qui ressemble à ceci:

/* 5.0 and 5.2 */

#Elif __CUDA_Arch__ == 500 || __CUDA_Arch__ == 520

Cela peut être légèrement différent, mais devrait commencer par #Elif __CUDA_Arch___ ==

  1. Changez cette ligne en: #Elif __CUDA_Arch__ >= 500

Cela permettra à Blender de compiler les nouvelles architectures CUDA. Cela ne fonctionnera peut-être pas comme prévu et vous recevrez probablement des avertissements lors de la première exécution (lors de la compilation), mais vous n'obtiendrez plus l'erreur de compilation. En outre, cela fonctionne pour moi sur Ubuntu 16.04 avec Blender 2.76b et CUDA 8.0

0
43Tesseracts

J'utilise Blender 2.78 avec Ubuntu 17.04 et CUDA 8.0:

  • l'installation de g ++ 5 n'a pas fonctionné
  • changer kernel.cu n'a pas fonctionné (Blender 2.78 a déjà le changement)

Mais cela a fonctionné:

  1. Exécutez Blender en mode Sudo avec "Sudo blender". Le rendu avec GPU a chargé les noyaux et le rendu a fonctionné
  2. Ensuite, exécutez Blender normalement (pas de Sudo) et le rendu GPU fonctionne maintenant.
0
user2489151

Installer G ++ 5 résout le problème. Veuillez utiliser la commande suivante:

Sudo apt install g++-5
0
Pavak Paul