GFN2-xTB 与 CREST:浏览器实现与性能演进

GFN2-xTB、ASE 与 CREST 的浏览器数值验证及两轮同机性能测量:固定 quick 协议、并发条件、计时范围和结果复现方法。

Felix Fei

GFN2-xTB 与 CREST:浏览器实现与性能演进

GFN2-xTB、ASE 与 CREST 的浏览器数值验证及两轮同机性能测量:固定 quick 协议、并发条件、计时范围和结果复现方法。

2026-10-08 · Mol2Mat · Felix Fei · revision 2

本文比较 GFN2-xTB 电子结构、ASE 几何优化与 CREST 构象搜索的原生及浏览器实现。Revision 1 记录数值一致性与并发曲线,Revision 2 评价完整任务性能。在同一设备、相同采样协议的乙醇、正丁烷和正己烷 quick 任务中,Revision 2 相对 Revision 1 的完整任务中位耗时降低 27.3–45.5 %。公开数据支持逐次测量、统计量和构象输出的复核。

测量与计算条件

两轮测量的日期与条件

原生与 Revision 1 的同机测量于 2026 年 10 月 8 日完成,Revision 2 于 10 月 9 日测量。图中的三版本比较使用这一历史参照;局部优化另有预热、交错执行的配对实验。GFN2 单点与 ASE 优化的并发曲线仍来自 Revision 1,Revision 2 的完整任务测量覆盖乙醇、正丁烷和正己烷。

表 1. 测量日期与任务边界
记录测量日期范围与条件
Revision 1 与原生参照2026-10-08354 次新执行;GFN2 9–122 原子;CREST 乙醇、正丁烷、正己烷;每配置 n=3。
Revision 22026-10-099 次完整 quick 任务;10 个子 Worker;每分子 n=3;18 条原生/R1 历史参照。
共同设备与科学条件两轮分别记录环境与资产身份M1 Pro 10 核、32 GiB;macOS 27.0、Chrome 154.0.8037.98;GFN2 气相中性闭壳层、300 K、accuracy 1。

科学参数与运行条件

实验在同一台 Apple M1 Pro(8 性能核、2 能效核,32 GiB 内存)上运行。两端使用浏览器 RDKit ETKDGv3/MMFF94 生成的同一组显式含氢坐标。GFN2 对照为 tblite 0.7.0 与原版 ASE 3.29.0;统一气相中性闭壳层、双精度、accuracy 1.0、300 K 电子温度及 0.05 eV Å⁻¹ BFGS 收敛阈值。全部优化在 1000 步上限前收敛。

各配置重复三次,图中为中位数与最小至最大值。1/2/4 和追加的 8/10 配置分批运行,批内顺序跨轮轮换,科学任务顺序执行。系统后台服务保持运行,主机负载逐次记录。原生 GFN2 设置 OpenMP/BLAS 线程环境;浏览器 1 为主 Worker 串行路径,2/4/8/10 为轨道对子池并发。

CREST 原生对照与浏览器计算采用匹配版本和随机序列,保留完整 quick 协议的阶段、时长、精度与收敛条件。原生对照与浏览器的轨迹状态协议分别记录,因此加速比以相同浏览器协议下的配置为基准。公开数据保留固定坐标、逐次结果与资产校验值。

表 2. 计算参数与执行条件
参数原生实现Revision 1Revision 2
方法 / 流程GFN2-xTB / CREST quickGFN2-xTB / CREST quickGFN2-xTB / CREST quick
软件版本CREST 3.0.2 / tblite 0.7.0CREST 3.0.2 / tblite 0.7.0CREST 3.0.2 / tblite 0.7.0
电子温度300 K300 K300 K
计算精度参数 / 搜索 SCF 上限1.0 / 5001.0 / 5001.0 / 500
电荷 / UHF / 相态0 / 0 / 气相0 / 0 / 气相0 / 0 / 气相
执行并发1 原生线程10 子 Worker10 子 Worker
起始几何 / 随机控制相同 RDKit 几何;种子 20261003,重置序列 +37×i相同几何与种子序列相同几何与种子序列
热点代码编译GNU Fortran 16.2.0 / OpenBLAS不同优化等级的 WASM 对象热点 O2 重编译;固定尺寸 s/p 积分
最终性质复算未纳入原生搜索计时最多 10 构象;SCF 上限 150最多 10 构象;SCF 上限 150
电子态策略原生 SCC 缓存链独立轨迹;阶段入口态初始化相同协议;优化恢复与返回
数值精度f64f64f64
重复次数 / 日期3 / 2026-10-083 / 2026-10-083 / 2026-10-09
计时范围进程启动至搜索输出搜索、校验、性质复算搜索、校验、性质复算

