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

一种基于GPU的LD tagSNPs并行选择方法技术

技术编号:8800944 阅读:209 留言:0更新日期:2013-06-13 05:39
本发明专利技术公开了一种基于GPU的LD?tagSNPs并行选择方法,其特征在于,包括以下步骤:步骤一,筛选过滤LD数据:该步骤用于从标准LD数据中提取出满足阈值条件的LD数据记录,并形成集合SetLD;步骤二,无向图构造:该步骤将集合SetLD构造成一个无向图G;步骤三,子图划分:将无向图G划分为独立的子图,并形成子图集合Setsub-G步骤四,tagSNPs选择:将步骤三中获得的Setsub-G输入到GPU的显存中,采用并行处理方法,获得tagSNPs选择结果。该基于GPU的LD?tagSNPs并行选择方法处理效率高,能高效高速地挑选出数量相对较少的tagSNPs。

【技术实现步骤摘要】

本专利技术涉及,属于根据连锁不平衡性(Linkagedi sequlibrium, LD)选择标签 SNP 的方法。
技术介绍
在群体遗传学,连锁不平衡是两个或两个以上的位点等位基因的非随机关联。两个位点上的等位基因不是独立关联的,我们就称这两个位点是连锁不平衡(LD)的。SNP,全称Single Nucleotide Polymorphisms (单核苷酸多态性),是指在基因组上单个核苷酸的变异形成的遗传标记。在人类基因组中,每隔100至300个碱基就会存在一处SNP位点。一个基因上存在大量的SNP位点,现有的技术不可能也没必要对所有的SNP位点进行基因型分析,并且基因型中的SNP位点往往是存在连锁不平衡性(LD),我们挑选出一些有代表性的SNP位点,来代表基因上其他所有的位点,这些有代表性的SNP位点,就称之为tagSNPs。如何在所有的SNP位点中,挑选出数量相对较少的tagSNPs,对于相关疾病的研究,具有十分重大的意义。目前,从国际人类基因组单体型图计划(The International HapMap Project)网站获取的连锁不平衡数据文件(LD_data)中,单个染色体数据的大小可达4G以上,其中包含的记录超过六亿行,如何从如此大规模的数据中,快速筛选出较高水平的LD数据记录,并从LD数据中挑选出tagSNPs,是本领域亟待解决的技术问题。 图论及相关算法是计算机学科的一个基础性的研究领域,其研究内容为由若干给定的点及连接两点的线所构成的图形。这种图形通常用来描述某些事物之间的某种特定关系,用点代表事物,用连接两点的线表示相应两个事物间具有这种关系。目前,在生物信息学领域中的许多数据分析与预测问题,比如tagSNPs Selection,蛋白质预测,都可以抽象成图论的模型来解决。随着计算机硬件技术的飞速发展,双核、四核,甚至更多核的CPU随处可见,通用CPU串行计算无法有效的利用计算机各类硬件资源,在大规模的数据计算环境中无法获得满意的运行时间。随着GPUGraphic Processing Unit,图形处理器的发展,其计算能力和访存带宽都超过了 CPU,在GPU上进行通用计算也变得越来越可行与有效,这样就构成了基于CPU-GPU协同运算的异构平台。CUDA全称为 Compute Unified Device Architecture,是一种由 NVIDIA推出的通用并行计算架构,该架构通过利用GPU的处理能力,可大幅提升计算性能。CUDA采用C语言作为编程语言,便于大量的高性能计算指令的开发,使开发者能够在GPU的强大计算能力的基础上建立起一种效率更高的密集数据计算解决方案。
技术实现思路
本专利技术所要解决的技术问题是提供,该基于GPU的LD tagSNPs并行选择方法处理效率高,能高效高速地挑选出数量相对较少的tagSNPsο专利技术的技术解决方案如下:,包括以下步骤:步骤一,筛选过滤LD数据:该步骤用于从标准LD数据中提取出满足阈值条件的LD数据记录,并形成集合Setu);步骤二,无向图构造:该步骤将集合Setu)构造成一个无向图G ;步骤三,子图 划分:将无向图G划分为独立的子图,并形成子图集合Setsub_e ;步骤四,tagSNPs选择:将步骤三中获得的Setsub_e输入到GPU的显存中,采用并行处理方法,获得tagSNPs选择结果;所述的LD指连锁不平衡,tagSNPs是指单核苷酸多态性遗传标记。步骤一的具体实现方法为:将标准LD数据解压成TXT文件,依次搜寻TXT文件内每行记录中的两个SNP位点的编号(即对应TXT文件中第四列的rs# for marker I与第五列的rs# for marker2)及该两个SNP位点之间的连锁不平衡信息R2 (即对应TXT文件中第七列的R square信息);当该行记录的R2的值大于或者等于预设的阈值时,则将这两个SNP位点的编号以一行的形式保存到Setui集合中,Setui集合中的每一行称为一条Set111记录。步骤二的具体实现方法为:依次读取Setu)集合中的Setu)记录,将每条Setuj记录转化成为无向图G中的一条边,边的两个顶点为Setu)记录中的两个SNP位点,直至遍历Setu)集合中的所有Setuj记录;最后输出的无向图G包含由Set111集合转化得到的所有的边。步骤三包含顶点编号与子图拼接两个子过程:(A)顶点编号子过程:对无向图G进行一次广度优先遍历的同时给每个顶点编号,从而标识当前顶点所在的子图序号;即包括:步骤1:子图计数subGraphCount清零;步骤2:选定图的任意一个未曾被访问的顶点,访问该顶点,然后将该顶点放入队列;步骤3:从队列中取出队头的元素,记为顶点V,将顶点V从队列中删除,并置V的子图号(subGraphld)为subGraphCount ;访问V的各个未曾访问的邻接点A0, A1, A2,…,Ak,并依次将这些邻接点放入队列;步骤4:重复步骤3,直至队列为空;步骤5:subGraphCount自增I,返回到步骤2进行循环,直至图G中所有顶点都被访问;通过上述的5个步骤完成对无向图G的所有顶点的访问,并设定了每个顶点的子图号(subGraphld),并且使得连通的两个顶点具有相同的子图号,不连通的两个顶点具备不相同的子图号;子图号(subGraphld)相同的顶点及与这些顶点相关的边,就构成了图G的一个子图;(B)子图拼接过程:扫描无向图G中每个顶点的子图号(subGraphld),按照子图号(subGraphld)对无向图G进行拆分,即得到集合Setsub_e,集合Setsub_e为无向图G所包含的所有子图的集合。步骤四的具体实现方法为:首先将集合Setsub_e中的数据复制到GPU的显存中,再采用HTag方法进行处理,得到tagSNPs选择结果;HTag方法包括:步骤a,挑选tagSNPs:每次从未被挑选的SNP位点中,选出一个tagSNP ;步骤b,优化:将步骤一中得到的tagSNPs集合中冗余的tagSNPs去除。有益效果:本专利技术的基于GPU的LD tagSNPs并行选择方法,一方面能够在大量的SNP位点中,挑选出数量相对较少的SNP位点作为tagSNP ;另一方面能够充分利用现有的计算机硬件资源,缩短挑选tagSNP过程的运行时间。本专利技术中提出的tagSNPs挑选算法,相对于以往的tagSNPs挑选算法,由于增加了一个优化的步骤,能够将一些冗余的tagSNP位点予以祛除,因而算法执行的结果相比其他算法,得出的tagSNPs数量要少许多。上述的tagSNPs挑选算法,由于优化步骤的存在,使得算法在执行过程中所做的操作更多,因而会耗费更多的运行时间。tagSNPs挑选的过程,本质上就是一个在无向图中挑选若干顶点的过程。同时SNP位点的连锁不平衡信息,使得该无向图是一个规模巨大,又可以拆分成若干个互相独立的小规模无向图,非常适合并行计算,我们可以通过对每个小规模无向图执行tagSNPs挑选算法,之后将这些所有的运算结果汇总。因此在这个过程中,我们可以采用并行的方式,同时对该无向图的多个部分求解,最后将这些结果汇总即可,这种做法理论上比直接求解所耗时间更少。通用CPU串行计算无法有本文档来自技高网
...

【技术保护点】
一种基于GPU的LD?tagSNPs并行选择方法,其特征在于,包括以下步骤:?步骤一,筛选过滤LD数据:该步骤用于从标准LD数据中提取出满足阈值条件的LD数据记录,并形成集合SetLD;?步骤二,无向图构造:该步骤将集合SetLD构造成一个无向图G;?步骤三,子图划分:将无向图G划分为独立的子图,并形成子图集合Setsub?G;?步骤四,tagSNPs选择:将步骤三中获得的Setsub?G输入到GPU的显存中,采用并行处理方法,获得tagSNPs选择结果;?所述的LD指连锁不平衡,tagSNPs是指单核苷酸多态性遗传标记。

【技术特征摘要】
1.一种基于GPU的LD tagSNPs并行选择方法,其特征在于,包括以下步骤: 步骤一,筛选过滤LD数据:该步骤用于从标准LD数据中提取出满足阈值条件的LD数据记录,并形成集合Setu); 步骤二,无向图构造:该步骤将集合Setui构造成一个无向图G ; 步骤三,子图划分:将无向图G划分为独立的子图,并形成子图集合Setsuw ; 步骤四,tagSNPs选择:将步骤三中获得的Setsub_e输入到GPU的显存中,采用并行处理方法,获得tagSNPs选择结果; 所述的LD指连锁不平衡,tagSNPs是指单核苷酸多态性遗传标记。2.根据权利要求1所述的基于GPU的LDtagSNPs并行选择方法,其特征在于,步骤一的具体实现方法为: 将标准LD数据解压成TXT文件,依次搜寻TXT文件内每行记录中的两个SNP位点的编号(即对应TXT文件中第四列的rs# for marker I与第五列的rs# for marker2)及该两个SNP位点之间的连锁不平衡信息R2 (即对应TXT文件中第七列的R square信息); 当该行记录的R2的值大于或者等于预设的阈值时,则将这两个SNP位点的编号以一行的形式保存到Setui集合中,Setui集合中的每一行称为一条Set111记录。3.根据权利要求2所述的基于GPU的LDtagSNPs并行选择方法,其特征在于,步骤二的具体实现方法为: 依次读取Setu)集合中的Setu)记录,将每条Setu)记录转化成为无向图G中的一条边,边的两个顶点为Setu)记录中的两个SNP位点,直至遍历Setu)集合中的所有Setuj记录;最后输出的无向图G包含由Setui集合转化得到的所有的边。4.根据权利要求3所述的基于GPU的LDtagSNPs并行选择方法,其特征在于,步骤三...

【专利技术属性】
技术研发人员:张祖平龙军夏靖陈海林
申请(专利权)人:中南大学
类型:发明
国别省市:

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

1