论文部分内容阅读
随着二代基因测序技术的发展及其在药物研发、疾病诊断等领域的广泛应用,基因测序数据呈现指数级增长。海量的基因测序数据需要有效的压缩方案来减小数据体积,以降低存储、传输测序数据的成本。为此,研究者们提出了多种专用基因测序数据压缩方法。这些方法虽然有效地提高了基因测序数据的压缩比,但是在处理速度等方面关注不足,未能得到实际应用。而另一方面,现代硬件的发展使得多核、向量处理等特性得到普及,GPU等加速设备的可用性也得到提高。利用现代硬件对专用基因数据压缩算法进行并行优化可以大幅提高处理速度,从而增强实用性。基于这一背景,本文研究了利用现代硬件对基因测序数据质量分数专用压缩算法LCQS进行并行优化,分别提出了在多核CPU环境和在CPU-GPU异构环境两个不同环境的优化方案。在多核CPU环境下,本文基于数据并行与流水线并行模式,通过多线程与共享队列实现了并行的LCQS。同时引入了轻量级的索引文件结构,满足高效地处理下游应用对压缩数据的随机访问解压需求。还对PAQ压缩这一耗时较多的重要模块采用向量化进行细粒度并行,可用于加速包括LCQS在内的数据压缩应用。实验结果表明,并行优化的LCQS在保持了高压缩比的情况下,压缩速度、随机访问解压速度整体上优于通用压缩工具和同类型的专用压缩工具,优化方案加速比高且具有良好的可扩展性,优化模块性能取得明显提升。在CPU-GPU异构环境下,本文将LCQS计算密集的编码过程迁移至GPU上进行计算,结合算法和GPU硬件特点,改进了数据组织形式和算法参数后进行移植实现。还通过循环展开、缓存分配优化等性能调优方法进一步优化,提高访存吞吐率、降低访存延迟。实验结果表明,性能调优方法大幅提高了GPU环境下编码过程的速度,调优后的GPU加速编码模块方案可以明显提高算法的整体性能。