如何在 Ubuntu 16.04 上安装 CUDA?

如何在 Ubuntu 16.04 上安装 CUDA?

对于 TensorFlow,我想安装 CUDA。如何在 Ubuntu 16.04 上执行此操作?

答案1

为 Ubuntu 安装 CUDA

有一个Linux 安装指南不过基本上就只有这几个步骤:

  1. 下载 CUDA:我使用的是 15.04 版本和“runfile (local)”。也就是 1.1 GB。
  2. 检查 md5 值:md5sum cuda_7.5.18_linux.run。正确后才继续。
  3. 删除任何其他安装(sudo apt-get purge nvidia-cuda*- 如果您也想安装驱动程序,那么sudo apt-get purge nvidia-*。)
    • 如果您想安装显示驱动程序(*),请从 GUI 注销。转到终端会话 ( ctrl++ alt)F2
    • 停止 lightdm:sudo service lightdm stop
  4. 创建一个文件,/etc/modprobe.d/blacklist-nouveau.conf内容如下:
    blacklist nouveau
    options nouveau modeset=0
    
  5. 然后做:sudo update-initramfs -u
  6. sudo sh cuda_7.5.18_linux.run --override. 确保您所说的y是符号链接。
  7. 再次启动 lig​​htdm:sudo service lightdm start
  8. 按照命令行提示操作

也可以看看:笔记本电脑上的 NVIDIA CUDA 与 Ubuntu 16.04 beta(如果你等不及的话)

笔记:是的,可以通过 进行安装apt-get install cuda。我强烈建议不要使用它,因为它会更改路径并使其他工具的安装更加困难。

你也可能对此有兴趣如何在 Ubuntu 16.04 上安装 CuDNN?

*:不要使用此脚本安装显示驱动程序。它们太旧了。从以下位置下载最新版本http://www.nvidia.com/Download/index.aspx

验证 CUDA 安装

以下命令显示当前 CUDA 版本(最后一行):

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Sun_Sep__4_22:14:01_CDT_2016
Cuda compilation tools, release 8.0, V8.0.44

以下命令显示您的驱动程序版本以及您的 GPU 内存量:

$ nvidia-smi
Fri Jan 20 12:19:04 2017       
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 367.57                 Driver Version: 367.57                    |
|-------------------------------+----------------------+----------------------+
| 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 940MX       Off  | 0000:02:00.0     Off |                  N/A |
| N/A   75C    P0    N/A /  N/A |   1981MiB /  2002MiB |     98%      Default |
+-------------------------------+----------------------+----------------------+
                                                                               
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0      1156    G   /usr/lib/xorg/Xorg                             246MiB |
|    0      3198    G   ...m,SecurityWarningIconUpdate<SecurityWarni   222MiB |
|    0      6645    C   python                                        1510MiB |
+-----------------------------------------------------------------------------+

也可以看看:验证 CuDNN 安装

救命!新驱动程序不起作用!

不要惊慌。即使您在计算机上看不到任何内容,以下步骤也应该可以让您恢复到之前的状态:

  1. shift启动时按下
  2. 进入 root shell
  3. 通过运行使其可写mount -o remount,rw /-?并且在美国布局中/-
  4. sh cuda_7.5.18_linux.run --uninstall
  5. sudo apt-get install nvidia-361 nvidia-common nvidia-prime nvidia-settings

图形驱动程序

