拉取和运行 NVIDIA AI Enterprise 容器#

AI 和数据科学应用程序及框架作为 NGC 容器镜像通过 NVIDIA NGC Catalog 分发。每个容器镜像都包含运行应用程序或框架所需的整个用户空间软件栈;即 CUDA 库、cuDNN、任何必需的 Magnum IO 组件、TensorRT 和框架。

在您想要将 AI 和数据科学容器拉取到的环境中执行以下工作流程步骤。

首先,您需要使用您的 NVIDIA 帐户和密码登录 NGC

_images/ngc1.png

导航到设置。

_images/ngc2.png

选择“获取 API 密钥”。

_images/ngc3.png

生成您的 API 密钥。

_images/ngc4.png

确认生成新的 API 密钥。

_images/ngc5.png

复制您的 API 密钥到剪贴板

注意

选择确认将生成新的 API 密钥,您的旧 API 密钥将失效(如果适用)。

_images/ngc6.png

当您从命令行与存储库交互时,如果您想拉取锁定的容器镜像或推送回注册表,则需要使用 API 密钥。API 密钥是您独有的,并与您的帐户关联。

重要提示

请妥善保管您的 API 密钥,并将其保存在安全的地方。不要共享或将其存储在其他人可以看到或复制的地方。

返回到 SSH 会话和/或环境终端,登录 Docker 并开始从 NVIDIA AI NGC Catalog 拉取容器。

NGC 容器注册表登录#

登录 NGC 容器注册表。

docker login nvcr.io

当提示您输入用户名时,输入以下文本

$oauthtoken

注意

$oauthtoken 用户名是一个特殊用户名,指示您将使用 API 密钥而不是用户名和密码进行身份验证。

当提示您输入密码时,粘贴您的 NGC API 密钥,如下例所示。

Username: $oauthtoken
Password: my-api-key

注意

当您按照生成您的 NGC API 密钥中的说明获取 API 密钥时,将其复制到剪贴板,以便在提示您输入密码时将其粘贴到命令 shell 中。

以下部分提供了使用 Tensorflow 的容器拉取示例以及详细步骤。我们将使用“拉取标签”功能轻松复制和粘贴我们的容器拉取命令到所需的环境中。

使用 NVIDIA AI Enterprise 搜索过滤器,用户可以通过 NGC 目录访问针对深度学习、机器学习和 HPC 优化的 GPU 软件,该目录提供容器、模型、模型脚本和行业解决方案。

_images/ngc-12.png

以下提供了使用 NVIDIA RAPIDS Production Branch 的容器拉取示例,并在以下部分中提供了详细步骤,使用了 NVIDIA AI Enterprise 搜索过滤器。我们将使用“拉取标签”功能轻松复制和粘贴我们的容器拉取命令到所需的环境中。

导航到搜索过滤器并选择 NVIDIA AI Enterprise 支持、NVIDIA AI Enterprise Essentials、Container 和 Rapids,如下图所示。

_images/ngc-13.png

导航到获取容器并复制命令到您的剪贴板。

_images/ngc-14.png

将命令粘贴到您的 SSH 会话中

sudo docker pull nvcr.io/nvaie/rapids-pb23h2:23.06.04-runtime

对于您感兴趣的每个 AI 或数据科学应用程序,使用拉取命令功能加载容器。

作为参考,以下详细列出了每个应用程序或框架的 Docker 拉取命令,其中上下文为 <NVAIE-MAJOR-VERSION>:<NVAIE-CONTAINER-TAG>

准备运行容器#

为确保您的云实例已启用 GPU 加速,请使用 docker run –gpus 在您的云 VMI 实例中运行 NVIDIA AI Enterprise 容器。

  • 使用所有 GPU 的示例

    $ docker run --gpus all
    
  • 使用两个 GPU 的示例

    $ docker run --gpus 2
    
  • 使用特定 GPU 的示例

    $ docker run --gpus "device=1,2" ... $ docker run --gpus "device=UUID-ABCDEF,1"
    

运行 NVIDIA AI Enterprise 容器#

要在您的云 VMI 中运行 NVIDA AI Enterprise 容器,请参阅 NGC 上的 NGC Catalog 以获取特定容器要使用的正确拉取标签,然后输入以下 docker 镜像

示例:使用 PyTorch 容器运行 MNIST 训练#

通过终端登录到您的云 VMI 实例以运行 MNIST 示例。

请注意,PyTorch 示例将从 Web 下载 MNIST 数据集。

  1. 拉取并运行 PyTorch 容器

    1docker pull nvcr.io/nvaie/pytorch-2-0:22.02-nvaie-2.0-py3
    2
    3docker run --gpus all --rm -it nvcr.io/nvaie/pytorch-2-0:22.02-nvaie-2.0-py3
    
  2. 运行 MNIST 示例

    1cd /workspace/examples/upstream/mnist
    2
    3python main.py