买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】一种基于GPU的最大精确匹配并行查找算法_桂林电子科技大学_202311774037.5 

申请/专利权人:桂林电子科技大学

申请日:2023-12-22

公开(公告)日:2024-03-22

公开(公告)号:CN117746987A

主分类号:G16B30/10

分类号:G16B30/10;G16B50/10;G16B50/30;G06F16/22;G06F16/2453;G06F16/245

优先权:

专利状态码:在审-公开

法律状态:2024.03.22#公开

摘要:本发明公开了一种基于GPU的最大精确匹配并行查找算法,旨在于加速第三代RNA测序数据比对算法耗时最多的种子过程。首先,在CPU上对转录组创建FM索引,构建并采样参考基因组后缀的最长公共前缀数组,将它们从CPU内存复制到GPU内存;然后,使用GPU并行加载RNA测序数据,将它们分割到GPU线程块;其次,设置GPU线程参数,每个线程查找所分配数据与参考基因组之间的最大精确匹配;最后,同步线程并合并查询结果。本发明有效减少了最大精确匹配查找算法的运行时间,从而能够加速RNA测序数据的比对算法。

主权项:1.一种基于GPU的最大精确匹配并行查找算法,其特征在于,包括以下步骤:1下载数据集,每个数据集包含参考基因组和基因组注释文件,以及对应物种的第三代RNA测序数据,数据集共4个,包含3个真实数据集,1个模拟数据集;2利用基因组注释文件,从参考基因组中获取转录组;3对转录组序列进行Burrows-WheelerTransformBWT变换,将转录组序列的旋转形式按字典序排序,构成BWT数组;4将BWT数组的最后一列L和第一列F进行LF映射,转录组序列的所有映射关系构成Ferragina-ManziniFM索引;5计算转录组序列的所有后缀,将它们进行排序,形成后缀数组SA;6计算后缀数组SA中相邻两个后缀的最长公共前缀,所有的最长公共前缀长度值构成最长公共前缀数组LCP;7利用LCP的极小值对最长公共前缀数组进行采样,得到采样的最长公共前缀数组SLCP;8对FM索引、最长公共前缀数组LCP和采样的最长公共前缀数组SLCP进行序列化,将它们以二进制的形式分别写入index.bin、lcpArray.bin和slcpArray.bin文件中,以便可以重复利用;9将FM索引、最长公共前缀数组LCP和采样的最长公共前缀数组SLCP从CPU内存中拷贝到GPU内存中;10将RNA测序数据集FASTA或FASTQ文件分成n个批次,每个批次的数据量为batchSize;11将单个批次的测序数据读取到CPU内存,再从CPU内存拷贝到GPU内存中;12在GPU内,将单批测序数据分割成多个块,每个块由一个GPU线程块处理;13在GPU线程块内,利用初始化核函数设置线程的参数,包括每个线程需要处理的测序数据范围,即GPU线程块所分配测序数据的开始和结束下标;14GPU线程执行查找最大精确匹配的核函数,各线程利用GPU内存中共享的FM索引、LCP数组和SLCP数组,查找测序数据与转录组序列之间的最大精确匹配,即测序数据与转录组序列之间完全相同的最长连续子序列,其中,每个GPU线程独立处理多条RNA测序数据,每个线程块中大量并发执行的GPU线程能够显著减少算法查找最大精确匹配的时间;15将GPU线程的最大精确匹配查找结果拷贝到CPU内存,为了保证输入与输出顺序的一致性,根据GPU线程的索引顺序,将CPU内存的结果写入到文件中;16重复步骤11至步骤15,直至查询完整个RNA测序数据集的最大精确匹配;17释放CPU和GPU的内存数据,算法执行结束。

全文数据:

权利要求:

百度查询: 桂林电子科技大学 一种基于GPU的最大精确匹配并行查找算法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。