[发明专利]基于GPU的序列比对算法的比对结果处理方法有效

专利信息
申请号: 201210060480.1 申请日: 2012-03-08
公开(公告)号: CN102663270A 公开(公告)日: 2012-09-12
发明(设计)人: 金海;郑然;冯晓文;梁添 申请(专利权)人: 华中科技大学
主分类号: G06F19/22 分类号: G06F19/22;G06F17/30
代理公司: 华中科技大学专利中心 42201 代理人: 朱仁玲
地址: 430074 湖北*** 国省代码: 湖北;42
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 基于 gpu 序列 算法 结果 处理 方法
【权利要求书】:

1.一种基于GPU的序列比对算法的比对结果处理方法,包括以下步骤:

初始化GPU的块大小为Bs,并确定线程数量为N,用户输入的待查询序列Q的长度为qlen;

GPU在共享内存中建立分值缓冲区score[Bs]和比对结果缓冲区val[Bs*17][2];

GPU初始化线程号为tid,score[]为零,val[][]为零,缓冲器标记p=1,段计数器s=0;

线程号tid小于线程数量N的所有线程在纹理内存中查找相应的数据库序列,并将数据库序列的序列号sid设置为线程号tid;

设置计数器i=0;

每个线程分别取出相应数据库序列中的第i个字符;

设置计数器j=s;

每个线程分别取出待查询序列Q中的第j个字符;

每个线程根据Smith-Waterman算法对相应数据库序列中的第i个字符和待查询序列Q中的第j个字符进行计算,以得到val[][p];

每个线程分别求score[tid]和val[][p]两者的最大值,并用最大值替换score[tid];

判断j是否大于或等于s+15或qlen;

如果j大于或等于s+15或qlen,则设置计数器m=0;

线程数量N中的每16个线程将val[m*16][p]到val[m*16+15][p]的16个元素联合写回GPU显存,完成一次联合写回;

判断m是否大于或等于15;

如果m大于或等于15,则每个线程分别判断相应数据库序列是否已没有字符;

如果线程相应数据库序列已没有字符,则判断qlen是否小于或等于16;

如果qlen小于或等于16,则每个线程分别将score[tid]写回GPU显存。

2.根据权利要求1所述的基于GPU的序列比对算法的比对结果处理方法,其特征在于,还包括步骤:

如果j不大于或等于s+15或qlen,则j=j+1;

每个线程分别取出待查询序列Q中的第j个字符。

3.根据权利要求1所述的基于GPU的序列比对算法的比对结果处理方法,其特征在于,还包括步骤:

如果m不大于或等于15,则m=m+1;

线程数量N中的每16个线程将val[m*16][p]到val[m*16+15][p]的16个元素联合写回GPU显存,完成一次联合写回。

4.根据权利要求1所述的基于GPU的序列比对算法的比对结果处理方法,其特征在于,还包括步骤:

如果线程相应数据库序列还有字符,则p=1-p,i=i+1;

每个线程分别取出相应数据库序列中的第i个字符。

5.根据权利要求1所述的基于GPU的序列比对算法的比对结果处理方法,其特征在于,还包括步骤:

如果qlen不小于或等于16,则qlen=qlen-16,s=s+16;

重新初始化val[][0]的所有元素为零,p=1;

每个线程初始化val[sid*17][1]为GPU显存中相应的值;

设置计数器i=0。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华中科技大学,未经华中科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210060480.1/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top