Amazon Elastic Compute Cloud
用户指南(适用于 Linux 实例)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

在 Linux 实例上安装 NVIDIA 驱动程序

基于 GPU 的加速计算实例必须具有相应的 NVIDIA 驱动程序。必须针对您计划在实例上运行的内核编译您安装的 NVIDIA 驱动程序。

根据实例类型,您可以下载公共 NVIDIA 驱动程序、使用 NVIDIA Marketplace 产品或者从仅对 AWS 客户可用的 Amazon S3 下载驱动程序。

公有 NVIDIA 驱动程序

如果是 G3 以外的实例类型,或者您没有在 G3 实例上使用 NVIDIA GRID 功能,您可以下载公有 NVIDIA 驱动程序。

http://www.nvidia.com/Download/Find.aspx 下载适合您的实例类型的 64 位 NVIDIA 驱动程序。

实例 产品类型 产品系列 产品
G2 GRID GRID 系列 GRID K520
G4 † Tesla T 系列 T4(418 或更高版本)
P2 Tesla E 系列 K-80
P3 Tesla V 系列 V100

† G4 实例需要驱动程序版本 418.87 或更高版本。

有关安装和配置驱动程序的更多信息,请在 NVIDIA 网站上选择驱动程序下载页面上的 ADDITIONAL INFORMATION (附加信息) 选项卡,然后选择“README (自述文件)”链接。

适用于 G4 实例的 NVIDIA GRID 驱动程序

可以通过两种方法将 NVIDIA GRID 软件用于 G4 实例上的图形应用程序。您可以下载预装了 GRID 的 AMI,或者从 Amazon S3 下载 NVIDIA GRID vGaming 驱动程序,并将其安装在 G4 实例上。

选项1:将具有 GRID 的 AMI 用于 G4 实例

要查找 AMI,请使用以下链接:NVIDIA Marketplace 产品

选项 2:下载 NVIDIA GRID vGaming 驱动程序

此驱动程序仅对 AWS 客户可用。一经下载,即表明您同意仅使用下载的软件开发用于 NVIDIA Tesla T4 硬件的 AMIs。安装软件时,您需要遵循 NVIDIA GRID Cloud 最终用户许可协议条款。

如果拥有 GRID 许可证,您应该能够在 G4 实例上使用这些许可证。有关更多信息,请参阅 NVIDIA GRID 软件快速入门指南

使用以下过程安装此驱动程序。

  1. 连接到 Linux 实例。

  2. 使用此链接从 Amazon S3 下载和安装 NVIDIA GRID 驱动程序:适用于 G4 实例的 NVIDIA Linux Gaming 驱动程序

  3. 使用以下命令创建所需的配置文件。

    cat << EOF | sudo tee -a /etc/nvidia/gridd.conf vGamingMarketplace=2 EOF
  4. 使用以下命令下载并重命名认证文件。

    wget -O /etc/nvidia/GridSwCert.txt "https://s3.amazonaws.com/nvidia-gaming/GridSwCert-Linux.cert"
  5. 重新启动您的实例。

适用于 G3 实例的 NVIDIA GRID 驱动程序

对于 G3 实例,您可以使用 AWS CLI 或开发工具包从 Amazon S3 下载 NVIDIA GRID 驱动程序。要安装 AWS CLI,请参阅 AWS Command Line Interface 用户指南 中的安装 AWS Command Line Interface。请务必配置 AWS CLI 以使用您的 AWS 凭证。有关更多信息,请参阅 AWS Command Line Interface 用户指南 中的快速配置

重要

此下载仅对 AWS 客户可用。下载即表明您同意仅将下载的软件用于开发在 NVIDIA Tesla M60 硬件上使用的 AMIs。安装软件时,您需要遵循 NVIDIA GRID Cloud 最终用户许可协议条款。

使用以下 AWS CLI 命令下载最新驱动程序:

[ec2-user ~]$ aws s3 cp --recursive s3://ec2-linux-nvidia-drivers/latest/ .

此存储桶中存储了多个版本的 NVIDIA GRID 驱动程序。您可以使用以下命令查看所有可用的版本:

[ec2-user ~]$ aws s3 ls --recursive s3://ec2-linux-nvidia-drivers/

手动安装 NVIDIA 驱动程序

如果您使用的是没有所需 NVIDIA 驱动程序的 AMI,则可以在您的实例上安装该驱动程序。

