三代测序(长读长)基因组装服务器怎么配?官方 benchmark 表里,内存从 2GB 到 699GB

直接回答:三代(长读长)基因组组装这条路线不吃显卡,第一配置项是内存,第二是存储,CPU 核数决定”多久跑完”。 这一点有官方实测数据直接支撑——Flye 官方 benchmark 表里,同一款软件的内存跨度是 2GB(大肠杆菌)到 662GB(羊肠道宏基因组),hifiasm 官方表里是 68GB(玉米)到 699GB(红杉)。内存不是”配多少合适”的问题,而是”配少了根本跑不完”的问题。

这个方向我们见过两个典型的误配:

  • 按”深度学习任务”配成多卡 GPU 服务器——组装、纠错、比对全是 CPU + 内存 + IO 型工作,一张卡也用不上;
  • 内存按”基因组大小 × 固定系数”估——这是官方数据明确否定的做法:hifiasm 官方表里 草莓(0.8Gb 基因组)需要 91GB 内存,而玉米(2.2Gb 基因组)只需要 68GB。同样的”预估系数”在这里直接失效。

三句话先记住:

  • 内存看”数据量与测序类型”,不看”基因组大小”——同是人类,HiFi 30x 约 141GB、ONT 120x 约 450GB(Flye 官方表);
  • 测序类型决定档位:HiFi(高准确度长读)在内存与耗时上都明显更友好,ONT 超长读更吃资源;
  • 存储要按”多套中间产物”算:纠错后的读段文件、overlap 文件、组装图、多版 FASTA,都是 GB–TB 级,且不能中途删。

一、五类工具一张表:硬件画像

工具 在流程里的位置 GPU CPU 内存 存储 最该注意的
Flye(含 metaFlye) 三代读段从头组装(细菌—人类—宏基因组) 不需要 高(官方 CPU time 最高 4,000 小时) 极高 ★ 第一变量(官方 2GB–662GB) 极高(输入数据 + 组装图 + 抛光产物) 宏基因组模式内存由输入数据量决定
hifiasm HiFi 数据的从头组装(组装质量口碑最好之一) 不需要 高(并行效率好,但不是第一瓶颈) 极高 ★ 第一变量(官方 68GB–699GB) 极高(.ec.bin + 两个 overlap 文件 + 多套 FASTA/GFA) 不能用基因组大小×系数估内存
NextDenovo 长读纠错 + 组装(内置 minimap2 做重叠) 不需要 高(核数按官方公式切分) 极高(按输入总碱位数算) 高(可用参数压缩中间结果) 官方点名瓶颈是 minimap2 与 IO → 建议上 SSD
Canu 老牌长读组装(纠错/修剪/组装三阶段) 不需要 高 高 高(断点续跑依赖中间目录,别乱清) ⚠️ 官方已宣布停止维护,新项目不建议作为主选
minimap2 长读比对 / 纠错 / 组装的地基工具 不需要 高 ★(-t 线程直接提速) 中—高(默认一批至多载入 8G 碱基建索引) 中(索引 + 输出 + 临时文件) 内存不够用 --split-prefix(更慢、要临时盘)

一句话概括:“GPU”这一列全是”不需要”。这类任务里真正的钱花在 内存容量、本地盘容量与速度上。

二、Flye:官方 benchmark 表就是最好的”配置对照表”

Flye 官方 README 有一张逐数据集的 benchmark 表(含官方实测 RAM),这是本方向最值得直接引用的资料:

基因组 数据 组装大小 CPU 时间 官方 RAM
E.coli PB 50x 4.6 Mb 2 h 2 GB
C.elegans PB 40x 107 Mb 100 h 31 GB
A.thaliana PB 75x 120 Mb 100 h 59 GB
D.melanogaster ONT 30x 136 Mb 130 h 33 GB
D.melanogaster PB 120x 141 Mb 150 h 70 GB
Human CHM13 PB HiFi 30x 3.0 Gb 780 h 141 GB
Human NA12878 ONT 35x 2.8 Gb 3100 h 394 GB
Human CHM13 ONT 120x 2.9 Gb 4000 h 450 GB
Sheep gut HiFi(宏基因组) 输入 255 GB 4.2 Gb 3500 h 662 GB
Zymo Even(宏基因组) 输入 14 GB 65 Mb 60 h 129 GB

