专栏首页生信修炼手册Gerbil:支持GPU加速的kmer count工具

Gerbil:支持GPU加速的kmer count工具

欢迎关注"生信修炼手册"!

对于基因组组装而言,kmer count是最基础的分析内容之一,传统的kmer count工具在kmer长度小于32时,有着较好的性能,但是对于较大长度的kmer, 内存消耗和运行速度都差强人意。随着测序读长的不断增加,一款能够支持较大kmer的计数,而且性能良好的工具就显得非常的有必要。

Gerbil就是这样的一款工具,除了在算法上进行优化外,还引入了GPU加速,进一步加强其性能,对应文献链接如下

https://almob.biomedcentral.com/articles/10.1186/s13015-017-0097-9

在文献中列举出了以下几款kmer count工具

  1. Jellyfish
  2. BFCounter
  3. DSK
  4. KMC
  5. Turtle
  6. MSPKmerCounter
  7. KCMBT

这些工具对于长度大于32的kmer, 性能都没有Gerbil好。对于hg38基因组,各个软件的运行速度比较如下

随着kmer长度的增加,Gerbil 的运行时间始终是最快的,其中的gGerbil代表GPU加速版的Gerbil。

软件的github链接如下

https://github.com/uni-halle/gerbil

安装过程如下

git clone https://github.com/uni-halle/gerbil.git
cd gerbil
mkdir build
cd build
cmake ..
make

基本用法如下

gerbil -k 32 input.fasta temp_dir output_dir

-k参数指定kmer的长度,input.fasta代表输入序列文件,temp_dir代表临时文件的目录,output_dir代表输出文件的目录。 和jellysifh不同,Gerbil支持多种输入文件格式

  1. fastq/fasta
  2. fastq.gz/fasta.gz
  3. fastq.bz2/fasta.bz2
  4. stdin
  5. txt

支持fastq和fasta两种格式,也支持gzip和bzip两种压缩格式,还可以从标准输入流读取文件,甚至可以是一个txt文件,每一行是一个文件路径,这样就可以,一次处理多个输入文件。

软件的输出文件是二进制文件,可以通过toFasta命令转换为纯文本格式。

更多参数和用法参考github上的说明文档。

本文分享自微信公众号 - 生信修炼手册(shengxinxiulian),作者:lzyg

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-07-29

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • velvet软件进行基因组组装

    默认情况下,velvet支持的kmer最大长度为31bp, 如果想要只会更大长度的kmer,在编译时需要设置MAXKMERLENGTH的值。编译完成后,会生成如...

    生信修炼手册
  • 使用FastQTL进行cis-eQTL分析

    FastQTL是一款专门用于cis-eQTL分析的软件,在GTEx项目中就是采用该软件进行cis-eQTL的分析,对应的文章发表在Bioinformatics杂...

    生信修炼手册
  • FANTOM5:人类增强子数据库

    是一项国际性的研究项目,创建于2000年,最初的目的是对小鼠全长cDNA序列进行功能注释。随着不断发展,研究的内容在也在转录组学层面不断拓展。

    生信修炼手册
  • spring service层单元测试

    service层测试较简单,目前大多数测试主要是针对public方法进行的。依据测试方法划分,可以分为两种:基于mock的隔离测试和基于dbunit的普通测试。...

    YGingko
  • HttpClient 发送Json

    shengjk1
  • Selenium 4 Java的最佳测试框架

    几十年来,Java一直是开发应用程序服务器端的首选编程语言。尽管JUnit一直在与开发人员一起帮助他们进行自动化的单元测试,但随着时间的推移和测试行业的发展,特...

    八音弦
  • 发布maven项目到中央仓库

    用maven已经一段时间,有一些通用的可以开源的代码想放到公网的仓库中,以便可以随时使用。 注册Sonatype OSSRH 1:注册一个JIRA账号:http...

    似水的流年
  • js中数组的sort()方法排序

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    bering
  • sbt 支持打包Java程序

    最开始用sbt+scala,后来有了scala和Java混合使用的需求,之前在sbt项目下写Java程序,用idea和eclipse运行没问题,但是打包报错,所...

    董可伦
  • Angular2打包遇到的问题与解决方法(二)

    http://www.jianshu.com/p/8943ff86349a 之前这篇是说了路径的问题 这次是说准备部署时的打包 首先还是基于这个 ng ...

    Tuzei

扫码关注云+社区

领取腾讯云代金券