让人头大的深度学习环境
前言
当前已经有许多的深度学习框架,例如 tensorflow、pytorch、mxnet、paddle等。众所周知,深度学习离不开显卡,对于普通的研究者来说,离不开Nvidia的显卡。
光有了硬件还不行,显卡大爷岂是你随随便便就能驱使的,它还需要
- 显卡驱动(Driver)
- Cuda(Compute Unified Device Architecture)计算库
- CUDNN(CUDA Deep Neural Network library)深度学习库
如果你的机器上有多个显卡,你还要安装NCCL(NVIDIA Collective Communication Library)。
一听就让人头大,Pytorch是大家都知道的对初学者友好,在你安装gpu版本的pytorch时,会自动安装上述的cuda和cudnn,然而tensorflow并不会安装。
网络上的大部分教程,都是基于windows并且是在物理机上安装上述库。如今在python领域,最为火热的包管理工具是conda,大部分人都基于它创建虚拟环境来进行不同库的隔离。因此,安装到物理机上的库会让隔离变的困难,甚至会影响到正常的conda包的安装。
因此,当拿到一个干净的系统时,请不要直接在上面安装cuda和cudnn,只需要在电脑上安装一个普通的驱动即可。然后进可以直接安装docker, nvidia-docker,完全不在物理机上留下任何痕迹 。退可以使用conda,创建虚拟环境,在不同的环境中安装不同的库。(比如我,tf, torch, paddle都装了)
如何在conda中安装cuda和cudnn
请直接使用conda install
例如我想要安装cuda11.8