写在前面
最近有个合作课题,需要组装基因组,拿到的是三代测序数据。问了一圈,用Flye
。于是就看了看Flye
的文章。基于该文稿的说法,反正就是好,比谁到好,而且还快。上传测序数据到服务器,速度感人,接近1T
的测序数据,上传速度不到5Mb/s
。既然如此,我就想着,或许本地也可以组装组装看看。
于是呢,我鼓捣鼓捣,搞了一个**可以在Windows下直接运行的 Flye **(非WSL),然后就有了(算了懒得折腾)。
Windows操作系统下直接使用
改吧改吧,编译完了(其实其中还是不少坑的,包括cpp源码和python脚本的一些代码)。最终,整个windows下可以直接运行的 flye package 其实就两个文件夹,总大小 90Mb。一个 bin 目录,主要包含四个文件,flye本身是一个简单的python脚本,另外三个二进制程序,前两个其实就是samtools 和 minimap2。

另外是一个 flye 目录(一堆python脚本,好像这个就叫做python的模块)。

整体程序目录如下(E.coli 是40X的Pacbio测序数据,测试用;out_pacbio则是测试输出数据)

可以运行下看看,方便起见,直接用windows的python跑就可以了

运行结果如下
[2021-03-28 17:18:25] INFO: >>>STAGE: finalize
[2021-03-28 17:18:25] INFO: Assembly statistics:
Total length: 4642394
Fragments: 1
Fragments N50: 4642394
Largest frg: 4642394
Scaffolds: 0
Mean coverage: 40
[2021-03-28 17:18:25] INFO: Final assembly: C:\\Users\\CJ\\Desktop\\Flye-Window\\assembly.fasta
原本是想打个 TBtools 插件,不过觉得也没啥必要,毕竟能用得上的人也不多。我跑了一下示例数据 ,大肠杆菌的基因组 PacBio 测序 40X,测序文件大小大概是 200+Mb,大肠杆菌基因组是 4.6Mb+。 组装的时候,内存占用峰值达到 9 Gb。尽管目前 16Gb 内存是电脑标配,但感觉很少人组装小基因组。所以也没有打成插件的必要。
按照这个比值,那么常见园艺作物,大概500Mb的基因组,那不是大概要 1Tb 的内存吗?不过看了下官网

似乎大概 500Gb 内存估计搞500Mb的基因组?后面鼓捣鼓捣估计才有答案。
写在最后
咋说呢.... 我不太清楚 WSL 是否可以运行 Flye。尽管按理说是没啥问题。不过我也懒得折腾的。可以直接在windows下跑的,往往才是最方便的。如果哪天要打成 TBtools 插件。也没啥问题。
网友评论