Поддержка Pytorch Cuda недоступна при использовании Jupyter notebook в Arch

#jupyter-notebook #pytorch #jupyter

Вопрос:

В Arch Linux я установил Jupyterhub и Pytorch с поддержкой cuda. Проблема в том, что я могу использовать pytorch с поддержкой CUDA в консоли с python, а также с Ipython, но не в Jupyter notebook.

torch.cuda.is_available() возвращает false в среде Jupyter notebook и возвращает все другие команды No CUDA GPUs are available .

Я использовал пакет AUR jupyterhub 1.4.0-1 и python-pytorch-cuda 1.10.0-3. Как уже упоминалось, оба установлены без проблем и хорошо работают сами по себе. nvidia-smi показывает мне Driver Version: 495.44 и CUDA Version: 11.5 . Независимо от python другие программы, использующие поддержку CUDA, запускаются без каких-либо проблем. Поэтому я не думаю, что проблема связана с версией CUDA или графического драйвера.

Я проверил via sys.path и printenv путь поиска модулей и переменных среды соответственно. Оба выдали мне одинаковый результат в консоли и в записной книжке Jupyter. Так что, похоже, это тоже не вызывает проблемы.

У кого-нибудь есть идея, что вызывает проблему или что нужно рассмотреть поближе.

Ответ №1:

Хорошо, я нашел решение. Поскольку я запускаю Jupyterhub как службу systemd, я просматриваю файл службы. Там PrivateDevice=True была установлена опция. Это отключает доступ к физическому устройству выполняемым процессом. Хороший обзор параметров безопасности и повышения надежности для сервисных модулей systemd можно найти здесь https://gist.github.com/ageis/f5595e59b1cddb1513d1b425a323db04