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

一种运行于多核计算机平台的并行通用序列的比对方法技术

技术编号:10828647 阅读:77 留言:0更新日期:2014-12-26 18:01
本发明专利技术公开了一种运行于多核计算机平台的并行通用序列的比对方法,首先利用聚类方法(Cluster)对待比对序列集进行分类,得到大小不等的子序列集合(C1,C2,……,Cm)。然后,应用分配方法(Distribute)将待比对的子序列集合分配到各计算核上(Core1,Core2,……,Coren),以各个核上的负载平衡为分配的最终目标。接着,应用现有的序列比对方法对各子序列集合分别进行比对(Align)。最后,应用合并方法(Merge),将已比对的子序列集合合并,得到待比对序列集的最终比对结果。本发明专利技术基于多核计算平台,充分利用了数据并行的计算策略,从而显著提高生物序列比对的处理效率。

【技术实现步骤摘要】
—种运行于多核计算机平台的并行通用序列的比对方法
本专利技术属于计算机软件
,涉及。
技术介绍
序列是生物信息的载体,包括DNA (脱氧核糖核酸)、RNA (核糖核酸)和蛋白质等。生物序列比对(sequence alignment)是以序列为研究对象,通过比较序列中各字符间的对应关系或字符的对比排列,发现序列之间的相似性,辨别序列之间的差异,从而推测其结构、功能以及进化上的联系。序列比对是生物序列分析领域最重要的研究方向之一,已被广泛应用于进化分析、功能预测、相似性搜索、生物制药、疾病诊断与治疗等方面。 高性能计算的发展现状表明,计算机体系结构已朝着单核到多核、同构到异构体系结构快速发展。有关并行的序列比对方法主要分成二种思路。 第一种思路是在经典体系结构上提出并行序列比对解决方法,经典体系结构包括总线网、Mesh网、机群和众核计算机等计算平台。在国内,中科院计算技术研究所在DAWING2000-1机群系统上开发了并行S-W方法,通过应用分而治之策略,有效地降低了内存需求,实现了大规模序列比对数据的并行处理。还有应用64核Tile64平台实现的N-W序列比对方法,获得了 20倍的加速效果。另外,还采用了 Amazon Elastic Cloud(EC2)平台实现了T-COFFEE序列比对方法。 另一种思路是鉴于通用计算平台处理生物序列比对的局限性,目前国内外大多采用硬件加速部件与通用微处理器组成异构处理结构,对生物序列比对的应用进行加速。硬件加速部分包括GPU(Graphic Processing Unit)、FPGA (Field Programmable Gate Array)和Cell BE (Cell Broadband Engine)。自2006年最早提出GPU加速S-W方法以来,已提出了许多GPU在序列比对领域的应用。采用的GPU类型大部分基于NVIDIA GPU的实现,2011年,中国首先采用AMD ATI HD4850实现多序列比对的加速,也是迄今为止唯一将AMD GPU应用于序列比对领域的方法。除了单GPU上实现序列比对外,也提出了多GPU协同实现序列比对的方法。自1998年首次应用FPGA加速序列比对应用以来,已有许多采用线性脉动阵列处理器的序列比对方法。2007年,Sachdeva等第一次将Cell BE平台应用到序列比对领域,随后提出了 FASTA、Clustalff, BLASTP等方法的Cell BE加速方法。 通用计算平台和异构计算平台加速序列比对的方法各有优劣。具体分析如下: 虽然采用通用计算平台对序列比对的并行计算取得了明显的加速效果,但从并行效率上分析,通用计算平台对序列比对这类数据相关性较强的计算密集型应用,并行效率一般不超过60%。而且随着序列比对问题规模的增大和处理器数量的增加,并行效率呈明显下降趋势。 鉴于异构体系结构能够适应序列比对算法多样性的同时保持系统软件兼容,并且随着GPU、FPGA和Cell BE性能提升和价格、功耗的不断降低,基于异构体系结构的并行序列比对方法是序列比对领域正在探索的重要发展方向。虽然GPU等加速部件拥有强大的计算能力和卓越的性价比,但是由于其硬件结构固定,拥有有限的内存,不能在运算粒度、存储调度、计算适应度方面适应序列比对具体应用的特点,限制了实际计算性能。因此,异构计算平台序列比对加速方法研究目前急需解决以下问题: (I)异构平台的高效协同方式。CPU与加速部件(GPU、FPGA和Cell BE)之间的高效协同计算是提升序列比对性能的关键因素。必须根据硬件加速部件的计算能力和执行特点,确定合理的协同方式,以保证CPU与加速部件之间的负载平衡,降低各种交互开销,进而提高并行方法的执行效率。 (2)序列比对程序的性能优化。对采用硬件加速部件加速的序列比对并行计算程序而言,影响其性能的因素主要有:计算的组织方式、寄存器和缓存的使用、存储器访问特点、同步以及数据传输等。如何优化这些影响性能的主要因素,是研究序列比对硬件加速方法的难点。
技术实现思路
本专利技术的所要解决的技术问题是提供,以克服现有技术中序列比对的执行效率不高的问题。 ,首先应用聚类方法对待比对序列集合以已知功能序列作为聚类中心进行划分得到多个序列子集;然后将多个序列子集分配到各计算机核上独立地与各自的聚类中心进行比对,得到序列子集的比对结果;最后应用渐进式方法对序列子集的比对结果进行合并,得到待比对序列集合的比对结果矩阵A,完成序列比对; 所述矩阵A满足以下条件: (I)矩阵 A 中的元素 Bij e Σ U {.}; 其中,Σ表示生物序列字母表,若为DNA序列,则Σ = {A、C、G、T};若为蛋白质序列,则Σ为20个简单氨基酸分子;{.}表示在序列比对过程中插入的空格; (2)若删除空格,矩阵A中的行a, = anai2…an(l彡i彡η)即为待比对序列集合中的某一序列; (3)矩阵A中不存在全为空格的列。 所述将序列子集分配到各计算机核上独立地进行比对的具体过程如下: I)计算每个序列子集Ci所需的比对时间WCi),i表示第i个序列子集; 2)根据序列子集的比对时间,以各个核的负载平衡为分配目标,采用最长处理时间优先的启发式序列子集分配方法,将序列子集分配到各个计算机核上执行比对操作。 所述序列子集所需的比对时间计算方法包括以下两种: Dt(Ci) ~ NX L,比对时间 t (Ci)正比于 NXL; 2) t (Ci) aN4+bNL2,比对时间 t (Ci)正比于 aN4+bNL2 ; 其中,其中N和L分别为序列子集Ci所包含的序列数目和所有序列的平均长度; a和b均为拟合系数,从序列相似度在90%以上的已知序列中,随机挑选序列构建序列子集,利用现有比对工具获得序列子集的比对时间,采用最小二乘法进行非线性数据拟合求得a和b。 所述最长处理时间优先的启发式序列子集分配方法具体过程如下: 步骤1:将多个序列子集IC1, C2,…,CJ按序列子集的比对时间进行非升序排列,即 WC1) ^ t(C2) >,...,> t(Cx); 步骤2:令Uj = Φ,Lj = 0,其中,Uj是J的子集,Lj是Uj中所有子集的比对时间之和,j = I,2,......,m, m表示计算机核数; 步骤3:令i = I, U1(m) = Um, L1 (m) = Lm, U1(m)表示序号为m的计算机核上所分配的序列子集的集合; 步骤4 -.U1 ⑴=U1(1) U Ci, L1(1) = L1(1) U ^t(Ci),并将 U1 ⑴,U1 ⑵,......,U1(m)按照 Liw的大小进行非降序排列,得到新的U' 1(1),U' 1(2),……’U, 1(ffl); [0031 ] 步骤5:将U' i (m)赋值给U1 (m),使得 Li ⑴ < L1 ⑵......,< L1 (m); 步骤6:判断i是否为X,若不是,则i = i+Ι,返回步骤4 ;若是,贝U按照l_m的顺序将仏(111)依次分配到序号为Ι-m的核上进行序列比对。 所述聚类方法为C本文档来自技高网
...

