前提条件#

docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi

示例输出

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.78.01    Driver Version: 525.78.01    CUDA Version: 12.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  NVIDIA GeForce ...  Off  | 00000000:01:00.0 Off |                  N/A |
| 41%   30C    P8     1W / 260W |   2244MiB / 11264MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
+-----------------------------------------------------------------------------+

注意

有关枚举多 GPU 系统的更多信息,请参阅 NVIDIA Container Toolkit 的 GPU 枚举文档

支持的硬件#

AlphaFold2 NIM 配置为在单个 GPU 上运行。AlphaFold2 NIM 的最低 GPU 内存要求为 32GB。AlphaFold2 NIM 应该可以在满足此最低硬件要求且计算能力 ≥8.0 的任何 NVIDIA GPU 上运行。AlphaFold2 NIM 还至少需要 512GB 的可用硬盘空间。

总之,希望成功运行小型序列的 AlphaFold2 NIM 的用户应具备以下系统

  • 一个 NVIDIA GPU,具有 ≥32GB 的 VRAM 和计算能力 ≥8.0

  • 至少 64 GB 的 RAM

  • 一个 CPU,具有至少 24 个可用核心

  • 至少 512GB 的可用 SSD 硬盘空间。

为了获得最佳性能,我们推荐具有以下配置的系统

  • 至少一个 NVIDIA GPU,具有 80GB 的 RAM(例如,A100 80GB)

  • 至少 128GB 的 RAM

  • 一个 CPU,具有至少 36 个可用核心

  • 至少 512GB 的可用快速 NVMe SSD 硬盘空间。

NGC (NVIDIA GPU Cloud) 帐户#

  1. 在 NGC 上创建帐户

  2. 生成 API 密钥

  3. 使用您的 NGC API 密钥通过 Docker 登录,使用 docker login nvcr.io --username='$oauthtoken' --password=${NGC_API_KEY}

NGC CLI 工具#

  1. 为您的操作系统下载 NGC CLI tool <https://org.ngc.nvidia.com/setup/installers/cli>__ 工具。

重要提示

使用 NGC CLI 版本 3.41.1 或更高版本。以下是在 AMD64 Linux 上在您的主目录中安装此版本的命令

wget --content-disposition https://api.ngc.nvidia.com/v2/resources/nvidia/ngc-apps/ngc_cli/versions/3.41.3/files/ngccli_linux.zip -O ~/ngccli_linux.zip && \
unzip ~/ngccli_linux.zip -d ~/ngc && \
chmod u+x ~/ngc/ngc-cli/ngc && \
echo "export PATH=\"\$PATH:~/ngc/ngc-cli\"" >> ~/.bash_profile && source ~/.bash_profile
  1. 在本地设置您的 NGC CLI 工具(您将需要您的 API 密钥!)

ngc config set

注意

输入 API 密钥后,您可能会看到组织和团队的多个选项。根据需要选择或按 Enter 键接受默认值。

  1. 登录到 NGC

您需要通过 Docker 登录到 NGC 并设置 NGC_API_KEY 环境变量以拉取镜像

docker login nvcr.io
Username: $oauthtoken
Password: <Enter your NGC key here>

然后,在您的 shell 中设置相关的环境变量。您将需要设置 NGC_API_KEY 变量

export NGC_API_KEY=<Enter your NGC key here>
  1. 设置您的 NIM 缓存

NIM 缓存允许您下载模型并存储以前下载的模型,这样您就不需要在以后再次运行 NIM 时再次下载它们。NIM 缓存必须可供 NIM 读取和写入,因此除了创建目录外,还需要将此目录的权限设置为全局可读写。NIM 缓存目录可以按如下方式设置

## Create the NIM cache directory
mkdir -p /home/$USER/.cache/nim

## Set the NIM cache directory permissions to the correct values
chmod -R 777 /home/$USER/.cache/nim

现在,您应该能够拉取容器并使用环境变量下载模型。要开始使用,请参阅快速入门指南。