先决条件#
首先使用支持 Docker 的操作系统。
安装Docker(最低版本:
23.0.1
)。安装NVIDIA 驱动程序(最低版本:
535
)。安装NVIDIA Container Toolkit(最低版本:
1.13.5
)。通过运行以下命令验证您的容器运行时是否支持 NVIDIA GPU
docker run -it --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-Multimer NIM 配置为在单个 GPU 上运行。AlphaFold2-Multimer NIM 的最低 GPU 内存要求为 32GB。AlphaFold2-Multimer NIM 应在满足此最低硬件要求且计算能力 ≥ 8.0 的任何 NVIDIA GPU 上运行。AlphaFold2-Multimer NIM 还至少需要 512GB 的可用硬盘空间来存储 NIM 公开的终端节点所需的各种 MSA 数据库。
总而言之,希望成功运行用于短序列/多聚体的 AlphaFold2-Multimer NIM 的用户应拥有以下系统:
一个 NVIDIA GPU,具有 ≥ 32GB VRAM 和计算能力 ≥ 8.0。
至少 64 GB 的 RAM。
一个具有至少 24 个可用内核的 CPU。
至少 512GB 的可用 SSD 硬盘空间。
为了在长序列/多聚体和多个 MSA 数据库上获得最佳性能,我们建议使用以下系统:
至少一个 NVIDIA GPU,具有 80GB RAM(例如 A100 80GB)。
至少 128GB 的 RAM。
一个具有至少 36 个可用内核的 CPU。
至少 512GB 的可用快速 NVMe SSD 硬盘空间。
NGC (NVIDIA GPU Cloud) 帐户#
使用您的 NGC API 密钥登录 Docker:
docker login nvcr.io --username='$oauthtoken' --password=${NGC_CLI_API_KEY}
NGC CLI 工具#
为您的操作系统下载
NGC CLI 工具 <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
在本地设置您的 NGC CLI 工具。(您将需要您的 API 密钥!)
ngc config set
注意
输入 API 密钥后,您可能会看到组织和团队的多个选项。根据需要选择或按 Enter 键接受默认值。
登录到 NGC。
您需要通过 Docker 登录到 NGC 并设置 NGC_API_KEY 环境变量以拉取镜像
docker login nvcr.io
Username: $oauthtoken
Password: <Enter your NGC key here>
然后,在您的 shell 中设置相关的环境变量。您将需要设置 NGC_CLI_API_KEY
变量
export NGC_CLI_API_KEY=<Enter your NGC key here>
设置您的 NIM(模型)缓存。
NIM 缓存允许您下载模型并存储先前下载的模型,这样您就不需要在稍后再次运行 NIM 时再次下载它们。NIM 缓存必须可供 NIM读取和写入,因此除了创建目录外,还需要将此目录的权限设置为全局可读写。NIM 缓存目录可以按如下方式设置
## Create the NIM cache directory.
mkdir -p /home/$USER/.cache/nim
## Set the NIM cache directory permissions to 777.
chmod -R 777 /home/$USER/.cache/nim
## If you hit permissions issues after running the NIM and downloading the model for AlphaFold2,
## set model & database permissions to 777 as well. Required for running the NIM!
sudo chmod -R 777 /home/$USER/.cache/nim/alphafold2-data_v1.1.0
重要提示
如果您在通过运行 NIM 下载模型时遇到问题,例如在“气隙”环境中部署,您可以手动下载 AlphaFold2 模型,使用以下命令:ngc registry model download-version nim/deepmind/alphafold2-data:1.1.0
,然后执行 sudo chmod -R 777 /home/$USER/.cache/nim/alphafold2-data_v1.1.0
在本文档中,$LOCAL_NIM_CACHE
环境变量假定使用本地 ~/.cache/nim
目录。您可以将模型缓存路径设置为任何目录。NVIDIA 建议使用高速 SSD 以便快速读取和写入 AF2 模型和数据库。运行 sudo chmod -R 777 $LOCAL_NIM_CACHE
命令以避免 NIM 容器的文件权限问题,无论指定的目录是什么。
现在,您应该能够拉取容器并使用环境变量下载模型。要开始使用,请查看快速入门指南。