Revision 1:浏览器实现与并行性能

GFN2 数值一致性

每个浏览器单点与优化结果均在完整双精度最终坐标上由原生 tblite 独立复算。最大能量差为 1.124 × 10⁻⁷ Ha,相当于 7.050 × 10⁻⁵ kcal mol⁻¹;最大梯度分量差为 3.736 × 10⁻⁶ Ha bohr⁻¹,电荷与偶极差分别为 1.823 × 10⁻⁹ e 和 7.631 × 10⁻⁹ D。四项指标均满足既有的移植一致性标准。

表 3. 相同坐标上的最大绝对差
物理量最大差
Energy / Ha1.123538737601848e-7
Gradient / Ha bohr⁻¹0.000003736210379341043
Charge / e1.8228497600247806e-9
Dipole / D7.630595996248265e-9

从相同起始坐标执行原版 ASE BFGS,两端所有优化的收敛状态和步数相同,逐步轨迹的最大坐标差为 7.500 × 10⁻⁵ Å。能量、力和优化路径的一致性表明,浏览器实现保留了本组分子的原生数值行为。轨迹按六位小数记录,最终电子性质复算使用完整精度坐标。

单点与几何优化性能

浏览器单 Worker 几何优化的计算中位数为:乙醇 0.090 s、阿司匹林 1.226 s、咖啡因 0.414 s、正二十烷 0.704 s、正四十烷 6.038 s。对受测的常见小分子,原版 GFN2 与 ASE 计算已进入亚秒至秒级。

单点与几何优化性能
图 1. 三次实测的中位数与全范围;计时范围见正文。

正四十烷优化在 4 路子池下为 5.475 s,较串行改善 9.3 %。并行部分为轨道对积分,ASE 控制、SCC 和矩阵运算仍承担串行成本;小任务更适合串行,较大结构可受益于适度并发。这组任务的原生单线程耗时更短。

并发曲线

1、2、4、8、10 配置的完整曲线显示,最佳并发取决于任务结构。正四十烷几何优化的 8、10 路中位数分别为 5.626、5.563 s,本机以 4 路最快;CREST 多轨迹搜索则在 8–10 路获得最大收益。任务级并行比单次电子计算内部并行具有更大的扩展空间。

并发曲线
图 2. 三次实测的中位数与全范围;计时范围见正文。

实测优化结构

阿司匹林、咖啡因和正四十烷分别代表多官能团芳香分子、含氮杂环和长链体系。浏览器完成 21、24、122 原子的原版 ASE BFGS 优化,分别在 56、12、18 步收敛。下方模型直接读取本次计算的最终坐标,旁列能量、最大力与优化步数。

阿司匹林: 21 atoms, 56 BFGS steps; -39.63155591 Ha. Measured XYZ

咖啡因: 24 atoms, 12 BFGS steps; -42.15385498 Ha. Measured XYZ

正四十烷: 122 atoms, 18 BFGS steps; -127.54814429 Ha. Measured XYZ

图 3. 浏览器优化的最终结构。

完整 CREST 搜索并行

浏览器 CREST 在完整 MTD/MD 轨迹和优化批次之间分配工作,保留 iMTD-GC quick 的试探与正式元动力学、分子动力学、优化、遗传交叉及 CREGEN 整理。各轨迹使用独立电子状态与固定随机流,阶段结束后按逻辑编号汇合结果。

完整 CREST 搜索并行
图 4. 三次实测的中位数与全范围;计时范围见正文。

乙醇在 8 路并发下由 27.52 s 降至 6.77 s(4.07×);正丁烷在 8 路下由 70.18 s 降至 14.15 s(4.96×);正己烷在 10 路下由 244.88 s 降至 44.98 s(5.44×)。耗时为三次重复的中位数,包含完整搜索与结果处理。

