AlphaFold2 NIM 性能#
AlphaFold2 NIM 已经过调优以提升性能。然而,多序列比对 (MSA) 和结构预测过程仍然需要大量的计算资源。性能还会因以下因素而显著变化:
连接到 NIM 且可供 NIM 使用的 NVIDIA GPU
可供 NIM 使用的 CPU 核心数量
可供 NIM 使用的固态硬盘 (SSD) 的速度
在运行时用于配置 NIM 的参数。
下面,我们将详细介绍一些性能预期并提供一般性建议。这些并非旨在指示预期性能,您系统上的性能将与这些值有所不同。
推荐系统配置#
至少 1 个 NVIDIA A100 GPU
至少 1 TB(1000 GB)的 SSD 存储空间(最好是 NVMe gen4,速度 >3,500MB/s)
至少 24 个 CPU 核心(物理核心)
互联网连接,下载速度至少为 200 Mbps。
通用性能指南#
一般来说,用户应预期以下性能
A100 以及 >=64 个 CPU 核心和 >=180GB 内存(最佳):最长 3,000 个氨基酸的序列应能成功运行,但 NIM 可能需要数小时才能完成。最快的 MSA 配置。
A100 以及 >=32 个 CPU 核心和 >=128GB 内存(良好):速度与最佳配置相似,但 MSA 性能较为有限。每个 MSA 使用较少的运行器和每个 MSA 使用较少的核心(请参阅“序列到 MSA”部分)。
L40S 以及 >=32 个 CPU 核心和 >=128GB 内存(良好):与 A100 相比,结构预测速度有所降低。与使用相同数量核心的 A100 GPU 相比,MSA 性能相似。
NVIDIA CUDA GPU,具有 >=32GB 显存和 >=12 个 CPU 核心以及 $\geq$64GB 内存(最低配置,体验不佳):短序列将在此配置上运行,但长度超过 600 个氨基酸的序列可能在 MSA 或结构预测中失败。MSA 将非常慢,MSA 运行器的数量应设置为 1(请参阅“序列到 MSA”部分)。
序列到 MSA#
MSA 性能很大程度上取决于磁盘速度和 CPU 核心。确保您的 NIM 缓存位于快速 SSD 上,并且您已为 NIM 分配了至少 24 个核心。有关详细信息,请参阅“在运行时配置 NIM”部分。
增加每个 MSA 进程使用的线程数。这可以使用
NIM_PARALLEL_THREADS_PER_MSA
环境变量来完成。有关详细信息,请参阅“在运行时配置 NIM”部分。增加并发 MSA 进程的数量。这可以使用
NIM_PARALLEL_MSA_RUNNERS
环境变量来完成。有关详细信息,请参阅“在运行时配置 NIM”部分。
短序列的 MSA 运行时可能会有很大差异,但通常运行时与序列长度呈线性关系。对于数据库中有很多命中的序列(即在许多其他蛋白质中观察到基序的序列),无论测序大小如何,MSA 运行时都会显著增加。
一般来说,预计每个查询的 MSA 耗时在一分钟到六小时之间。请注意,这些不是确切的数字,性能会因机器和输入序列的不同而有很大差异。
MSA 到结构和序列到结构#
结构预测性能主要取决于 GPU 性能。如果您发现结构预测成为瓶颈,请考虑使用更强大的 GPU(例如,从 A30 切换到 A100)。
结构预测所需的时间随着序列长度呈指数增长。根据经验,长度是两倍的序列在结构预测阶段将花费至少四倍的时间。
一般来说,预计结构预测组件将花费四分钟到 24 小时。请注意,这些不是确切的数字,性能会因机器和输入序列的不同而有很大差异。