如何在 Ubuntu 16.04 上安装 CUDA?

Mar*_*oma 99 cuda 16.04

对于 TensorFlow,我想安装 CUDA。我如何在 Ubuntu 16.04 上做到这一点?

Mar*_*oma 99

为 Ubuntu 安装 CUDA

有一个Linux 安装指南。但是,基本上只有这些步骤:

  1. 下载 CUDA:我使用了 15.04 版本和“运行文件(本地)”。那是 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
    
    Run Code Online (Sandbox Code Playgroud)
  5. 然后做: sudo update-initramfs -u
  6. sudo sh cuda_7.5.18_linux.run --override. 确保您说y的是符号链接。
  7. 再次启动 lig​​htdm: sudo service lightdm start
  8. 按照命令行提示操作

另请参阅:笔记本电脑上带有 Ubuntu 16.04 beta 的 NVIDIA CUDA(如果您迫不及待)

注意:是的,可以通过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
Run Code Online (Sandbox Code Playgroud)

以下命令显示您的驱动程序版本以及您拥有的 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 |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

另请参阅:验证 CuDNN 安装

帮助!新驱动不行!

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

  1. shift开机时按
  2. 进入根shell
  3. 通过运行使其可写mount -o remount,rw /-is?/is-在美国布局中)
  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+ Alt+ F4(你可以用Ctrl+ Alt+切换回来F7
  3. 您应该先删除所有其他驱动程序。
  • 通过搜索它们 dpkg -l | grep -i nvidia
  • 通过删除它们 sudo apt-get remove --purge nvidia-WHATEVER
  1. 停止 lightdm 通过 sudo service lightdm stop
  2. 您可能需要将reboot您的电脑/黑名单 nouveau 驱动程序(德语教程

  • 我有点不清楚是先按照第三点的步骤操作,还是要重新安装显卡驱动程序时按照显卡驱动程序下的说明操作 (2认同)

小智 22

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

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

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

  1. 在 Ubuntu 的左上角搜索您的计算机菜单中搜索其他驱动程序(您也可以执行System Settings > Software and Updates > Additional Drivers

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

  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  |
+-----------------------------------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

您现在可以根据上一个链接轻松安装 CUDA。简单来说:

sudo apt-get install linux-headers-$(uname -r)
Run Code Online (Sandbox Code Playgroud)

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

sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
Run Code Online (Sandbox Code Playgroud)

然后运行:

sudo apt-get update
sudo apt-get install cuda
Run Code Online (Sandbox Code Playgroud)

  • 我刚刚将它安装在带有 GeForce 1080 TI 的全新 Linux Mint KDE 设置 (2017-05-24) 上,并且运行良好。在网页上选择“deb(网络)”-variant,因为两者都只是在/etc/apt/sources.list.d/中安装了一个apt-source,但“deb(本地)”是一个本地文件指针,而另一个(“网络”)是一个普通的回购链接。它是这样读的,你可以直接输入它自己,这个文件叫做“cuda.list”:`deb http://developer.download.nvidia.com/compute/cuda/repos/ubun‌ ‌ tu1604/x86_64 /`。请注意,安装将驱动程序从 nvidia-381 降级到 -375。我把它留在了那里。 (2认同)

GPr*_*hap 6

我还尝试了不同的方法,以便在 Ubuntu 16.04 中安装 Cuda 8.0。最后,这些是起作用的步骤。我按照本教程更新了更正的步骤,如下所示。

  1. 更新系统

    apt-get update && apt-get upgrade 
    
    Run Code Online (Sandbox Code Playgroud)
  2. 下载VirtualGL并安装它。安装

    dpkg -i virtualgl*.deb
    
    Run Code Online (Sandbox Code Playgroud)
  3. 下载并安装CUDA 8.0?并安装它。我建议通过互联网来做。像这样,

    ?在此处输入图片说明

  4. 安装所需的依赖项。

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

    export PATH=$PATH:/opt/VirtualGL/bin
    export PATH=$PATH:/usr/local/cuda/bin
    
    Run Code Online (Sandbox Code Playgroud)
  6. 安装 bumblebee-nvidia 和 primus。

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

    sudo nano +22 /etc/bumblebee/bumblebee.conf 
    
    Run Code Online (Sandbox Code Playgroud)

    添加:

    [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
    
    Run Code Online (Sandbox Code Playgroud)
  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)
    
    Run Code Online (Sandbox Code Playgroud)
  9. 编辑 xorg.conf.nvidia 文件,让它知道你的显卡的 PCI 地址(对我来说是 01:00.0)。在“ServerLayout”部分下更新PIC地址如下

    sudo nano /etc/bumblebee/xorg.conf.nvidia
    
    Run Code Online (Sandbox Code Playgroud)

    添加:

    Section "ServerLayout"
        Identifier  "Layout0"
        Option      "AutoAddDevices" "false"
        Option      "AutoAddGPU" "false"
        BusID "PCI:01:00.0"
    
    Run Code Online (Sandbox Code Playgroud)
  10. 重新启动系统并享受运行一些示例代码的乐趣。

    sudo shutdown -r now
    
    Run Code Online (Sandbox Code Playgroud)