表注(官方原文):CHM13 T2T、CHM1、HG002 三组使用了 --asm-coverage 50;表中 NG50 为 contigs 口径。

从这张表读出三条采购规则(我们的解读,不是官方表述):

  • 同物种、不同测序类型,内存差约 3 倍——人类 CHM13:HiFi 30x → 141GB vs ONT 120x → 450GB。预算允许时,HiFi 数据在内存与耗时上都更友好(覆盖度更低也能拼出更好的 NG50)。
  • 覆盖度是内存的独立放大器——同一物种 ONT 35x(394GB)vs ONT 120x(450GB)。提高覆盖度不仅增加数据量,也抬高内存,所以不能只按”原始数据文件大小”估内存。
  • ★ 宏基因组组装的内存由”输入数据量”决定,与物种基因组大小无关——羊肠道 HiFi 输入 255GB → 峰值 662GB,而组装产物只有 4.2Gb。客户常说”微生物基因组很小”,但这类任务的内存看的是测序数据量。

三、hifiasm:官方 RAM 表 + 三条”不能这么估”的红线

hifiasm 的官方 README 同样给了逐数据集实测表(v0.12,primary assemblies):

数据集 基因组大小 覆盖度 官方参数 墙钟时间 官方 RAM N50
Maize(B73) 2.2 Gb ×22 -t48 -l0 5.1 h 68 GB 36.7 Mb
Mouse(C57/BL6J) 2.6 Gb ×25 -t48 -l0 4.8 h 76 GB 21.1 Mb
Strawberry 0.8 Gb ×36 -t48 -D10 3.7 h 91 GB 17.8 Mb
Human(CHM13) 3.1 Gb ×32 -t48 -l0 8.2 h 114 GB 88.9 Mb
Human(HG002) 3.1 Gb ×36 -t48 7.7 h 137 GB 98.7 Mb
Frog 9.5 Gb ×29 -t48 69.0 h 463 GB 9.3 Mb
Redwood(红杉) 35.6 Gb ×28 -t80 65.5 h 699 GB 5.4 Mb

请特别注意两行的对比:草莓 0.8Gb 需要 91GB,玉米 2.2Gb 只需要 68GB。这就是为什么下面这三条红线必须写进方案,避免客户按”经验系数”报错配置:

⛔ 不能这么做 为什么(官方数据)
用”基因组大小 × 固定系数”推算内存 官方表里内存与基因组大小非单调(草莓 0.8Gb 需 91GB > 玉米 2.2Gb 需 68GB),受覆盖度、杂合度与参数(-l0/-D10)影响
把”人类约 114GB”当成通用值 那是 3.1Gb 二倍体 + ×32 覆盖 + -t48 -l0 的组合结果;换物种、换覆盖度就不成立
把官方表的 RAM 当成”峰值保证” 官方口径是该次运行的观测值;客户数据的杂合度/重复序列比例不同会导致差异 → 交付前必须用客户真实数据实测

另外两条可以直接答复客户的性能特征:

  • hifiasm 的并行效率很好:官方表里 CPU time 172.9–3890.3 小时、而 -t48 时墙钟只要 4.8–8.2 小时——核数的意义是”把很长的总计算量压进一夜”,而不是决定能否跑完;
  • 官方口径是”在单机上跑”(*”on a single machine”*),属于典型单机大内存任务。官方未给磁盘占用数值 → 存储按”原始长读数据 × 2–3 倍(含 .ec.bin、overlap 文件、GFA/FASTA 多套产物)+ 归档”预留(我们的工程口径,非官方)。

四、NextDenovo:官方直接给了”内存怎么分”的公式