安装 NVIDIA 驱动程序

  1. 更新软件包缓存并获取实例的必需软件包更新。

    • 对于 Amazon Linux、CentOS 和 Red Hat Enterprise Linux:

      [ec2-user ~]$ sudo yum update -y
    • 对于 Ubuntu 和 Debian:

      [ec2-user ~]$ sudo apt-get update -y
  2. (Ubuntu 16.04 和更高版本,带有 linux-aws 软件包) 升级 linux-aws 软件包以接收最新版本。

    [ec2-user ~]$ sudo apt-get upgrade -y linux-aws
  3. 重启实例以加载最新内核版本。

    [ec2-user ~]$ sudo reboot
  4. 重启之后重新连接到实例。

  5. 为您当前运行的内核版本安装 gcc 编译器和内核标头软件包。

    • 对于 Amazon Linux、CentOS 和 Red Hat Enterprise Linux:

      [ec2-user ~]$ sudo yum install -y gcc kernel-devel-$(uname -r)
    • 对于 Ubuntu 和 Debian:

      [ec2-user ~]$ sudo apt-get install -y gcc make linux-headers-$(uname -r)
  6. 禁用 NVIDIA 显卡的 nouveau 开源驱动程序。

    1. nouveau 添加到 /etc/modprobe.d/blacklist.conf 黑名单文件。复制下面的代码块并将其粘贴到终端中。

      [ec2-user ~]$ cat << EOF | sudo tee --append /etc/modprobe.d/blacklist.conf blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv EOF
    2. 编辑 /etc/default/grub 文件并添加以下行:

      GRUB_CMDLINE_LINUX="rdblacklist=nouveau"
    3. 重新生成 Grub 配置。

      • 对于 CentOS 和 Red Hat Enterprise Linux:

        [ec2-user ~]$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
      • 对于 Ubuntu 和 Debian:

        [ec2-user ~]$ sudo update-grub
  7. 按照以下步骤下载之前确定的驱动程序包。

    • 对于 P2 和 P3 实例,可通过以下命令下载 NVIDIA 驱动程序,其中 xxx.xxx 代表 NVIDIA 驱动程序的版本。

      [ec2-user ~]$ wget http://us.download.nvidia.com/tesla/xxx.xxx/NVIDIA-Linux-x86_64-xxx.xxx.run
    • 对于 G2 实例,可通过以下命令下载 NVIDIA 驱动程序,其中 xxx.xxx 代表 NVIDIA 驱动程序的版本。

      [ec2-user ~]$ wget http://us.download.nvidia.com/XFree86/Linux-x86_64/xxx.xxx/NVIDIA-Linux-x86_64-xxx.xxx.run
    • 对于 G3 实例,您可以使用 AWS CLI 或开发工具包从 Amazon S3 下载驱动程序。要安装 AWS CLI,请参阅 AWS Command Line Interface 用户指南 中的安装 AWS Command Line Interface。使用以下 AWS CLI 命令下载最新驱动程序:

      [ec2-user ~]$ aws s3 cp --recursive s3://ec2-linux-nvidia-drivers/latest/ .

      重要

      此下载仅对 AWS 客户可用。下载即表明您同意仅将下载的软件用于开发在 NVIDIA Tesla M60 硬件上使用的 AMIs。安装软件时,您需要遵循 NVIDIA GRID Cloud 最终用户许可协议条款。

      此存储桶中存储了多个版本的 NVIDIA GRID 驱动程序。您可以使用以下命令查看所有可用的版本:

      [ec2-user ~]$ aws s3 ls --recursive s3://ec2-linux-nvidia-drivers/
  8. 运行自安装脚本,安装您在上一个步骤中下载的 NVIDIA 驱动程序。例如:

    [ec2-user ~]$ sudo /bin/sh ./NVIDIA-Linux-x86_64*.run

    系统提示时,接受许可协议并根据需要指定安装选项 (您可以接受默认选项)。

  9. 重启实例。

    [ec2-user ~]$ sudo reboot
  10. 确认驱动程序正常运行。以下命令的响应会列出已安装的 NVIDIA 驱动程序版本和有关 GPU 的详细信息。

    注意

    该命令可能需要几分钟才能运行。

    [ec2-user ~]$ nvidia-smi -q | head
  11. [仅限 G3 实例] 要启用 NVIDIA GRID 虚拟应用,请完成 在 G3 实例上激活 NVIDIA GRID 虚拟应用 中的 GRID 激活步骤(默认情况下启用 NVIDIA GRID 虚拟工作站)。

  12. 完成优化 GPU 设置中的优化步骤以实现 GPU 的最佳性能。

使用替代 NVIDIA 驱动程序

Amazon 在 AWS Marketplace 中针对每次官方内核升级向 AMIs 提供 NVIDIA 内核驱动程序的兼容更新版本。如果您决定使用与 Amazon 提供的版本不同的 NVIDIA 驱动程序,或决定使用非 Amazon 官方版本的内核,则须从您的系统中卸载 Amazon 提供的 NVIDIA 软件包,以避免与您将要安装的驱动程序版本相冲突。

使用该命令卸载 Amazon 提供的 NVIDIA 软件包:

[ec2-user ~]$ sudo yum erase nvidia cuda

Amazon 提供的 CUDA 工具包安装包对 NVIDIA 驱动程序有依赖性。卸载 NVIDIA 软件包也会删除 CUDA 工具包。必须在安装 NVIDIA 驱动程序之后重新安装 CUDA 工具包。