aib*_*him 6 nvidia cuda tensorflow 20.04
我有一台旧的 Lenovo ThinkPad W530 笔记本电脑,配备 NVIDIA Corporation GK107GLM [Quadro K1000M] / Quadro K1000M/PCIe/SSE2 GPU,具有计算兼容性 3.0并支持 CUDA。我想在 Ubuntu 上为我的 Udacity 纳米学位构建一些 TensorFlow 示例和项目。
我刚刚安装了 Ubuntu 20.04 并升级了我的 NVIDIA 驱动程序,因此当我执行时,nvidia-smi它会给出以下结果:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.05 Driver Version: 450.51.05 CUDA Version: 11.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro K1000M On | 00000000:01:00.0 Off | N/A |
| N/A 59C P0 N/A / N/A | 496MiB / 1999MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 5470 G /usr/lib/xorg/Xorg 39MiB |
| 0 N/A N/A 7504 G /usr/lib/xorg/Xorg 146MiB |
| 0 N/A N/A 7772 G /usr/bin/gnome-shell 147MiB |
| 0 N/A N/A 34770 G /proc/self/exe 158MiB |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
当我尝试使用 GPU 支持构建 TensorFlow 代码时,我发现我需要安装 CUDA 并按照这篇文章了解如何在 Ubuntu 20.04 上安装最新版本的 CUDA 11.0。我经历了整个过程,然后发现了两个问题:
我按照CUDA 文档删除了 CUDA 11.0 。我开始在 Ubuntu 20.04 上安装 CUDA 10.1,现在我很困惑。
CUDA 10.1安装文档过程是关于从.debUbuntu 18.04 的文件安装 CUDA 10.1,并且 Ubuntu 20.04 上不支持 CUDA 10.1。
因此,我开始按照本文的相同步骤进行操作,但对于 CUDA 10.1 而不是 CUDA 11。我能够使用以下命令安装 cuda 10.1:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.51.05 Driver Version: 450.51.05 CUDA Version: 11.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro K1000M On | 00000000:01:00.0 Off | N/A |
| N/A 59C P0 N/A / N/A | 496MiB / 1999MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 5470 G /usr/lib/xorg/Xorg 39MiB |
| 0 N/A N/A 7504 G /usr/lib/xorg/Xorg 146MiB |
| 0 N/A N/A 7772 G /usr/bin/gnome-shell 147MiB |
| 0 N/A N/A 34770 G /proc/self/exe 158MiB |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
这样我就不会覆盖已安装的 NVIDIA 驱动程序 450(经过多次试验后我才这样做)。
当我尝试执行命令时
sudo apt-get -f install cuda-toolkit-10-1 cuda-libraries-10-1
Run Code Online (Sandbox Code Playgroud)
由于依赖性问题,它给了我错误。为了克服这些错误,我寻找了一个解决方案,然后我发现了这篇文章,其中建议:
为了更详细,不要尝试对 Ubuntu 20.04 使用 18.10 或 18.04 CUDA 10.1。我是通过艰难的方式才了解到这一点的,哈哈!
因此,您可以通过运行以下命令在 Ubuntu 20.04 中安装 CUDA 10.1:
Run Code Online (Sandbox Code Playgroud)$ sudo apt install nvidia-cuda-toolkit
我卸载了使用CUDA 文档安装的 CUDA Toolkit 10.1,并遵循了此建议,命令成功通过。但现在我不确定是不是就是这样,还是我错过了什么?!
当我试图了解两种方式之间的区别时,我发现nvidia-cuda-toolkit使用命令的来源
apt-cache policy nvidia-cuda-toolkit
Run Code Online (Sandbox Code Playgroud)
它给了我以下结果,表明源是 Ubuntu 存储库
nvidia-cuda-toolkit:
Installed: 10.1.243-3
Candidate: 10.1.243-3
Version table:
*** 10.1.243-3 500
500 http://eg.archive.ubuntu.com/ubuntu focal/multiverse amd64 Packages
100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud)
nvidia-cuda-toolkit之间有什么区别nvidia-cuda-toolkitcuda-toolkit-10-1?nvidia-cuda-toolkit所述,仅在我尝试使用 CUDA 工具包 10.1 时nvidia-cuda-toolkit还是可以按照文档中的步骤操作?cuda-install-samples-10.1.sh文件。如何安装示例?我一直在努力构建我的示例,但到目前为止我还没有做到这一点,所以我非常感谢您对此的支持。
对于仍在寻找解决方案的人,我没有答案,但我可以向您指出一些资源:
\n\n为了子孙后代,这些是步骤(感谢斯蒂芬·格雷戈里):
\n(a)\xc2\xa0打开终端窗口并键入以下三个命令以删除您可能已安装的任何 NVIDIA/CUDA 软件包:
\nsudo rm /etc/apt/sources.list.d/cuda*
\nsudo apt 删除 --autoremove nvidia-cuda-toolkit
\nsudo apt 删除 --autoremove nvidia-*
(b)\xc2\xa0清除任何剩余的 NVIDIA 配置文件以及它们可能已安装的相关依赖项。
\nsudo apt-get purge nvidia*
\nsudo apt-get autoremove
\nsudo apt-get autoclean
(c)\xc2\xa0删除\xc2\xa0/usr/local/中可能存在的任何现有 CUDA 文件夹
\n\n\n在我最初几次尝试安装 CUDA 时,这让我陷入了困境。此时\xc2\xa0usr/local/\xc2\xa0 中不应该有任何名为“cuda”或“cuda-anything”的文件夹!
\n
须藤 rm -rf /usr/local/cuda*
\n(a)\xc2\xa0设置您的 CUDA PPA。(如果您对 PPA 是什么感到好奇,请阅读此处的\xc2\xa0 \xc2\xa0。)
\n\n\n本质上,我们将 CUDA 添加到我们的 \xc2\xa0sources.list 中,这是每当我们使用 \xc2\xa0apt\xc2\xa0 包管理器使用如下命令在终端中下载内容时引用的文件“须藤apt更新”
\n
sudo apt update
\nsudo add-apt-repository ppa:graphics-driverssudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64/7fa2af80.pub sudo bash -c \'echo "deb http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda.list\'sudo bash -c \'echo "deb http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1804/x86_64 /" > /etc/apt/sources.list.d/cuda_learn.list\'
(b)\xc2\xa0安装CUDA 10.1包,包括CuDNN库
\nsudo apt update
\nsudo apt install cuda-10-1
\nsudo apt install libcudnn7
(a)\xc2\xa0安装后,我们需要将CUDA添加到我们的PATH中,以便shell知道在哪里可以找到CUDA。要编辑我们的路径,请使用 vim 打开“.profile”文件。
\nsudo vim ~/.profile
\n(b)\xc2\xa0最后,将这些行添加到文件末尾。
\n如果[-d“/usr/local/cuda-10.1/bin/”]; 然后
\nexport PATH=/usr/local/cuda-10.1/bin${PATH:+:${PATH}}
\nexport LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH} }
\nfi
(a)\xc2\xa0重新启动计算机(安装任何驱动程序后应该如此)
\n现在,让我们检查一下以确保一切都已设置完毕!
\n(a)\xc2\xa0检查NVIDIA驱动程序:
\n英伟达-SMI
\n(b)\xc2\xa0检查CUDA:
\nnvcc--版本
\n(c)\xc2\xa0检查 CuDNN
\n/sbin/ldconfig -N -v $(sed \'s/:/ /\' <<< $LD_LIBRARY_PATH) 2>/dev/null | grep libcudnn
\n| 归档时间: |
|
| 查看次数: |
4702 次 |
| 最近记录: |