NextDenovo 是少见的官方把资源配置公式写在 FAQ 里的软件(原文:*”How to optimize parallel computing parameters?”*):

*”Each parallel_jobs subtask (including minimap2_options_raw and minimap2_options_cns) requires 32~64 gb RAM depending on the max read length.”*

*”each pa_correction subtask (including correction_options) requires ~TOTAL_INPUT_BASES/4 bytes RAM.”*

翻译成配置语言:内存按”输入总碱基数”分配(校正子任务约需”总碱基数 ÷ 4 字节”),不是按基因组大小分配。官方基准配置文件里的实际数值更能说明问题:

数据集 基因组 官方 cfg 关键行 折算内存
人 CHM13(120X ONT) 3.1 Gb sort_options = -m 150g -t 30 排序一步就要 150GB
拟南芥 F1(192X CLR) 120 Mb sort_options = -m 50g -t 35 50GB
官方默认模板 1 Gb sort_options = -m 20g -t 15 20GB

这个”120Mb 的拟南芥也要 50GB”的例子,是反驳”基因组小就不用大内存”最有力的一条官方数据。

NextDenovo 还有三条官方点名的运维口径,非常适合写进交付说明:

官方原文 含义
*”Currently, the bottlenecks of NextDenovo are minimap2 and IO.”* 瓶颈是比对和磁盘 IO,不是内存带宽也不是显卡
*”Use usetempdir will reduce IO wait, especially if usetempdir is on a SSD driver.”* 官方唯一直接点名的硬件:临时目录放 SSD
*”No need to make any changes, simply run the same command again.”* 断点续跑:长任务被中断,重跑同一条命令即可继续

另外,内存紧张时官方给了 -dbuf(*”reduce ~TOTAL_INPUT_BASES/4 bytes of memory usage”*,代价是速度),提速可用 -fast(*”0.5-1 times faster mode with a little lower accuracy”*)。这是我们推荐”先调参数、后加硬件”的底气来源——省内存和提速的开关官方都给了。

五、minimap2:很多长读流程的地基,内存口径是”一批 8G 碱基”

minimap2 是纠错、比对、组装流程里到处都在用的地基工具。它的官方 man page 给出了一个明确的批量口径:

*”Load at most NUM target bases into RAM for indexing [8G]. If there are more than NUM bases in target.fa, minimap2 needs to read query.fa multiple times to map it against each batch of target sequences.**”*

→ 默认一次把至多 8G(80 亿)碱基的目标序列载入内存建索引。人类基因组(约 3.1Gb)落在默认单批次内,所以多数动植物项目用默认档即可。

内存不够时官方给了三条路(都写明了代价):

手段 官方说法 代价
加大批次 -I8g *”This is preferred if your machine has enough memory.”* 需要更多内存
--split-prefix *”uses less memory, but it is slower and requires temporary disk space.”* 更慢 + 需要临时磁盘
--idx-no-seq *”It saves disk space and memory”* 索引不能用于 -a/-c(不做碱基级比对)

还有一条并发提醒:minimap2 是”一个进程一份索引”,多人同时跑时内存要按进程数累加——这是”单跑没事、三个人一起跑就 OOM”的典型原因。

六、Canu:能力还在,但官方已停止维护

Canu 是老牌长读组装工具,官方口径里也有优点:自动探测资源并自适应(*”auto-detect computational resources and scale itself to fit”*)、可用 maxMemory/maxThreads 限制、支持断点续跑、支持 LSF/PBS/Slurm/SGE 等集群调度、真核推荐覆盖度 30X–60X。

但必须对客户说明一条:官方已宣布停止维护(EOL)。所以我们的建议是:

  • 新项目不要把它作为主选(用 Flye / hifiasm / NextDenovo 覆盖大多数场景);
  • 如果课题组已有历史流程依赖 Canu,方案里要明确写”该工具官方已停止维护”,并预留后续迁移;
  • 若继续用,注意官方提醒:*”For best results, do not change Canu parameters between restarts“*(续跑时不要改参数),且中间目录不要清理——续跑靠的就是那个目录。

