基于GPU的序列比对算法的比对结果处理方法

    公开(公告)号:CN102663270B

    公开(公告)日:2015-06-17

    申请号:CN201210060480.1

    申请日:2012-03-08

    Abstract: 本发明公开了一种基于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算法快速打分,且能高效直观地写回比对结果,从而为回溯部分获取最佳匹配片段提供分值矩阵。

    基于GPU的序列比对算法的比对结果处理方法

    公开(公告)号:CN102663270A

    公开(公告)日:2012-09-12

    申请号:CN201210060480.1

    申请日:2012-03-08

    Abstract: 本发明公开了一种基于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算法快速打分,且能高效直观地写回比对结果,从而为回溯部分获取最佳匹配片段提供分值矩阵。

Patent Agency Ranking