安装显卡驱动程序有点棘手。必须在没有显卡支持的情况下完成此操作。

  1. 从当前 X 会话注销。
  2. Ctrl++ (你可以用 ++切换回来AltF4CtrlAltF7
  3. 您应该先删除所有其他驱动程序。
  • 通过以下方式搜索dpkg -l | grep -i nvidia
  • 通过以下方式删除它们sudo apt-get remove --purge nvidia-WHATEVER
  1. 通过停止 lightdmsudo service lightdm stop
  2. 您可能需要将rebootnouveau 驱动程序列入您的电脑/黑名单(德语教程

答案2

我尝试通过 .run 文件安装多次,但总是出现一些错误,要么我陷入登录循环,要么我完全失去了显示。因此,我建议使用 .deb 文件,而不要摆弄显示管理器。

适用于 Linux 的 NVIDIA CUDA 安装指南 是一个列出完整详细信息的优秀链接。请确保按照给出的每个步骤进行操作。

要安装 Nvidia 驱动程序,您可以执行以下操作:

  1. 在 Ubuntu 中搜索您的计算机左上角菜单搜索附加驱动程序(你也可以这样做系统设置 > 软件和更新 > 附加驱动程序

  2. 在出现的菜单中,选择其中一个 Nvidia 驱动程序,然后单击应用更改。(此步骤使用互联网。如果仍然失败,则您的代理服务器可能阻止了下载)

  3. 重新启动系统。

  4. 打开终端窗口并输入nvidia-smi。如果你的驱动程序已正确安装,你应该会看到类似以下内容:

+------------------------------------------------------+                       
| NVIDIA-SMI 3.295.41   Driver Version: 295.41         |                       
|-------------------------------+----------------------+----------------------+
| Nb.  Name                     | Bus Id        Disp.  | Volatile ECC SB / DB |
| Fan   Temp   Power Usage /Cap | Memory Usage         | GPU Util. Compute M. |
|===============================+======================+======================|
| 0.  Tesla C2050               | 0000:05:00.0  On     |         0          0 |
|  30%   62 C  P0    N/A /  N/A |   3%   70MB / 2687MB |   44%     Default    |
|-------------------------------+----------------------+----------------------|
| Compute processes:                                               GPU Memory |
|  GPU  PID     Process name                                       Usage      |
|=============================================================================|
|  0.  7336     ./align                                                 61MB  |
+-----------------------------------------------------------------------------+

现在,您可以按照前面的链接轻松安装 CUDA。简而言之:

sudo apt-get install linux-headers-$(uname -r)

下载工具包从这里然后安装.deb文件(相应地替换名称)

sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb

然后运行:

sudo apt-get update
sudo apt-get install cuda

答案3

我还尝试了不同的方法在 Ubuntu 16.04 中安装 Cuda 8.0。最后,这些步骤奏效了。我遵循本教程并更新了修正步骤如下。

  1. 更新系统

    apt-get update && apt-get upgrade 
    
  2. 下载虚拟GL并安装。要安装

    dpkg -i virtualgl*.deb
    
  3. 下载并安装CUDA 8.0 并安装它。我建议通过互联网进行安装。像这样,

     在此处输入图片描述

  4. 安装所需的依赖项。

    apt-get install linux-headers-$(uname -r)
    apt-get install freeglut3-dev libxmu-dev libpcap-dev
    
  5. 更新 .bashrc 中的系统 PATH,该文件可以在主目录中找到。请注意,如果您将这些内容安装到不同的位置,请根据该位置更新路径。

    export PATH=$PATH:/opt/VirtualGL/bin
    export PATH=$PATH:/usr/local/cuda/bin
    
  6. 安装 bumblebee-nvidia 和 primus。

    apt-get install bumblebee-nvidia primus
    
  7. 编辑 bumblebee 配置文件,以便 bumblebee 知道我们正在使用 NVIDIA 驱动程序。请根据您的系统更新路径。以下是参考视图,希望对您有所帮助。

    sudo nano +22 /etc/bumblebee/bumblebee.conf 
    

    添加:

    [bumblebeed]
    ServerGroup=bumblebee
    TurnCardOffAtExit=false
    NoEcoModeOverride=false
    Driver=nvidia
    XorgConfDir=/etc/bumblebee/xorg.conf.d
    Bridge=auto
    PrimusLibraryPath=/usr/lib/x86_64-linux-gnu/primus:/usr/lib/i386-linux-gnu/primus
    AllowFallbackToIGC=false
    Driver=nvidia
    [driver-nvidia]
    KernelDriver=nvidia
    PMMethod=auto
    LibraryPath=/usr/lib/nvidia-367:/usr/lib32/nvidia-367
    XorgModulePath=/usr/lib/xorg,/usr/lib/xorg/modules
    XorgConfFile=/etc/bumblebee/xorg.conf.nvidia
    Driver=nouveau
    [driver-nouveau]
    KernelDriver=nouveau
    PMMethod=auto
    XorgConfFile=/etc/bumblebee/xorg.conf.nouveau
    
  8. 运行以下命令并记录您的视频卡的 PCI 地址。

    $ lspci | egrep 'VGA|3D'
    00:02.0 VGA compatible controller: Intel Corporation Device 5916 (rev 02)
    01:00.0 3D controller: NVIDIA Corporation Device 179c (rev a2)
    
  9. 编辑 xorg.conf.nvidia 文件,使其知道您的显卡的 PCI 地址(对我来说是 01:00.0)。按照下面的“ServerLayout”部分更新 PIC 地址

    sudo nano /etc/bumblebee/xorg.conf.nvidia
    

    添加:

    Section "ServerLayout"
        Identifier  "Layout0"
        Option      "AutoAddDevices" "false"
        Option      "AutoAddGPU" "false"
        BusID "PCI:01:00.0"
    
  10. 重新启动系统并运行一些示例代码。

    sudo shutdown -r now
    

答案4

在阅读了几篇帖子后,我让它工作了:我的电脑里已经有一张 ATI 卡,结果发现它非常有用。我在 ATI 旁边安装了 GTX 1070,然后开始安装 Kubuntu 16.04。最初只有连接到 ATI 卡的显示器有图像,这使我能够安装从供应商网站下载的驱动程序 NVIDIA-Linux-x86_64-367.27.run。为了安装 CUDA,我下载了 cuda_7.5.18_linux.run 文件。我使用两个开关安装了 cuda 工具包:

cuda_7.5.18_linux.run --silent --toolkit

也可以从 .run 文件安装 cuda 示例。一个问题是 cuda 不喜欢 gcc5。所以我照做了sudo apt-get install gcc-4.8,然后将默认 gcc 更改为此版本:

cd /usr/bin/
sudo unlink gcc
sudo ln -s gcc4.8 gcc
sudo unlink g++
sudo ln -s g++-4.8 g++

安装 cuda 后我将 gcc 替换为 gcc5。编译 cuda 示例也需要使用 gcc4.8,gcc4.9 可能可以,但我没有尝试。

相关内容