七、内存与存储怎么估:先定”测序类型 + 覆盖度 + 数据量”

报配置前的三个必问项(按重要度排序):

# 问什么 为什么 怎么用
1 测序平台与读长类型:HiFi / ONT / CLR(旧 PacBio) 同物种不同读型的内存差约 3 倍(Flye 官方:人类 HiFi 30x 141GB vs ONT 120x 450GB) 直接决定内存档位
2 基因组大小与倍性:0.1Gb 级细菌真菌 / 1–3Gb 常见动植物 / 9Gb+ 两栖林木 官方表覆盖到 35.6Gb(红杉 → 699GB) 9Gb 以上要按”数百 GB 级内存”规划,并核对主板单条容量与插槽数
3 覆盖度与总数据量(多少 GB / 多少个样本) 覆盖度是内存的独立放大器;宏基因组/多组混样时内存按数据量走 不许用”基因组大小 × 系数”(官方数据已否定)

存储按四份算(这是我们的工程口径,官方未给数值):

  • 原始长读数据(不可删,是交付凭据);
  • 中间产物:纠错后的读段(hifiasm 的 .ec.bin)、overlap 文件 —— 通常是原始数据的 1–3 倍;
  • 组装产物多套:不同参数/版本的 GFA 与 FASTA、抛光后结果;
  • 归档:项目结束后的冷数据(建议单独一层)。

再乘一个”并发系数”:同一台机器上多个样本/多个人同时跑,内存要按峰值任务数累加,磁盘要按”同时在跑的项目数”累加。这条做不好,就是典型的”别人一跑,我这边的任务就被 kill”。

八、按规模分档(可直接对照预算看)

场景 内存 CPU 存储 备注
细菌/真菌基因组(≤0.1Gb),HiFi 或 ONT 64–128GB 16–32 核 4–8TB(含 NVMe 热区) 官方表无此量级数据 → 以实测为准;这一档往往是”跑得动且不贵”的典型
0.8–3.1Gb 常见动植物(拟南芥/玉米/猪牛/人类级) 128–256GB(官方表对应 68–137GB,留并发与系统余量) 32–64 核(hiFiasm -t48 是官方常用档) 8–16TB + 独立 work 盘 覆盖度 ×30 左右是最常见口径
9.5Gb 级(蛙、部分两栖/林木) ≥512GB 64 核以上 16TB 以上 对应官方 Frog 463GB
超大基因组 / 大宏基因组(35Gb 级针叶、多倍体;或输入数百 GB 的 meta) 768GB–1TB 64–128 核 共享存储 + 分层归档 对应官方红杉 699GB、羊肠道 meta 662GB;先核对主板容量与插槽

三条判断口径:

  • 先定”内存档位”,再选 CPU 核数与平台——本方向是”内存决定能不能跑完,核数决定跑多久”;
  • 存储不要只按原始数据算——中间产物与多套组装产物往往比原始数据更大;
  • 要 GPU 只有一个理由:课题组另有深度学习/结构预测类任务,与组装本身无关。

九、五句可以直接写进方案的结论

  • 三代长读组装不上显卡——Flye / hifiasm / NextDenovo / minimap2 都是 CPU 多线程程序;
  • 内存是第一变量,且必须”一单一估”:官方实测跨度 2GB(大肠杆菌)– 699GB(红杉)、宏基因组模式还有 662GB 的案例;
  • 不能用”基因组大小 × 固定系数”估内存:官方表里草莓 0.8Gb 需 91GB、玉米 2.2Gb 只需 68GB,非单调;
  • HiFi 比 ONT 更省内存(同物种约差 3 倍)——客户选测序策略时,这条直接影响服务器预算;
  • 存储按”原始数据 + 中间产物 + 多套产物 + 归档”四层规划,并把临时目录放在 SSD/NVMe(NextDenovo 官方唯一点名的硬件)。

常见问题

三代测序组装要不要配显卡?

