При запуске tenorflow в Ubuntu 16.04 libcuda.so.1 не найден. Этот файл является частью инструментов CUDA, которые я должен был установить; может просто нет нужного места? Я попытался найти файлы с помощью этой команды:
find / -type f -name "libcuda.so.1
И я получаю список файлов (сокращенный список):
ind: ‘/etc/cups/ssl’: Permission denied
find: ‘/etc/polkit-1/localauthority’: Permission denied
find: ‘/etc/ssl/private’: Permission denied
find: ‘/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-colord.service-QhckWW’: Permission denied
find: ‘/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-systemd-timesyncd.service-A46ooI’: Permission denied
find: ‘/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-rtkit-daemon.service-pZ6U3J’: Permission denied
find: ‘/lost+found’: Permission denied
find: ‘/var/tmp/systemd-private-7216baf4e9e24f4b99aa9cd9d37e9779-rtkit-daemon.service-vEpGYO’: Permission denied
find: ‘/var/tmp/systemd-private-c9508c53c88848febd8d6b9c7758d44d-colord.service-6sVMbw’: Permission denied
find: ‘/var/tmp/systemd-private-7216baf4e9e24f4b99aa9cd9d37e9779-systemd-timesyncd.service-DifcXc’: Permission denied
find: ‘/var/tmp/systemd-private-7216baf4e9e24f4b99aa9cd9d37e9779-colord.service-j5hYyg’: Permission denied
find: ‘/var/tmp/systemd-private-81dcc732570e47799cb04c3cb0c5a2c6-systemd-timesyncd.service-dSg1Cz’: Permission denied
find: ‘/var/tmp/systemd-private-f72e80f0374645bda6c2d99c5628e374-colord.service-FbxlSK’: Permission denied
find: ‘/var/tmp/systemd-private-5065912711c44bfd880f3aca2d0008e7-colord.service-rq0MKq’: Permission denied
find: ‘/var/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-rtkit-daemon.service-W2mqTy’: Permission denied
find: ‘/var/tmp/systemd-private-5065912711c44bfd880f3aca2d0008e7-rtkit-daemon.service-Nmhoc5’: Permission denied
find: ‘/var/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-colord.service-yD6AKb’: Permission denied
find: ‘/var/tmp/systemd-private-310aa08f8dac48c087fb3d04eb13211d-rtkit-daemon.service-2aRSdk’: Permission denied
find: ‘/var/tmp/systemd-private-cc0e6bd6ee4c4e5a8e66d39c662b4262-systemd-timesyncd.service-cR7tKn’: Permission denied
find: ‘/var/tmp/systemd-private-81dcc732570e47799cb04c3cb0c5a2c6-colord.service-RpnOff’: Permission denied
find: ‘/var/tmp/systemd-private-93e35b4b8e084692829998454c625032-rtkit-daemon.service-FPP0C0’: Permission denied
find: ‘/var/tmp/systemd-private-f72e80f0374645bda6c2d99c5628e374-rtkit-daemon.service-KSb7II’: Permission denied
find: ‘/var/tmp/systemd-private-93e35b4b8e084692829998454c625032-colord.service-umcrrr’: Permission denied
find: ‘/var/tmp/systemd-private-bfc953f066c54c8f8989b0585e58681d-systemd-timesyncd.service-zCbfRG’: Permission denied
find: ‘/var/tmp/systemd-private-cc0e6bd6ee4c4e5a8e66d39c662b4262-rtkit-daemon.service-YUHCBb’: Permission denied
find: ‘/var/tmp/systemd-private-f72e80f0374645bda6c2d99c5628e374-systemd-timesyncd.service-3gwsBe’: Permission denied
find: ‘/var/tmp/systemd-private-c9508c53c88848febd8d6b9c7758d44d-systemd-timesyncd.service-9KAj0J’: Permission denied
find: ‘/var/tmp/systemd-private-81dcc732570e47799cb04c3cb0c5a2c6-rtkit-daemon.service-Lua60R’: Permission denied
find: ‘/var/tmp/systemd-private-cc0e6bd6ee4c4e5a8e66d39c662b4262-colord.service-9wRZuD’: Permission denied
find: ‘/var/tmp/systemd-private-310aa08f8dac48c087fb3d04eb13211d-systemd-timesyncd.service-1IVY9S’: Permission denied
find: ‘/var/tmp/systemd-private-310aa08f8dac48c087fb3d04eb13211d-colord.service-BcEhRd’: Permission denied
I'm не совсем уверен, что значат большинство этих файлов. Являются ли эти файлы частью "libcuda"? Или это означает, что libcuda не установлена.
Спасибо.
После прослушивания того, что @ravery предложило:
я попробовал это:
ls /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7 -la
, который дал мне вывод этого:
-rw-r--r-- 1 root root 26 Jan 26 2017 /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7
И если я запускаю nvidia-smi, я получаю следующее:
------------------------------------------------------+
| NVIDIA-SMI 340.104 Driver Version: 340.104 |
|-------------------------------+----------------------+----------------------+
| 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 260 Off | 0000:01:00.0 N/A | N/A |
| 40% 46C P12 N/A / N/A | 226MiB / 895MiB | N/A Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Compute processes: GPU Memory |
| GPU PID Process name Usage |
|=============================================================================|
| 0 Not Supported
Итак, я должен связать свой libdua.os.7 с драйвером моей видеокарты?
Какой лучший способ найти этот драйвер. Спасибо.
Я также пробовал это:
ln -s /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7 /usr/local/cuda/lib/libcuda.so.1
вывод:
failed to create symbolic link '/usr/local/cuda/lib/libcuda.so.1': No such file or directory
РЕДАКТИРОВАТЬ: после игры в течение нескольких дней. Я все еще застрял.
Дополнительная информация:
Если я просматриваю каталог своего компьютера, я заметил, что в этом месте находится CUDA-8.0:
/usr/local/
Я также вижу папку CUDA со стрелкой на нем (которая, как я полагаю, обозначает сокращение) здесь, в
/usr/local
Второе обновление:
Выполнение этой команды:
export PATH=$PATH:/usr/local/cuda-8.0/bin
Теперь nvcc - возвращается версия:
vcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61
Однако
locate libcuda.so.1
по-прежнему возвращает пустой экран.
У меня была такая же проблема на NVIDIA GPU Cloud Image
на Standard_NV6
в Azure, работающем внутри Docker. Для меня проблема была в том, что я бегал
docker run -it tensorflow/tensorflow:latest-gpu-py3 bash
, и я должен был запустить его с флагом --runtime=nvidia
или nvidia-docker
вместо docker
:
nvidia-docker run -it tensorflow/tensorflow:latest-gpu-py3 bash
docker run --runtime=nvidia -it tensorflow/tensorflow:latest-gpu-py3 bash
Могут быть разные проблемы. Не только с CUDA, но и с Nvidia-драйверами.
Мой совет: установите tenorflow-gpu с conda.
Если вы установили CUDA9.0, я не думаю, что вы многое можете сделать. Пожалуйста, проверьте сайт tenorflow на наличие поддерживаемых версий CUDA.
это не файлы, это каталоги, которые невозможно открыть из-за разрешений. Твоего файла там не будет.
libcuda.so.1 на самом деле является ссылкой, а не файлом. Он ссылается на ваш файл версии: например, libcuda.so.1 ссылается на libcuda.so.361.42.
Следующие команды напечатают путь, по которому должна быть расположена ваша ссылка, и найдут ваш файл версии.
echo $LD_LIBRARY_PATH #path
sudo find /usr/ -name 'libcuda.so.*' #version
Если вы найдете libcuda.so.1, скопируйте его на свой путь. Если нет, сделайте в своем пути ссылку, указывающую на файл версии.
Должна быть ссылка на /usr/local/lib/cuda/lib64/stubs/libcuda.so.1