当前位置: 首页 > 专利查询>深圳大学专利>正文

一种GPU加速的DNA序列压缩方法及系统技术方案

技术编号:18458947 阅读:24 留言:0更新日期:2018-07-18 12:46
本发明专利技术适用于基因技术领域,提供了一种GPU加速的DNA序列压缩方法,包括:中央处理器采用模板链算法对元数据进行简化,将简化后的元数据发送给图形处理器;图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配,得到匹配结果;所述图形处理器采用Burrows–Wheeler变换算法、Move‑to‑front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列。本发明专利技术实施例将中央处理器CPU和图形处理器GPU结合异步运行,实现了在图形处理器GPU在进行DNA序列的压缩,同时利用图形处理器GPU中的计算单元可以加快DNA序列的压缩速度。

A GPU accelerated DNA sequence compression method and system

This invention is applicable to the field of gene technology, and provides a GPU accelerated DNA sequence compression method, including: the central processor simplifies the metadata by template chain algorithm and sends the simplified metadata to the graphics processor; the graphic processor uses the sparse index algorithm to match the DNA base sequence with the reference genome. Matching results are obtained; the CPU uses the Burrows - Wheeler transform algorithm, the Move to front transform algorithm and the interval encoder to compress the matched results, the simplified metadata and the mass fraction, and obtain the compressed DNA sequence. The invention implements the asynchronous operation of the central processor CPU and the graphics processor GPU, and realizes the compression of the DNA sequence in the graphic processor GPU, and the compression speed of the DNA sequence can be accelerated by using the computing unit in the graphic processor GPU.

【技术实现步骤摘要】
一种GPU加速的DNA序列压缩方法及系统
本专利技术属于基因
,尤其涉及一种使用图形处理器GPU加速的基于参考基因组的DNA序列压缩方法及系统。
技术介绍
当前,相关工作人员针对DNA序列压缩工具进行了一定的研究,也得到了一定的结果。现有的常用的基于参考基因组的压缩工具:LW-FQZip2、Quip(-r)、DeeZ和CRAM。其中:LW-FQZip2,是一个基于参考基因组的DNA序列压缩工具,对参考基因组建立稀疏索引,将碱基序列定位至对应的稀疏索引位置上,在参考基因组上匹配,同时考虑插入、删除与错配。使用线程把整体占据时间长的程序分成若干个任务放到后台去处理,实现应用于压缩存储的轻量级DNA序列匹配的并行化,有效提高压缩FASTQ格式的DNA数据的效率,并使得程序的运行速度大大加快,匹配速度也相应加快,减少在时间上的消耗,并增强了该方法的可用性。使用游程编码、PPM预测模型和算术编码将匹配后的结果、元数据和质量分数进行压缩。Quip(-r)、DeeZ和CRAM这三个压缩工具都是基于BWA工具的匹配结果(SAM/BAM)为输入进行压缩。BWA工具,同时考虑插入、删除与错配,并采用了Burrows–Wheeler变换(BWT,Burrows–Wheeler_transform)算法,对参考基因组进行了一次有规律的重新排序,目的是为了方便后续进行查找。BWA输出为SAM文件,利用SAMTOOLS工具将SAM文件转为BAM文件。Quip(-r)是一个无损的、基于参考基因组的压缩工具。压缩算法是基于统计的算术编码分别压缩元数据、DNA碱基序列和质量分数。DeeZ是通过局部装配基于参考基因组的压缩工具,有着不错的压缩比并且提供随机存取功能,DeeZ使用了独特的压缩方法:使用了增量编码和2阶算术编码。CRAM无损的基于参考基因的压缩工具,CRAM将DNA序列比对到参考基因上,然后将这个DNA序列与参考基因组不同的地方进行编码,使用了霍夫曼编码、Golomb编码和二进制编码。虽然现有技术提供多种基于参考基因组的压缩方法,但是都是针对中央处理器CPU进行开发,图形处理器GPU平台上无法实现对DNA序列的压缩。
技术实现思路
本专利技术所要解决的技术问题在于提供一种GPU加速的DNA序列压缩方法及系统,旨在解决现有技术在图形处理器GPU平台上无法实现对DNA序列的压缩的问题。本专利技术是这样实现的,一种GPU加速的DNA序列压缩方法,包括:中央处理器采用模板链算法对元数据进行简化,将简化后的元数据发送给图形处理器;图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配,得到匹配结果;所述图形处理器采用Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列。进一步地,所述中央处理器采用模板链算法对元数据进行简化包括:所述中央处理器选取若干条元数据,根据预置的分隔符将每一条元数据切分成若干模块;将每一条元数据中的相对应的模块逐一比较,若每一条元数据中相对应的模块相同,则将其状态设置为1,若数字递增,则将其状态设置为2,若不同,则将其状态设置为3,得到状态链;遍历每一条元数据,结合所述状态链,找出差异的部分,将第一条元数据作为模板链;将所述模板链、所述状态链和所述差异的部分进行保存,得到简化后的元数据。进一步地,所述分隔符包括逗号、句号、冒号、等号、空格和连接号。进一步地,所述图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配包括:所述图形处理器查找所述参考基因组中前缀的位置,取k-mer的哈希值构建哈希索引表,所述哈希索引表中包含每一条k-mer的哈希值、出现频率和出现位置;将所述哈希索引表保存至内存中,根据所述哈希索引表将N×N个DNA碱基序列异步地传输到一个N×N的匹配矩阵中,在所述匹配矩阵的每个位置保存一个DNA碱基序列,所述匹配矩阵中的每个位置表示所述图形处理器的一个计算单元;找到所述DNA碱基序列上的两个前缀并计算其k-mer值,在所述哈希索引表上找到与所述两个前缀最接近的位置,并逐一比较,得到匹配结果。进一步地,所述图形处理器采用Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列包括:所述图形处理器将所述匹配结果、所述简化后的元数据和所述质量分数分别进行编码,得到编码数据;将所述编码数据分割为N×N份,将分割得到的N×N份数据异步地传输到一个N×N的计算矩阵中,所述计算矩阵的每个位置保存一份数据,所述计算矩阵的每个位置表述所述图形处理器的一个计算单元;所述计算矩阵中的每个位置对各自保存的数据分别进行Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器的编码,得到压缩后的DNA序列。本专利技术实施例还提供了一种GPU加速的DNA序列压缩系统,包括:中央处理器,用于采用模板链算法对元数据进行简化,将简化后的元数据发送给图形处理器;图形处理器,用于利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配,得到匹配结果;所述图形处理器还用于采用Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列。进一步地,所述中央处理器具体用于:选取若干条元数据,根据预置的分隔符将每一条元数据切分成若干模块;将每一条元数据中的相对应的模块逐一比较,若每一条元数据中相对应的模块相同,则将其状态设置为1,若数字递增,则将其状态设置为2,若不同,则将其状态设置为3,得到状态链;遍历每一条元数据,结合所述状态链,找出差异的部分,将第一条元数据作为模板链;将所述模板链、所述状态链和所述差异的部分进行保存,得到简化后的元数据。进一步地,所述分隔符包括逗号、句号、冒号、等号、空格和连接号。进一步地,所述图形处理器具体用于:查找所述参考基因组中前缀的位置,取k-mer的哈希值构建哈希索引表,所述哈希索引表中包含每一条k-mer的哈希值、出现频率和出现位置;将所述哈希索引表保存至内存中,根据所述哈希索引表将N×N个DNA碱基序列异步地传输到一个N×N的匹配矩阵中,在所述匹配矩阵的每个位置保存一个DNA碱基序列,所述匹配矩阵中的每个位置表示所述图形处理器的一个计算单元;找到所述DNA碱基序列上的两个前缀并计算其k-mer值,在所述哈希索引表上找到与所述两个前缀最接近的位置,并逐一比较,得到匹配结果。进一步地,所述图形处理器还用于:将所述匹配结果、所述简化后的元数据和所述质量分数分别进行编码,得到编码数据;将所述编码数据分割为N×N份,将分割得到的N×N份数据异步地传输到一个N×N的计算矩阵中,所述计算矩阵的每个位置保存一份数据,所述计算矩阵的每个位置表述所述图形处理器的一个计算单元;所述计算矩阵中的每个位置对各自保存的数据分别进行Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器的编码,得到压缩后的DNA序列。本专利技术与现有技术相比,有益效果在于:本文档来自技高网
...