不需要。 Flye、hifiasm、NextDenovo、minimap2 的官方资料里都没有把 GPU 作为运行条件——它们靠 CPU 多线程 + 大内存 + 快速磁盘完成纠错、重叠检测与组装。只有当课题组同时还要跑深度学习类任务(如结构预测、序列大模型)时,显卡才有意义;如果预算有限而需求只有组装,把钱从显卡移到内存和 NVMe 上,收益大得多。

组装一个人类基因组,内存要配多少?

看测序类型。Flye 官方 benchmark:HiFi 30x → 141GB、ONT 120x → 450GB;hifiasm 官方表:人类 ×32/×36 → 114–137GB。所以常见口径是”内存 ≥512GB 级别可以把人类级大项目做得很从容,256GB 是 HiFi 路线的最低实用档”(这是我们的工程口径,官方表给的是单次运行观测值,不是峰值保证)。最终定档前必须用客户自己的数据实测一次。

客户说”我这是细菌基因组,是不是不用配大机器”?

多数情况下是的,但要注意两点:① 官方没有细菌量级的 benchmark,所以不能拿官方人类数据外推,应该用客户真实数据测一次峰值内存;② 如果是”宏基因组”而不是单一细菌基因组,结论完全不同——Flye 官方实测:输入 14GB 的数据就需要 129GB 内存,输入 255GB 就需要 662GB,因为这类任务的内存看输入数据量,不看物种基因组大小。详见宏基因组分析的服务器怎么配。

机器老是跑一半被 kill,是内存不够吗?

大概率是。判断和处理顺序:

  • 看是否多个任务同时跑——minimap2/NextDenovo 这类工具”一个进程一份索引/一份缓冲”,内存会按并发数累加;
  • 内存不足先用官方给的降内存开关,而不是立刻加硬件:NextDenovo 有 -dbuf,MEGAHIT 有 --kmin-1pass,minimap2 有 --split-prefix(代价是更慢、需要临时盘);
  • 长任务请开启/利用断点续跑(NextDenovo 官方:重跑同一条命令即可继续;Canu:不要改参数、不要清中间目录);
  • 确认是”内存真不够”而不是”临时目录写满了磁盘“——这两者症状相似,后者更常见。可参考服务器 CPU 和显卡都跑满了还是很慢,再加一张卡有用吗。

为什么同样的物种,两台机器的内存差这么多还不够用?

因为内存不只看物种大小,还看:① 测序类型(HiFi vs ONT,约差 3 倍);② 覆盖度(同物种 ONT 35x 是 394GB、120x 是 450GB);③ 杂合度与重复序列比例;④ 参数(官方 hifiasm 表里 -l0、-D10 都出现在示例参数里)。所以”同物种照抄配置”是常见错误,正确做法是拿数据实测后回填。

Canu 现在还能用吗?

能用,但不要作为新项目的主选——官方已宣布停止维护。它仍有自适应资源、maxMemory/maxThreads 限制、断点续跑、集群调度等能力,历史项目继续跑没问题;但新项目建议用 Flye / hifiasm / NextDenovo,并注意若沿用 Canu 续跑,官方要求”重启之间不要改参数”、中间目录不能清理。


如果你们正在给课题组或实验室看机器,把 要跑的软件 / 模型、大概几个人用、预算范围 发我一句,我按这个给你一份带参数清单的配置思路——不推销最高配,只帮你把钱花在真正影响出结果的地方。

微信二维码:服务器定制与GPU算力咨询

相关阅读

发表评论

服务与能力  | GPU选型工具  | 交付实拍  | 常见问题  | 产品中心  | 关于我们
✕ 扫码加微信 微信二维码:服务器定制与GPU算力咨询
回复「配置单」
领《高校/实验室 GPU 服务器采购询价清单》
上海皓荃智能科技有限公司|服务器整机定制 · GPU 算力方案 · 机房改造 |可开增值税专用发票|上海及华东地区可上门 服务对象:高校课题组 / 科研院所 / 医院影像与生物信息 / 企业算法团队