diamond提速

安装使用

conda install diamond
diamond help

比对nr库

db="/hwfsxx1/ST_HN/P18Z10200N0423/huty/databases/nr_huty/nr.20210705.dmnd"

mkdir 04_geneset/01_diamond/$infile
for i in `ls 03_assembly/$infile`; do
    diamond blastp \
    --db $db \
    --query 03_assembly/$infile/$i/gene/${i}_rename.faa \
    --block-size 15 --index-chunks 1 \
    -e 1e-3 --outfmt 6 --max-target-seqs 1 --threads 32 --quiet \
    --out 04_geneset/01_diamond/$infile/$i
    # --block-size 2, 默认设置下,程序一次处理2G个序列字符,消耗内存12G
done

提速办法

1 增加内存分配
2 增加线程
--threads | -p <int>    default: Max
    设置程序运行所使用的CPU线程数。默认是服务器可用的最大CPU线程数。
3 --block-size | -b <float>    default: 2.0
    设置每次处理多少G的序列字符数。该参数控制程序消耗的内存量,一般内存消耗该值的6倍。设置更大的值,会消耗更多的内存和临时磁盘空间,但能提高性能。默认设置下,程序一次处理2G个序列字符,消耗内存12G。
4 --tmpdir | -t <string>    default: directory of --out
    设置临时文件夹路径。推荐该文件所在剩余磁盘空间有100G及以上。若将该参数设置为/dev/shm,则会将临时文件存放在内存,会增加内存消耗和计算性能。
5 --index-chunks | -c <int>    default: 4
    将seed index分成指定的份数。推荐将该参数值设置成1,能增加计算性能和内存使用量。

亲测增加 --block-size 15 --index-chunks 1这两个参数后速度提升10倍以上。

参考:
使用DIAMOND将全基因组蛋白序列比对到Nr数据库

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容