tensorflow jupyter notebook在conda环境中可用时看不到GPU

0md85ypi  于 2023-05-18  发布在  其他
关注(0)|答案(1)|浏览(222)

我尝试在GPU上使用tensorflow与jupyter notebook。我使用VScode建立SSH连接到远程服务器,并构建了一个anaconda环境(称为“myspace”),其中成功安装了tensorflow(版本2.6.0):

(myspace) user@server:~$ python
Python 3.6.13 |Anaconda, Inc.| (default, Jun  4 2021, 14:25:59) 
[GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> print("Num GPUs:", len(tf.config.experimental.list_physical_devices('GPU')))
Num GPUs: 1

然而,当我打开jupyter notebook并选择与其内核相同的conda环境时,GPU无法看到:

Num GPUs: 0

我假设CUDA工具包和CUDNN库已成功安装,并将 tf.sysconfig.get_build_info() 的输出附加在此处:

OrderedDict([('cpu_compiler', '/usr/bin/gcc-5'),
             ('cuda_compute_capabilities',
              ['sm_35', 'sm_50', 'sm_60', 'sm_70', 'sm_75', 'compute_80']),
             ('cuda_version', '11.2'),
             ('cudnn_version', '8'),
             ('is_cuda_build', True),
             ('is_rocm_build', False),
             ('is_tensorrt_build', True)])

我读过很多相关的文章,但没有一个有效。我试图获取os.environ[“LD_LIBRARY_PATH”],但得到了一个keyerror。我想这可能是系统路径的问题,但我已经在~/.bashrc中设置了路径:

export PATH=/home/user/cuda-11.2/bin:${PATH}
export LD_LIBRARY_PATH=/home/user/cuda-11.2/lib64:${LD_LIBRARY_PATH}
gijlo24d

gijlo24d1#

我能解决这个问题的最好方法是像jupyter image一样,改用tensorflow的图像。从这里你可以从命令行更新。
docker run -d -p 8888:8888 --name jupyter --mount type=bind,source="$(pwd)",target=/tf --gpus all -e CHOWN_EXTRA="/home/jovyan/work" --user root -e GRANT_SUDO=yes -e NB_GID=100 -e NB_USER:jovyan tensorflow/tensorflow:latest-gpu-jupyter

相关问题