每个分子的 15 次浏览器搜索均产生逐字节一致的完整构象 XYZ,并保留相同调用数与实际种子序列。45 次搜索累计执行 690,735 次搜索阶段 GFN2 能量/梯度调用。并行收益来自相同计算工作的并发执行。原生对照使用 CREST 3.0.2、匹配随机流与 1 线程,保留原 SCC 缓存链;浏览器各并发使用同一独立轨迹协议。图 4 中原生耗时供实现对照,加速比由浏览器各并发之间计算。

候选集合与原生复算

乙醇、正丁烷与正己烷的浏览器搜索分别输出 3、2、26 个 CREGEN 候选。与原生搜索的最低电子能量差分别为 1.00 × 10⁻⁸、2.80 × 10⁻⁷、2.70 × 10⁻⁷ Ha。图 5按各端最低能量归零,显示完整候选集合的相对电子能量。

图 5. 候选构象集合

乙醇 · 相对电子能量 / kJ/mol
候选原生浏览器
10.0000.000
26.4906.490
310.40310.392
正丁烷 · 相对电子能量 / kJ/mol
候选原生浏览器
10.0000.000
22.4952.495
310.737
正己烷 · 相对电子能量 / kJ/mol
候选原生浏览器
10.0000.000
22.3012.297
32.3952.396
44.5324.535
54.5904.579
64.7364.686
74.8024.736
85.1344.776
97.0575.129
107.0755.168
117.1377.055
127.2047.063
139.7547.100
149.8977.137
1511.1458.237
1611.4609.756
1711.8379.896
1812.29011.328
1918.35111.489
2011.503
2111.832
2211.847
2311.872
2412.268
2518.352
2619.665

全部 31 个浏览器候选均由原生 tblite 在相同坐标上独立复算,最大能量差为 5.137 × 10⁻⁹ Ha,候选最大力不超过 0.01781 eV Å⁻¹。动力学采样对电子状态延续和微小数值差异敏感,两端的候选集合有所不同;各浏览器并发配置的完整集合保持一致。

资源与计时边界

独立轨迹 Worker 各自持有科学运行状态,支持多核执行并增加内存需求。8–10 路 CREST 的 Chrome 进程树 RSS 约为 4.7–5.7 GiB,适合结合设备内存选择计算并发。浏览器数值为 250 ms 采样的进程树 RSS 总和,原生数值为单个进程峰值;两者统计范围分别列示。

资源与计时边界
图 6. 三次实测的中位数与全范围;计时范围见正文。

计时在引擎资源预载后开始,每次新建主 Worker 与子池。GFN2 计算区间包含 ASE、电子性质与首次子池启动,完整任务另含 RDKit 和主计算模块准备。初始化单独记录,去重预载资源为 169.3 MiB;CSV 同时提供 CPU 秒、内存和主机负载。

Revision 2:编译与电子计算优化

版本比较条件

两版采用相同科学参数、随机序列、数值精度及结果比较准则。完整任务包括构象搜索、结果校验与最终构象的性质复算;逐次测量保留对应版本与计算环境。

三版本完整任务比较

三版本比较采用原生单线程与两版十子 Worker 浏览器路径。每组 n=3n=3,图 7 中为中位数和最小至最大值;原生与 Revision 1 使用 10 月 8 日记录,Revision 2 使用 10 月 9 日记录。R2 的乙醇、正丁烷和正己烷中位数为 4.99、8.76、24.53 s,较 R1 降低 27.3 %、40.2 %、45.5 %。

图 2 · 三版本完整 quick 任务耗时
图 7. 每组 n=3n=3,柱高为中位数,误差棒表示最小值至最大值。原生实现与 Revision 1 为 10 月 8 日参照数据,Revision 2 为 10 月 9 日测量数据;两版浏览器实现均使用十个子 Worker。
表 4. 三版本完整任务耗时
分子原子数原生实现 / sRevision 1 / sRevision 2 / s较 R1 降幅R1/R2
乙醇97.87786.85814.985927.3 %1.38×
正丁烷1421.000914.63158.756840.2 %1.67×
正己烷2068.970844.980724.525445.5 %1.83×

R1/R2 中位耗时比依次为 1.38、1.67、1.83;原生/R2 比依次为 1.58、2.40、2.81。浏览器两版具有相同任务边界和采样协议;原生参照描述另一执行路径的完整墙钟时间。