【技术保护点】
1.一种GPU加速的DNA序列压缩方法,其特征在于,包括:中央处理器采用模板链算法对元数据进行简化,将简化后的元数据发送给图形处理器;图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配,得到匹配结果;所述图形处理器采用Burrows–Wheeler变换算法、Move‑to‑front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列。

【技术特征摘要】
1.一种GPU加速的DNA序列压缩方法,其特征在于,包括:中央处理器采用模板链算法对元数据进行简化,将简化后的元数据发送给图形处理器;图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配,得到匹配结果;所述图形处理器采用Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列。2.如权利要求1所述的DNA序列压缩方法,其特征在于,所述中央处理器采用模板链算法对元数据进行简化包括:所述中央处理器选取若干条元数据,根据预置的分隔符将每一条元数据切分成若干模块;将每一条元数据中的相对应的模块逐一比较,若每一条元数据中相对应的模块相同,则将其状态设置为1,若数字递增,则将其状态设置为2,若不同,则将其状态设置为3,得到状态链;遍历每一条元数据,结合所述状态链,找出差异的部分,将第一条元数据作为模板链;将所述模板链、所述状态链和所述差异的部分进行保存,得到简化后的元数据。3.如权利要求2所述的DNA序列压缩方法,其特征在于,所述分隔符包括逗号、句号、冒号、等号、空格和连接号。4.如权利要求1所述的DNA序列压缩方法,其特征在于,所述图形处理器利用稀疏索引算法将DNA碱基序列与参考基因组进行匹配包括:所述图形处理器查找所述参考基因组中前缀的位置,取k-mer的哈希值构建哈希索引表,所述哈希索引表中包含每一条k-mer的哈希值、出现频率和出现位置;将所述哈希索引表保存至内存中,根据所述哈希索引表将N×N个DNA碱基序列异步地传输到一个N×N的匹配矩阵中,在所述匹配矩阵的每个位置保存一个DNA碱基序列,所述匹配矩阵中的每个位置表示所述图形处理器的一个计算单元;找到所述DNA碱基序列上的两个前缀并计算其k-mer值,在所述哈希索引表上找到与所述两个前缀最接近的位置,并将每一字符进行比较,得到匹配结果。5.如权利要求1所述的DNA序列压缩方法,其特征在于,所述图形处理器采用Burrows–Wheeler变换算法、Move-to-front变换算法和区间编码器对所述匹配结果、所述简化后的元数据和质量分数进行压缩,得到压缩后的DNA序列包括:所述图形处理器将所述匹配结果、所述简化后的元数据和所述质量分数分别进行编码,得到编码数据;将所述编码数据分割为N×N份,将分割得到的N×N份数据异步地传输到一个N×N的计算矩阵中,所述计算矩阵的每个位置保存一份数据,所述计算矩阵的每个位置表述所述图形处理器的一个计算单元;所述计算矩阵中的每个位置对各自...

【专利技术属性】
技术研发人员:朱泽轩彭聪孙怡雯
申请(专利权)人:深圳大学
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1