【技术保护点】
一种运行于多核计算机平台的并行通用序列的比对方法,其特征在于,首先应用聚类方法对待比对序列集合以已知功能序列作为聚类中心进行划分得到多个序列子集;然后将多个序列子集分配到各计算机核上独立地与各自的聚类中心进行比对,得到序列子集的比对结果;最后应用渐进式方法对序列子集的比对结果进行合并,得到待比对序列集合的比对结果矩阵A,完成序列比对;所述矩阵A满足以下条件:(1)矩阵A中的元素aij,aij∈Σ∪{·};其中,Σ表示生物序列字母表,若为DNA序列,则Σ={A、C、G、T};若为蛋白质序列,则Σ为20个简单氨基酸分子;{·}表示在序列比对过程中插入的空格;(2)若删除空格,矩阵A中的行ai=ai1ai2…ail(1≤i≤n)即为待比对序列集合中的某一序列;(3)矩阵A中不存在全为空格的列。

【技术特征摘要】
1.一种运行于多核计算机平台的并行通用序列的比对方法,其特征在于,首先应用聚类方法对待比对序列集合以已知功能序列作为聚类中心进行划分得到多个序列子集;然后将多个序列子集分配到各计算机核上独立地与各自的聚类中心进行比对,得到序列子集的比对结果;最后应用渐进式方法对序列子集的比对结果进行合并,得到待比对序列集合的比对结果矩阵A,完成序列比对; 所述矩阵A满足以下条件: (1)矩阵A中的元素aij;aij e Σ U {.}; 其中,Σ表示生物序列字母表,若为DNA序列,则Σ = {A、C、G、T};若为蛋白质序列,则Σ为20个简单氨基酸分子;{.}表示在序列比对过程中插入的空格; (2)若删除空格,矩阵A中的行=anai2…an(l彡i彡η)即为待比对序列集合中的某一序列; (3)矩阵A中不存在全为空格的列。2.根据权利要求1所述的运行于多核计算机平台的并行通用序列的比对方法,其特征在于,所述将序列子集分配到各计算机核上独立地进行比对的具体过程如下: 1)计算每个序列子集Ci所需的比对时间t(Ci),i表示第i个序列子集; 2)根据序列子集的比对时间,以各个核的负载平衡为分配目标,采用最长处理时间优先的启发式序列子集分配方法,将序列子集分配到各个计算机核上执行比对操作。3.根据权利要求2所述的运行于多核计算机平台的并行通用序列的比对方法,其特征在于,所述序列子集所需的比对时间计算方法包括以下两种: Dt(Ci) ο- NXL,比对时间t (Ci)正比于NXL ;2)t (Ci) ο- aN4+bNL2,比对时间 t (Ci)正比于 aN4+bNL2 ; 其中,其中N和L分别为序列子集Ci所包含的序列数目和所有序列的平均长度; a和b均为拟合系数,从序列相似度在90%以上的已知序列中,随机挑选序列构建序列子集,利用现有比...

【专利技术属性】
技术研发人员:李肯立朱香元唐卓徐雨明李克勤肖正
申请(专利权)人:湖南大学
类型:发明
国别省市:湖南;43

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

1