原生计时覆盖进程启动至完整搜索文件输出;浏览器计时在资源和父 Worker 就绪后开始,覆盖搜索、结果校验及最多十个构象的性质复算。原生采用 SCC 状态缓存链,浏览器采用阶段入口电子态初始化的独立轨迹协议。[8, 3, 4] 各端候选集合按实际输出保存。

这些耗时比是该设备、版本与三个输入的样本统计量。每组极差描述三次观测的离散程度;估计跨设备性能或统计置信区间时,应另行设计重复测量并固定任务边界。

子任务性能对照

正己烷分子动力学与构象优化子任务在单实例 Node 环境中进行预热后交错测量。三个版本的 MD 各测两次,构象优化各测八次;最终版本相对基线的中位耗时分别降低约 11.7 % 和 9.0 %,数值结果和电子态逐位一致。子任务与完整搜索采用各自的计时边界。

图 3 · 积分优化的子任务性能比较
图 8. 正己烷子任务在 Node 单实例环境中预热后交错执行。MD 每版 n=2n=2,构象优化每版 n=8n=8;耗时以对应基线内核的中位数归一化,误差棒表示最小值至最大值。

数值与运行验证

九次完整浏览器任务均正常终止。与 Revision 1 对应结果比较,起始几何、完整构象 XYZ 文件、随机种子序列、E/G 调用次数,以及保留构象的全精度坐标和电子性质均一致。乙醇、正丁烷和正己烷的 E/G 调用次数分别保持为 10,593、13,071 和 22,385。原生同坐标验证沿用 Revision 1 的候选构象证据,并核对了新版结果与对应坐标、能量和性质的一致性。

局部积分验证分别覆盖值积分与梯度积分各 25 组 s 至 g 壳层组合,最大绝对差为 2.78×10−162.78\times 10^{-16} 和 7.77×10−167.77\times 10^{-16},均低于 10−1210^{-12} 的分量容差。正丁烷、正己烷和咖啡因还用于冷启动、状态复用、几何更新、性质请求及电子态恢复验证,共覆盖每个体系七个阶段。咖啡因仅作为内核数值控制体系,CREST 并行测量范围仍为前三个测试体系。

真实运行记录绑定具体内核、任务资产与数值控制,任务生命周期见公共执行说明。

表 5. 数值一致性验证
验证项目范围结果
完整任务3 分子 × 3 次输入、XYZ、种子、调用、保留坐标与性质完全一致
值积分 / 梯度积分各 25 个壳层对最大差 2.78×10−162.78\times 10^{-16} / 7.77×10−167.77\times 10^{-16}
电子态切换3 分子 × 7 阶段E/G、波函数、所请求性质逐位一致
原生同坐标验证Revision 1 候选构象及新版实际任务原有容差下通过;坐标与性质对应一致

浏览器任务的执行与调度

每次计算保存输入、版本、执行配置与结果,支持进度查看、取消、保存和恢复。性能比较分别报告预热短任务、新建计算实例的完整搜索、单实例子任务与原生进程结果。

任务耗时包含数值计算、进度处理与结果回传。各文章明确初始化范围、输入、重复次数和输出一致性,复测采用相同的计时入口与停止条件。

数据与复现

Revision 1 的公开原始记录包含 354 次执行,Revision 2 包含 9 次完整任务和 18 条原生/R1 参照。各轮 raw-results.json.gzip、summary.csv、候选复算与来源记录可用于复现性能汇总和保存输出的一致性比较。按相同分子、版本、并发和重复编号分组,排除记录中标明的初始化或预热区间,重新计算中位数、最小值、最大值及 R1/R2 耗时比。

计算重跑采用记录中的显式含氢坐标、GFN2/ASE/CREST 版本、quick 协议、随机流和数值条件。性能复测同时固定硬件、线程/Worker 配置与计时边界。后续咖啡因研究见GFN2/CREST 咖啡因研究。

Measured data / 实测数据

