论文部分内容阅读
DNA基因测序技术和测序平台在不断地发展和进步,其低廉的测序成本和高速的检测速度,给生物学和医学领域的相关研究带来了更大的辅助。然而,高速的检测速度意味着产出的DNA基因数据规模庞大,如何在有限的存储空间里存储更多的DNA基因序列数据,成为了计算机领域科学家们需要解决的问题。在数据压缩的历史中,对通用数据的处理要比对基因数据的处理早很多年。因此,生物学家们最开始利用通用数据压缩软件对DNA基因序列数据进行压缩,但通用数据压缩软件并没有充分利用好DNA基因序列数据本身的特点,因此对于DNA基因序列数据进行压缩还有很大的进步空间。本文在充分调研DNA基因序列数据的基础上,又对当前经典的基因数据专用压缩算法进行了仔细的分析,选取可并行化的压缩算法,最终在异构计算平台上进行压缩效果提升的研究与实现。有鉴于此,我们首先分析了DNA基因序列数据的特点与FASTQ存储格式,并发现充分利用好DNA基因序列数据本身蕴含的生物学信息,深入挖掘DNA基因序列数据存储格式的规律,可以大大提高DNA基因序列数据的压缩效果。接下来,我们分别介绍了数据压缩领域中的经典数据压缩算法,如静态和自适应Huffman编码算法、算数编码算法、LZ系列压缩算法和游程编码算法。正是这些基础算法为数据压缩的发展奠定了坚实的基础。为了比较DNA基因序列数据压缩软件与通用压缩软件在处理DNA基因序列数据孰优孰劣,我们介绍了通用压缩软件和DNA基因序列数据专用压缩软件,并从压缩比、压缩时间和解压缩时间三个角度,对通用数据压缩软件和DNA基因序列数据专用压缩软件进行了多维度的性能测试比较,并对测试的结果进行了详细的分析。我们根据测试结果,在DNA基因序列数据专用压缩软件挑选了性能测试结果良好且可并行化的DSRC压缩软件,以此软件为基础在异构计算平台上实现了的DNA基因序列数据压缩算法——DSRC_HYBRID。因此我们对DSRC压缩软件的算法、处理流程以及源代码进行了详细的分析与总结,并设计了DSRC_HYBRID算法工作流程以及工作模式,根据测试得到的CPU和MIC数据处理能力以及VTune热点函数测试结果,利用消息传递接口MPI,将数据科学地分载到CPU和MIC端,以此达到实现设备负载均衡的目的,利用锁的思想来实现多线程的数据同步,实现了对等模式下的MIC和CPU工作模式。我们通过利用MIC协处理器,使得DSRC算法在异构计算平台上保持压缩比不变的前提下,压缩时间上平均取得了17.956倍的加速比,在解压缩时间上平均取得了15.203倍的加速比。因此可以说利用异构计算平台去加速当前的专用DNA序列数据压缩算法是未来对于海量DNA序列数据进行压缩的可选途径。