鲲鹏众智-HPC软件samblaster、spider 2款软件迁移openEuler平台实践心得
收藏回复举报
鲲鹏众智-HPC软件samblaster、spider 2款软件迁移openEuler平台实践心得
新人帖
发表于2022-10-26 09:13:35
0 查看

概述

自从新冠疫情爆发以来,人民的生产生活受到了深刻的影响,新冠病毒基因的快速测序,疫苗、特效药物的快速研发成为了各大国技术竞争的重要方面,由此生命科学也成为了高性能计算(HPC)领域的重要一项。为了繁荣HPC+openEuler开源生态,需要将samblaster、spider2款生命科学类的应用迁移至openEuler平台。

技术背景

Illumina DNA 测序现在是原始基因组数据的主要来源,并且数据量正在迅速增长。生物信息学分析管道难以跟上步伐。此类管道中的一个常见瓶颈是需要多次读取、写入、排序和压缩大型 BAM 文件。而SAMBLASTER,是一种减少执行此类昂贵操作次数的工具。SAMBLASTER旨在将读取排序的 SAM文件中的重复标记为DNA对齐器输出的管道后传递,然后再将其压缩为BAM。此外,它可以同时将用于结构变体调用的不一致读取对(和)或拆分读取映射输出到单独的文件中。作为对齐后传递,它自己的运行时开销可以忽略不计,同时大大降低了整体管道复杂性和运行时间。作为一个独立的重复标记工具,它在速度和内存使用方面明显优于PICARD 或 SAMBAMBA,同时实现几乎相同的结果。

生命科学场景亦可称为基因测序场景,应用主要分为序列对比、序列拼接、全基因组关联分析、RNA等其他组学数据分析,基因测序主要特点是分析基因测序数据,因此 对内存、IO带宽、网络时延要求非常高。并且高性能计算一般通过将大量服务器、存储设备通过高性能网络互联,构建大规模计算集群,各个计算节点相互协同,并行处理多个子任务。通过并行计算的方式帮助解决普通计算机和服务器难以完成或无法快速完成的大型模型计算、复杂课题研究。

而我国基于鲲鹏处理器的华为高性能计算解决方案具有较强的性能优势。它提出的由:基础设施、硬件平台、中间件、行业应用层组成的HPC解决方案总体架构。其中鲲鹏920芯片,最高64核,8内存通道,适合访存密集型及整型计算为主应用,华为智能网卡、SSD、Atlas加速卡,加速高性能计算应用。因此将SAMBLASTER迁移至鲲鹏平台,并进行相应的调优,对软件的性能有较大的提升,从而能进一步加速基因重复标记的速度,进而进一步促进基因测序技术的发展。

迁移目标

1、将应用迁移至openEuler平台,解决迁移过程中的报错。软件迁移后可成功运行,无运行报错、coredump等情况发生;

2、对比同等配置下CentOS的测试性能,openEuler下测试结果性能需要在CentOS的95%以上;

实践心得

很荣幸能够参加到这次的鲲鹏众智项目中,项目期间每周都与老师和同学们一起开组会,前期组织学习分享并在后期运用在项目实践之中。由于需要迁移的软件在网上能找到的资料较少及是生命科学类的软件,我们在对软件的熟悉上花费了许多精力。对软件架构的了解对我们的迁移与优化有很大的帮助,如编译选项的选择、热点函数的优化等。且大家之前都没有接触过鲲鹏平台,都是一步步学习探索,互相交流,也发现了鲲鹏平台在对于软件迁移优化上的强大优势。鲲鹏提供的DevKit代码迁移工具、性能调优工具以及测试平台都为我们提供了很大的帮助。印象深刻的是后期老师与团队成员都不在一个地方,大家还是同心协力,定期线上开展会议,讨论迁移优化及测试的下一步安排以及自己在实践中碰到的困难。这个过程中不仅不断推进项目的进度、丰富了我们的技术知识,也大大提升了我们的团队合作与沟通能力。

最后,十分感谢华为鲲鹏众智计划给了我们接触鲲鹏平台、熟悉华为生态的机会,也非常感谢老师细心的指导,在项目的过程中,也感谢对接的每一个华为专家,为我们答疑解惑,提供资源。希望以后能有更多的机会参加到类似的项目中,在实践中不断学习知识、积累经验,为繁荣openeuler生态贡献自己一份的绵薄之力。

华中师范大学 - 计算机学院 - 南湖畔团队 - 边雨璇

指导老师:李沛老师

本帖最后由 匿名用户2023/11/17 15:15:15 编辑

我要发帖子