分子AtomsTaskRuntimeConcurrencyMedian / sMin / sMax / sn
乙醇9singlepointbrowser10.01660000.01590000.01840003
乙醇9singlepointnative10.004062540.003892920.01206353
乙醇9singlepointbrowser20.1805000.1800000.1871003
乙醇9singlepointnative20.009315710.009193710.01083993
乙醇9singlepointbrowser40.2287000.2257000.2333003
乙醇9singlepointnative40.01316910.01296790.01392203
乙醇9singlepointbrowser80.3786000.3448000.5013003
乙醇9singlepointnative80.03470370.02995110.03814723
乙醇9singlepointbrowser100.4616000.4028000.4668003
乙醇9singlepointnative100.04190150.04163570.04230433
乙醇9optimizebrowser10.08970000.08860000.09240003
乙醇9optimizenative10.01851220.01839670.01919013
乙醇9optimizebrowser20.2680000.2666000.2831003
乙醇9optimizenative20.04104160.03976850.04109633
乙醇9optimizebrowser40.3261000.3229000.3264003
乙醇9optimizenative40.05758470.05587260.05771823
乙醇9optimizebrowser80.5160000.4506000.5171003
乙醇9optimizenative80.1386710.1282990.1434353
乙醇9optimizebrowser100.5134000.4829000.5914003
乙醇9optimizenative100.1568430.1455350.1627253
阿司匹林21singlepointbrowser10.08800000.08540000.09120003
阿司匹林21singlepointnative10.02116990.02113140.02335383
阿司匹林21singlepointbrowser20.2509000.2448000.2512003
阿司匹林21singlepointnative20.03580310.03529990.03651883
阿司匹林21singlepointbrowser40.2870000.2851000.2927003
阿司匹林21singlepointnative40.04484930.04435730.04607353
阿司匹林21singlepointbrowser80.4003000.3613000.4336003
阿司匹林21singlepointnative80.09787200.09014980.1213053
阿司匹林21singlepointbrowser100.5178000.4574000.5209003
阿司匹林21singlepointnative100.1145840.1094680.1156583
阿司匹林21optimizebrowser11.226501.209601.256403
阿司匹林21optimizenative10.4084080.4064330.4103203
阿司匹林21optimizebrowser21.344201.333701.363903
阿司匹林21optimizenative20.5885680.5762320.5899913
阿司匹林21optimizebrowser41.268701.267601.277903
阿司匹林21optimizenative40.7079840.7039190.7088683
阿司匹林21optimizebrowser81.594601.365701.690703
阿司匹林21optimizenative81.460991.300081.526283
阿司匹林21optimizebrowser101.425601.380801.610203
阿司匹林21optimizenative101.686291.677991.815293
咖啡因24singlepointbrowser10.1017000.09970000.1021003
咖啡因24singlepointnative10.02499240.02485120.02537233
咖啡因24singlepointbrowser20.2615000.2531000.2633003
咖啡因24singlepointnative20.03982660.03937770.04117873
咖啡因24singlepointbrowser40.3036000.2993000.3071003
咖啡因24singlepointnative40.04971230.04912030.05237783
咖啡因24singlepointbrowser80.4774000.4407000.6225003
咖啡因24singlepointnative80.1128620.1060740.1526653
咖啡因24singlepointbrowser100.5158000.5077000.5657003
咖啡因24singlepointnative100.1289880.1237300.1676803
咖啡因24optimizebrowser10.4142000.4126000.4182003
咖啡因24optimizenative10.1299000.1277880.1336913
咖啡因24optimizebrowser20.5598000.5436000.5602003
咖啡因24optimizenative20.1814400.1778480.1865203
咖啡因24optimizebrowser40.5851000.5756000.5913003
咖啡因24optimizenative40.2278180.2171570.2394503
咖啡因24optimizebrowser80.7820000.7031000.8333003
咖啡因24optimizenative80.4240570.4143370.4390403
咖啡因24optimizebrowser100.8054000.7806000.9530003
咖啡因24optimizenative100.5244720.5126240.5472903
n-Eicosane62singlepointbrowser10.2178000.2177000.2182003
n-Eicosane62singlepointnative10.06406840.06342690.06557943
n-Eicosane62singlepointbrowser20.4013000.3867000.4057003
n-Eicosane62singlepointnative20.07883480.07594670.08174173
n-Eicosane62singlepointbrowser40.4211000.4206000.4422003
n-Eicosane62singlepointnative40.08660570.08152160.09006123
n-Eicosane62singlepointbrowser80.6221000.5795000.7465003
n-Eicosane62singlepointnative80.1763690.1480650.1784203
n-Eicosane62singlepointbrowser100.6646000.6140000.6931003
n-Eicosane62singlepointnative100.1876780.1840580.1886493
n-Eicosane62optimizebrowser10.7041000.7018000.7121003
n-Eicosane62optimizenative10.2196570.2185240.2216173
n-Eicosane62optimizebrowser20.8488000.8466000.8561003
n-Eicosane62optimizenative20.2446940.2438840.2447013
n-Eicosane62optimizebrowser40.8483000.8476000.8608003
n-Eicosane62optimizenative40.2507670.2466480.2546393
n-Eicosane62optimizebrowser80.9829000.9688001.056503
n-Eicosane62optimizenative80.4486580.4437090.5917123
n-Eicosane62optimizebrowser101.050601.016801.092203
n-Eicosane62optimizenative100.5351210.5113720.5386923
n-Tetracontane122singlepointbrowser10.7965000.7947000.8000003
n-Tetracontane122singlepointnative10.2388340.2340830.2409743
n-Tetracontane122singlepointbrowser20.9400000.9378000.9434003
n-Tetracontane122singlepointnative20.2514200.2405890.2569053
n-Tetracontane122singlepointbrowser40.9525000.9479000.9539003
n-Tetracontane122singlepointnative40.2583450.2542990.2638263
n-Tetracontane122singlepointbrowser81.103101.033101.138003
n-Tetracontane122singlepointnative80.4406650.4330450.6695203
n-Tetracontane122singlepointbrowser101.154601.100001.175603
n-Tetracontane122singlepointnative100.5363510.4736870.5375173
n-Tetracontane122optimizebrowser16.038106.017306.061003
n-Tetracontane122optimizenative11.760451.750521.773733
n-Tetracontane122optimizebrowser25.735905.731205.764403
n-Tetracontane122optimizenative21.723471.668001.748493
n-Tetracontane122optimizebrowser45.475205.449505.517703
n-Tetracontane122optimizenative41.618371.583771.684693
n-Tetracontane122optimizebrowser85.625905.612505.680403
n-Tetracontane122optimizenative82.535762.450263.049613
n-Tetracontane122optimizebrowser105.563205.506005.723803
n-Tetracontane122optimizenative102.712472.533843.432943
乙醇9搜索browser127.524226.943129.98453
乙醇9搜索browser214.597214.474416.12483
乙醇9搜索browser49.653509.5538010.44633
乙醇9搜索browser86.766906.754108.419003
乙醇9搜索browser106.858106.711708.142903
乙醇9搜索native17.877777.682498.171933
n-Butane14搜索browser170.178768.459273.52833
n-Butane14搜索browser236.387335.990537.96843
n-Butane14搜索browser422.237521.918424.20613
n-Butane14搜索browser814.152613.903415.33683
n-Butane14搜索browser1014.631513.746114.90493
n-Butane14搜索native121.000919.886822.92143
n-Hexane20搜索browser1244.884232.582245.9523
n-Hexane20搜索browser2124.672121.479125.6153
n-Hexane20搜索browser474.745672.039075.03423
n-Hexane20搜索browser847.302145.723847.94423
n-Hexane20搜索browser1044.980744.125753.31683
n-Hexane20搜索native168.970866.890170.70753

GFN2: original ASE and electronic computation; CREST: complete search, validation and browser property recomputation. Initialization and download excluded.

Data and sources

  1. C. Bannwarth, S. Ehlert, S. Grimme. GFN2-xTB—An Accurate and Broadly Parametrized Self-Consistent Tight-Binding Quantum Chemical Method with Multipole Electrostatics and Density-Dependent Dispersion Contributions. Journal of Chemical Theory and Computation 15, 1652–1671 (2019). doi:10.1021/acs.jctc.8b01176
  2. P. Pracht et al. CREST—A program for the exploration of low-energy molecular chemical space. The Journal of Chemical Physics 160, 114110 (2024). doi:10.1063/5.0197592
  3. CREST · iMTD-GC workflow
  4. CREST · search keywords and presets
  5. tblite · original ASE integration
  6. ASE · BFGS optimization
  7. CREST 3.0.2 source
  8. LLVM · noalias parameter attribute and strict floating-point semantics