本文收录于专栏 gnina系列 ------ 专栏系统覆盖分子对接引擎选型、GPU 加速虚拟筛选与打分函数评估,点击订阅可跟踪后续更新。
你要给虚拟筛选挑一个 GPU 对接引擎,搜到的加速比却从 4 倍横跨到上千倍,根本没法直接比。这篇把 AutoDock-GPU、Vina-GPU 系列、Vina-CUDA、Uni-Dock、GNINA、DiffDock 的关键数字逐条核回论文与官方仓库:修掉版本张冠李戴、基准对象偷换、设备端口径、预印本数字四类陷阱,澄清官方 Vina 至今没有 GPU 版,再补上精度证据(GNINA 把定义口袋重对接 Top1 从 58% 提到 73%,PoseX 跨对接基准上顶尖 AI 方法全面超过物理方法)与吞吐实测,最后给三条按算力分流的选型路径。读完你能直接判断手里这张卡该跑哪个引擎,也知道哪些流传数字不能进决策。
关键字:分子对接、GPU加速、AutoDock-GPU、Uni-Dock、GNINA、Vina-GPU、DiffDock、虚拟筛选

目录 :[§0. 相关教程与核心文献](#§0. 相关教程与核心文献) | [§1. 三条技术路线与候选清单](#§1. 三条技术路线与候选清单) | [§2. 加速比:四类口径陷阱与逐源修正](#§2. 加速比:四类口径陷阱与逐源修正) | [§3. 精度指标:打分器贡献的增量](#§3. 精度指标:打分器贡献的增量) | [§4. 吞吐与集群规模](#§4. 吞吐与集群规模) | [§5. 部署与许可约束](#§5. 部署与许可约束) | [§6. 三条选型路径](#§6. 三条选型路径) | [§7. 风险自查与跟踪信号](#§7. 风险自查与跟踪信号)
§0. 相关教程与核心文献
| 资源 | 链接 | 与本文关系 |
|---|---|---|
| AutoDock-GPU 仓库 | --- | 官方加速口径 56×/4× 与编译参数 |
| Uni-Dock 仓库 | --- | 千倍加速声明与三档参数模式 |
| Vina-GPU 2.0/2.1 仓库 | --- | 版本谱系与 Apache 2.0 许可 |
| Vina-CUDA 仓库 | --- | CUDA 重写版与多卡负载均衡 |
| gnina 仓库 | --- | 版本时间线与 CUDA 12.8 说明 |
| QuickVina 2 仓库 | --- | 20.49× 最大加速与 0.967 相关性 |
| Tang 等, Molecules 2022, 10.3390/molecules27093041 | --- | Vina-GPU 初代加速比原始出处 |
| Ding 等, JCIM 2023, 10.1021/acs.jcim.2c01504 | --- | Vina-GPU 2.0 的 65.6× |
| Tang 等, TCBB 2024, 10.1109/TCBB.2024.3467127 | --- | Vina-GPU 2.1 的 4.97× 与 EF1% +342% |
| Vina-CUDA, JCIM 2025, PubMed 40377068 | --- | CUDA 对 OpenCL 的头对头数字 |
| Yu 等, JCTC 2023, 10.1021/acs.jctc.2c01145 | --- | Uni-Dock 千倍加速与 3820 万分子实测 |
| McNutt 等, J Cheminform 2021, 10.1186/s13321-021-00522-2 | --- | GNINA 四组 Top1 数字 |
| PoseX, ICLR 2026, arXiv 2505.01700 | --- | 718 自对接 + 1312 跨对接基准 |
| DiffDock, arXiv 2210.01776 | --- | 38% Top1 与部署依赖 |
| UniDock-Pro, JCIM 2026, 10.1021/acs.jcim.5c02587 | --- | 单卡百万级吞吐论文口径 |
§1. 三条技术路线与候选清单
选 GPU 对接引擎前先分清"加速发生在哪一层",三条路线的结果不能用同一指标排序:
| 路线 | 代表 | 加速的是什么 | 结果可比性 |
|---|---|---|---|
| 物理引擎移植 | AutoDock-GPU、Vina-GPU 系列、Vina-CUDA、Uni-Dock | 同一打分函数下的构象搜索 | 与 CPU 版直接可比 |
| 深度学习打分 | GNINA(卷积神经网络 CNN 重打分) | 评分标准本身 | 收益在富集与姿态准确率,非时间 |
| 生成式对接 | DiffDock(扩散模型直接生成姿态) | 跳出采样-打分范式 | 输出置信度得分,不直接预测亲和力 |
三款常被误列入 GPU 名单的软件要先排除:Glide 的对接模块是纯 CPU 并行,Schrödinger 套件的 GPU 能力只在 Desmond、FEP+ 等模块且限 Linux;GOLD 无原生 CUDA,并行靠 Slurm 集群容器;LeDock 默认单线程 CPU,靠 GNU Parallel 堆核。
还有一个流传很广的错误必须单独点名:官方 AutoDock Vina 没有 GPU 版。Scripps 官方仓库最新版本是 v1.2.7(2025 年 2 月),纯 CPU 实现;网传"Vina 2.0 已引入 GPU 加速"是把第三方 Vina-GPU 2.0 的版本号误当成了官方版本号。选型时"是否兼容 Vina 命令行"仍然有意义,但 GPU 路径全部来自第三方衍生版。
§2. 加速比:四类口径陷阱与逐源修正
先给核对结论表,每个数字都能回到 §0 的原始出处:
| 引擎/版本 | 核对后的数字 | 基准与口径 |
|---|---|---|
| AutoDock-GPU | 最高 56×(GPU)、4×(四核 CPU) | 官方 README,对串行 AutoDock 4.2 |
| AutoDock-GPU(论文口径) | 最高 350× | 三级并行,对单线程 CPU |
| Vina-GPU(初代) | 平均 21.66×、最大 50.80× | RTX 3090,对 20 线程原版 Vina,总运行时 |
| Vina-GPU 2.0 | 对 Vina 平均 65.6× | RIPK1/RIPK3 虚筛场景 |
| Vina-GPU 2.1 | 平均 4.97×、EF1% 平均 +342% | 两者均以 Vina-GPU 2.0 为基准 |
| Vina-CUDA | 对 Vina 平均 3.03×/4.38×、最大 23.84×;对 Vina-GPU 2.1 平均 3.01×/4.08× | 两个数据集分别为 AutoDock-GPU 集/CASF-2016 |
| QuickVina2-CUDA | 对 QuickVina2-GPU 2.1 平均 11.81×/13.81×、最大 32.72×/33.78× | 同上 |
| QuickVina 2(CPU 算法优化) | 最大 20.49×、平均仅 2.30× | 对 Vina,Pearson 0.967 |
| Uni-Dock | 论文 >1000×、README 现行 >2000× | V100,对单核 CPU |
四类把这张表搅乱的陷阱,每一类都在中文资料里高频出现:
坑一:版本张冠李戴。 "平均 21.66×、最大 50.80×"出自 2022 年初代 Vina-GPU 论文,却被大量转述贴到 Vina-GPU 2.1 头上;连"最大 191.68×"也常被混引------那是同一篇论文里仅设备端运行时(不含 host 开销)的口径,总运行时口径就是上一行的 50.80×。
坑二:基准对象偷换。Vina-GPU 2.1 的 4.97× 是对上一代 GPU 版的增量,不是对 CPU 原版;直接拿它和 Uni-Dock 的千倍(对单核 CPU)排序,等于拿两个不同分母比大小。
坑三:preprint 与正式版分歧。"最大 403×"只存在于 2021 年预印本摘要(基准还是四线程 Vina),正式发表版里没有这个数字。预印本数字被正式版修订是常态,引用时以正式版为准。
坑四:查无主源的整数倍。"Uni-Dock 高达 1600×"在论文与官方仓库都找不到出处,论文口径是 >1000×,README 现行版本是 >2000×------引用哪个都行,别用 1600。
真正口径干净的可比组只有 Vina-CUDA 论文那组同版本头对头:CUDA 重写相对 OpenCL 移植确有实质增益(Vina-CUDA 对 Vina-GPU 2.1 平均 3 倍上下,QuickVina2-CUDA 对应 GPU 版平均 11.81--13.81 倍),这是目前跨引擎比较里最可信的一段。
§3. 精度指标:打分器贡献的增量
GPU 化本身不带来精度,精度增量来自打分器改造。GNINA 的证据最完整(论文摘要口径):定义口袋重对接 Top1 从 Vina 的 58% 提到 73%,跨对接 27% 到 37%;全蛋白对接 31% 到 38%、跨对接 12% 到 16%。虚拟筛选侧,GNINA 1.0 论文用的是 LogAUC 口径;网上常见的"中位 EF1%(1% 富集因子)15.5 对 7.1"是第三方实测口径,引用时要标注出处层级。
被 GPU 加速的那些 Vina 衍生版,精度起点本身不低:CASF-2016 评测里 AutoDock Vina 的对接能力排名第一。Vina-GPU 2.1 则是"提速反哺精度"的例子------EF1% 平均 +342% 来自更充分的构象搜索。
生成式路线要分开看:DiffDock 在 PDBBind 盲对接 Top1 为 38%(此前传统方法 23%、深度学习 20%),但它不输出结合亲和力;ICLR 2026 的 PoseX 基准(718 个自对接 + 1312 个跨对接样本、23 种方法)给出了更严格的结论------顶尖 AI 方法在跨对接上全面超过物理方法(SurfDock 77.0% 对 GNINA 54.1%),只报自对接会掩盖真实差距。GNINA 1.3 版新增共价对接界面与蒸馏版 CNN 打分函数,是打分路线的最新增量。
§4. 吞吐与集群规模
筛选库规模决定要不要 GPU、要哪一档:
| 量级 | 可行方案 | 核对后的吞吐口径 |
|---|---|---|
| 十万以下 | CPU 方案即可 | LeDock 百线程每天 30--50 万分子 |
| 百万至千万 | 单卡或小型集群 | Uni-Dock 单分子 vina/vinardo 打分 0.1 秒(V100) |
| 千万至亿级 | 多卡集群 | Uni-Dock 实测 3820 万分子(对接 KRAS G12D)不到 12 小时用 100 块 V100 |
| 亿级以上 | 检索预筛 + 对接后置 | 检索式方案已不属于"对接",作超大规模预筛 |
Uni-Dock 论文的 head-to-head 显示它比 AutoDock-GPU 和 Vina-GPU 快 10 倍以上且精度可比。单卡侧的 UniDock-Pro(JCIM 2026,基于 Uni-Dock 架构做配体间并行)论文口径是"单 GPU 每天百万级分子";公众号流传的"单张 RTX 4090 每天 640 万"属厂商宣传口径,选型以论文与自测为准。分层筛选用 Fast/Balanced/Detail 三档参数组合接力初筛、复筛、精筛,是这套引擎的标准用法。
§5. 部署与许可约束
部署侧最容易踩的是 CUDA 版本方向相反:gnina 自 v1.3.2(2025 年 7 月)起为最新显卡提供 CUDA 12.8 构建(当前最新 v1.3.3,2026 年 6 月),而 AutoDock-GPU 的旧教程普遍绑定旧版 CUDA------同一台机器混部两类引擎要用容器隔离。AutoDock-GPU 的 OpenCL+CUDA 双路径是非 NVIDIA 算力下容错最明显的对接引擎;Uni-Dock 原生面向 Linux + CUDA,Windows 场景目前靠第三方跨平台发行补位。
许可证决定商业化空间:Vina-GPU 全系 Apache 2.0;Uni-Dock 在 v1.x 时代是 LGPL,2025 年 3 月起统一为 Apache 2.0;管线里若引入 openbabel(GPL-2.0)做前后处理,对外提供闭源服务前必须过一遍合规。DiffDock 的最低门槛入口是 NVIDIA NIM 容器(nvcr.io/nim/mit/diffdock:1.2.0),映射 8000 端口即可接受推理请求。
§6. 三条选型路径
**路径一:Vina 生态零改造。**已有成熟 Vina 脚本、只想压缩墙钟时间:已知结合位点用 QuickVina2-GPU 2.1(其 CUDA 版还有 10 倍以上空间),位点不确定用 Vina-GPU 2.1,重打分与排序环节叠加 GNINA。验收方式是同批分子 CPU/GPU 结果一致性比对,加 RMSD 小于 2 埃的顶姿态占比。
**路径二:CUDA 集群做大规模筛选。**有 V100/A100 级算力与调度环境:直接采用 Uni-Dock 的三档分层结构(Fast 初筛全库、Balanced 复筛前 10%、Detail 精筛再前 10%),多卡开批量并行。不想自建可走 Hermite 平台的 SaaS 模式。
**路径三:AI 与物理互验。**对结合模式可靠性要求高的场景:DiffDock 出姿态、物理引擎出亲和力,双管线交叉验证;注意 GPCR 靶标基准里 Uni-Dock 曾大幅优于 DiffDock------AI 路线并非处处占优,PoseX 这类跨对接基准才是裁判。
§7. 风险自查与跟踪信号
任何加速比数字进决策前过三步:对照对象是否同版本同核数?时间含不含前处理与后处理?任务是重对接、跨对接还是富集筛选?三问齐了才可比。
值得跟踪的三个信号:官方 Vina 若推出 GPU 路径,第三方衍生版的兼容价值要重估;gnina 与 Uni-Dock2 的版本节奏(后者 2025 年 3 月已换 Apache 2.0 并独立建仓);PoseX 排行榜的新一轮结果------跟踪基准比跟踪单家软件的加速倍数,更能提前发现选型结论失效。
一句话收束:以 Vina 命令行兼容为前提做低成本提速,用 Uni-Dock 系承接千万级以上集群吞吐,GNINA 做打分层增量、DiffDock 做无口袋场景对照;Glide、GOLD、LeDock 不在 GPU 名单里,而所有加速倍数,先核对基准对象再进决策。
系列导航 :专栏全集 gnina系列
更多专栏:
我的专栏
| 蛋白 / 抗体 / 多肽 / 核酸 | 分子模拟 / 动力学 / 对接 | 药物 / 设计 / 案例 | AI / Agent / 大模型 |
|---|---|---|---|
| 开源蛋白结构预测 | 分子模拟基础 | 小分子药物设计案例 | AI Agent系列 |
| 开源蛋白生成方法实践 | 分子动力学模拟-Amber | 蛋白药物设计案例 | 化学大模型 |
| 开源多肽设计模型 | 分子动力学模拟-Gromacs | 多肽药物设计案例 | 《AI Agent原理与实战》 |
| 开源多肽性质预测 | 分子动力学模拟-OpenMM | 开源小分子生成设计 | CADD中的机器学习模型 |
| DNA/RNA药物设计 | 結合自由能 | 高效计算配置 | 《MCP 入门实战》 |
| siRNA药物设计模型 | UCSF DOCK系列 | 我胡师兄说药 | 《AI入门实战2026》 |
| ASO药物设计模型 | rDock系列 LeDock系列 gnina系列 | 《经典机器学习实战》 |