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