libcuda.so.1 не найден, несмотря на установку CUDA?

При запуске тензорного потока на 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

Я не совсем уверен, что означает большинство этих файлов. Являются ли эти файлы частью «libcuda»? Или это означает, что libcuda не установлен.

Спасибо.

После прослушивания того, что предложил @revery:

Я попробовал это:

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

output:

failed to create symbolic link '/usr/local/cuda/lib/libcuda.so.1': No such file or directory

EDIT: После нескольких минут работы. Я все еще застрял.

Дополнительная информация:

Если я просматриваю свой компьютерный каталог, я заметил, что в этом месте есть CUDA-8.0:

/usr/local/

Я также вижу папка CUDA со стрелкой на ней (которая, как я полагаю, представляет собой shorcut) здесь, в

/usr/local

Второе обновление:

Выполнение этой команды:

export PATH=$PATH:/usr/local/cuda-8.0/bin

Теперь nvcc -version возвращает:

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

по-прежнему возвращает пустой экран.

0
задан 27 January 2018 в 01:39

4 ответа

Возможны различные проблемы. Не только с CUDA, но и с драйверами Nvidia.

Мой совет: Установите tensorflow-gpu с conda.

Если вы установили CUDA9.0, я не думаю, что вы можете многое сделать. Пожалуйста, проверьте сайт tendorflow для поддерживаемых версий CUDA.

0
ответ дан 17 July 2018 в 22:41

это не файлы, это каталоги, которые невозможно открыть из-за разрешений. Ваш файл не будет там.

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, то скопируйте его в свой путь. Если не указать ссылку на свой путь, указывающую на файл версии.

0
ответ дан 17 July 2018 в 22:41

Возможны различные проблемы. Не только с CUDA, но и с драйверами Nvidia.

Мой совет: Установите tensorflow-gpu с conda.

Если вы установили CUDA9.0, я не думаю, что вы можете многое сделать. Пожалуйста, проверьте сайт tendorflow для поддерживаемых версий CUDA.

0
ответ дан 24 July 2018 в 13:17

это не файлы, это каталоги, которые невозможно открыть из-за разрешений. Ваш файл не будет там.

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, то скопируйте его в свой путь. Если не указать ссылку на свой путь, указывающую на файл версии.

0
ответ дан 24 July 2018 в 13:17
  • 1
    Спасибо. Первое эхо не имеет выхода. Итак, я предполагаю, что у меня ничего не хранится в моей ПУТЕ? Что касается второй команды, я получаю этот вывод: /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7 Итак, это мой файл с версией? Теперь мне просто нужно сделать ссылку на этот путь? Я не слишком хорошо знаком с ссылками makings, поэтому я просто связываю libcuda.so.1 с /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7? Если это так, я делаю ссылки в Ubuntu. Спасибо. – Sayaka 23 January 2018 в 00:02
  • 2
    попробуйте ln -s /usr/local/cuda-8.0/doc/man/man7/libcuda.so.7 /usr/local/cuda/lib/libcuda.so.1 – ravery 23 January 2018 в 02:53
  • 3
    Спасибо. Комманда, похоже, не находит /usr/local/cuda/lib/libcuda.so.1. Я обновил OP, с дополнительной информацией, поскольку это трудно показать с помощью комментариев. Все символические ссылки заканчиваются на .1? Возможно ли, что `.so.7` может быть символической ссылкой? – Sayaka 23 January 2018 в 03:16

Другие вопросы по тегам:

Похожие вопросы: