Я пытаюсь использовать cuda для ускорения тензорного потока. Я использую shadoworflow, используя изображение докера.Невозможно получить cuda для работы в tensorflow
Во-первых, когда я запускаю графический процессор изображения, то есть несоответствие в переменной окружения LT_LIBRARY_PATH:
~# echo $LD_LIBRARY_PATH
/usr/local/nvidia/lib:/usr/local/nvidia/lib64:
[email protected]:~# ls /usr/local/
bin cuda cuda-7.0 etc games include lib man sbin share src
Там нет каталога есть NVIDIA. Когда я пытаюсь запустить convolutional.py демо, он не может инициализировать поддержку Cuda:
# python models/image/mnist/convolutional.py
Succesfully downloaded train-images-idx3-ubyte.gz 9912422 bytes.
Succesfully downloaded train-labels-idx1-ubyte.gz 28881 bytes.
Succesfully downloaded t10k-images-idx3-ubyte.gz 1648877 bytes.
Succesfully downloaded t10k-labels-idx1-ubyte.gz 4542 bytes.
Extracting data/train-images-idx3-ubyte.gz
Extracting data/train-labels-idx1-ubyte.gz
Extracting data/t10k-images-idx3-ubyte.gz
Extracting data/t10k-labels-idx1-ubyte.gz
I tensorflow/core/common_runtime/local_device.cc:25] Local device intra op parallelism threads: 8
modprobe: ERROR: ../libkmod/libkmod.c:556 kmod_search_moddep() could not open moddep file '/lib/modules/4.2.0-23-generic/modules.dep.bin'
E tensorflow/stream_executor/cuda/cuda_driver.cc:466] failed call to cuInit: CUDA_ERROR_UNKNOWN
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:98] retrieving CUDA diagnostic information for host: d578acbbc2cd
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:106] hostname: d578acbbc2cd
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:131] libcuda reported version is: Not found: was unable to find libcuda.so DSO loaded into this program
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:242] driver version file contents: """NVRM version: NVIDIA UNIX x86_64 Kernel Module 352.68 Tue Dec 1 17:24:11 PST 2015
GCC version: gcc version 5.2.1 20151010 (Ubuntu 5.2.1-22ubuntu2)
"""
I tensorflow/stream_executor/cuda/cuda_diagnostics.cc:135] kernel reported version is: 352.68
I tensorflow/core/common_runtime/gpu/gpu_init.cc:112] DMA:
I tensorflow/core/common_runtime/local_session.cc:45] Local session inter op parallelism threads: 8
Затем он продолжает тренироваться, используя только центральный процессор.
# find /usr -name libcuda.so
/usr/lib/x86_64-linux-gnu/libcuda.so
Таким образом, в изображении докера есть только реализация gnu cpu cuda. Нет материала NVIDIA. В сеансе хост убунту 15.10, я libcuda.so установил:
$ find /usr -name libcuda.so
/usr/lib/x86_64-linux-gnu/libcuda.so
/usr/lib/i386-linux-gnu/libcuda.so
/usr/local/cuda-7.5/targets/x86_64-linux/lib
/stubs/libcuda.so
Так что это, кажется, окурки ... не уверен, почему.
Есть ли какой-то трюк, чтобы заставить это работать?
Это похоже на поврежденную установку ядра Linux для меня и не имеет ничего общего с CUDA. Также обратите внимание, что Ubuntu 15.10 в настоящее время не поддерживается CUDA, поэтому вы, вероятно, не собираетесь это работать, даже после решения вашего исправленного обновления ядра. – talonmies