惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

S
Secure Thoughts
S
Securelist
P
Proofpoint News Feed
D
DataBreaches.Net
Cisco Talos Blog
Cisco Talos Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
Project Zero
Project Zero
A
About on SuperTechFans
罗磊的独立博客
WordPress大学
WordPress大学
月光博客
月光博客
Latest news
Latest news
C
Cyber Attacks, Cyber Crime and Cyber Security
GbyAI
GbyAI
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
博客园 - 三生石上(FineUI控件)
F
Fortinet All Blogs
W
WeLiveSecurity
Attack and Defense Labs
Attack and Defense Labs
V
Visual Studio Blog
Blog — PlanetScale
Blog — PlanetScale
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
P
Privacy International News Feed
AI
AI
博客园 - 司徒正美
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
Help Net Security
Help Net Security
T
Tor Project blog
V
Vulnerabilities – Threatpost
C
Cisco Blogs
I
Intezer
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
MyScale Blog
MyScale Blog
雷峰网
雷峰网
MongoDB | Blog
MongoDB | Blog
Forbes - Security
Forbes - Security
V
V2EX
Apple Machine Learning Research
Apple Machine Learning Research
T
Threat Research - Cisco Blogs
B
Blog RSS Feed
博客园 - 叶小钗
N
News and Events Feed by Topic
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Simon Willison's Weblog
Simon Willison's Weblog
C
CERT Recently Published Vulnerability Notes
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
N
News and Events Feed by Topic

Wslll

手搓一个ios记账应用:快捷指令、PWA应用、AI分析 一个AnthropicToOpenai的本地运行的API转换脚本(用于ClaudeCode等) 一种针对长篇幅学术文章的特征提取循环翻译模式 开源分享:经过运行验证的自动SNP Calling脚本 wslll blog:基于Python的自托管博客应用 wslll blog的介绍以及2025年不稳定运行的原因 使用SimpleM计算有效检验数量 期刊发布:基于重测序的原始群体和改良群体的遗传多样性研究 使用cloudflare worker转发openai api并设置关键词屏蔽 期刊发布:遗传改良对世界水产养殖业发展的推动作用 你好,世界!
使用glnexus进行joint call的一些经验
wslll · 2025-12-18 · via Wslll

最近在进行一个较大规模群体的变异检测工作,在使用 GATK 完成个体变异检测后,需要进行群体分型,这一步往往非常消耗时间。不管是针对大样本的GenomicsDBImport方案还是传统的 CombineGVCFs 方案,耗时都挺长。通过一番查找,在学校超算集群文档找到了glnexus似乎可以作为加速替代。

简单查阅资料,glnexus (GL, genotype likelihood)用于对大规模 gvcf 进行 joint call,其由DNAnexus公司开发。官方宣称glnexus 可以代替 GATK CombineGVCFs 和 GATK GenotypeGVCFs,且速度要快很多。glnexus 为开源软件,可免费使用。
官网:https://github.com/dnanexus-rnd/GLnexus/

那么在使用glnexus过程中,也遇到一些问题,这里做一个经验分享。

1.glnexus是否适合染色体拆分

最开始为了加快整体的速度,我决定使用染色体拆分的形式进行并行处理,由于我分析的物种有 24 条染色体,受制于服务器性能以及硬盘阵列的 IO,我选择了单次并行 12 条染色体进行分析。结果令人感到意外的是,似乎针对每一条染色体的分析都会从头构建GLnexus.DB,会生成非常多的过程文件,也就是 sst 文件。
按照glnexus的已有 joint call 的速度测试,我的全部 GVCFs 在 2.4T 左右,群体分型应该花费时间在 45-60 小时之间。但是仅第一轮的 12 条染色体并行已经是耗费了超过 72 小时,并且硬盘占用毕竟 50TB。但此时,由于我之前没有使用过glnexus,我并不知道问题出在了哪里。

为了防止硬盘阵列的崩溃(我为自己本次数据分析,从集群中只申请了 54T 的临时硬盘挂载),只能中断任务。并且,通过在 bing 查找资料,并没有找人使用glnexus进行拆分染色体并行的任何信息,此时我意识到可能根本就不能这么用。

于是我采用官网的标准方法直接进行群体分型,成功跑通。最终 sst 文件仅 1.9TB,任务过程中占用运行内存 RAM 峰值仅达到 1TB 左右,运行时间仅 30h+。因此我认为,如果你也要尝试使用glnexus来进行群体分型,建议直接使用默认方式进行。

2.以哪种方式调用软件

根据我的实际使用体验来看,我非常推荐使用 docker 镜像的方式进行glnexus的调用。编译源码还是比较复杂的,而且对于使用 centos 7 的用户,glic 版本的问题会导致编译难度增加,使用 docker 镜像的方式会方便很多。同时也便于进行资源控制。

另外,glnexus运行非常占用 RAM,我的机器运行内存为 1.5TB,全部 GVCFs 总大小 2.4T 的情况下(参考基因组大小约 1G),峰值运存占用能达到 1000G,所以务必提前考虑内存是否能承受其运行。

另外这是来自学校集群的速度测试表格仅供参考

物种 样本数 gvcf.gz 运行队列 耗时 内存 临时空间
水稻 2800 2.8 TB smp(s004) 52 h 680 GB 8 TB
水稻 250 250 GB smp 4.5 h 250 GB -
未知 400 600 GB normal 6 h 310 GB 1.1 TB
棉花 250 800 GB smp 15 h 230 GB 2.3 TB