Cuda no puede encontrar el método cudaGetDevice

Cuda no puede encontrar el método cudaGetDevice

el error exacto:

CUDA error at ../../common/inc/helper_cuda.h:1263 code=30(cudaErrorUnknown) "cudaGetDevice(&dev)"

Estoy instalando cuda para gpu tensorflow. Tengo cuda 8 instalado (siguiendoestosinstrucciones para ubuntu 16.04), y tengo un error al probar las muestras grabables (sección 6.2.1 en ese enlace). Sigo recibiendo ese error en todas las muestras, y nada de lo que busco en Google muestra ese error (solo errores cudaGetDeviceCount()). ¿Qué podría ser esto? Originalmente instalé el kit de herramientas cuda 9.1 por accidente (tensorflow necesita 8.0), pero lo desinstalé por completo y eliminé cualquier variable de ruta o directorio asociado con él.

Ese error aparece cuando se ejecuta el ejecutable que se supone que el archivo MAKE debe crear en los directorios de muestra, y el archivo MAKE en sí produce esta advertencia/error:

nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).

Creo que el archivo make no crea nada en absoluto, porque el archivo make también ejecuta esto al final:

cp simpleZeroCopy ../../bin/x86_64/linux/release

que es copiar el ejecutable de algún directorio de ejecutables almacenados en caché de todos los ejemplos. El archivo MAKE y el código fuente de esa muestra son grandes y no sé si serán útiles con esto, pero los publicaré si es necesario.

Este código de muestra que estoy intentando ejecutar proviene directamente de cuda, por lo que nada de esto fue programado por mí, lo que me lleva a creer que me pueden faltar algún tipo de controladores NVIDIA o simplemente instalé cuda incorrectamente o no lo configuré. las variables de ruta apropiadas (aunque estoy bastante seguro de que lo hice todo bien).

Estoy ejecutando ubuntu 16.04, x86_64 y la tarjeta gráfica es una gtx 780 ti.

Quiero aclarar que el error es antes de instalar tensorflow-gpu.Sus instruccionesPrimero deben instalar cuda por separado y luego tensorflow. Recibo este error al probar cuda, antes de instalar tensorflow

Editar: las variables de ruta son:

$RUTA:

/usr/local/cuda-8.0/bin:/home/maurcio/anaconda3/bin:/home/maurcio/bin:/home/maurcio/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:.

$LD_LIBRARY_PATH:

/usr/local/cuda-8.0/lib64

Respuesta1

Su enlace para las instrucciones de instalación es malo. Echa un vistazo ahttps://docs.google.com/viewer?url=https%3A%2F%2Fdeveloper.download.nvidia.com%2Fcompute%2Fcuda%2F9.1%2FProd%2Fdocs%2Fsidebar%2FCUDA_Installation_Guide_Linux.pdf&pdf=true

Básicamente, use los controladores que ofrece Ubuntu (si es posible, no estoy seguro acerca de un 980 ti), use la instalación Intel deb cuda e instale el paquete Ubuntu cuda, que obtiene el kit de herramientas. Copie las muestras en una ubicación que se pueda escribir, modifique las rutas y CUDA debería funcionar.

información relacionada