基于GPGPU的生物序列快速比对

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3 8卷 第 4期
V_ _ 0 38 l N O4 .





21 0 2年 2月
Fe r a y 01 b u r 2 2
Co mpu e t rEng n e i i e rng
・ 开发研究与设计技术 ・
文 编号 1 m 3 8 0 ) -21 文 标 码: 章 : o - 4 ( 10 一 4 4 o 22 2 0 — 献 识 A
中 分 号 T3 图 类 : P9 1
基 于 G G U 的生物序 列快速 比对 P P
马海晨 ,韦 刚,吴 百蜂
( 旦大学计算机科 学技术学院 ,上海 2 0 3 ) 复 043

要 : C UG U异构平台下 , 出一种 高效 的生物序列 比对 方案 。该方案利用 G U 的并行 处理 能力 , 在 P —P 提 P 通过对读 延迟 、写延迟、重 组
h t o e e u l fr T e s lt n r - r e S t— tr n S ) lo i m n Op n lt r , e r a ie h lo i m d p eGP ee g n o s a o m. h oui e w i mi Waema ( W ag r h i r p t o t h t e CL paf m ro g n z ste a r h t a a t h U o g t O t
sa cn算 法 的 加速 比都 不 高 。文 献 【】 现 了 G U 版 本 的 sa 5实 P cn
在 S 算法 中,写的数据分别为 F值 和 Ⅳ 值。F值和 W
匹配对 结果有更好的效 果 ,因此 ,在 S 算法 的基础 上提 出 W 了 a ie a dl fn pmo e,即采用 2个罚分 :G 和 G 。改造 后的算 g 法描 述如下 :
El

库总数 已达 88 。生物信息数据库不仅 多,而且大 。例如 5个 G n ak库就 有 165 3167 6 碱基 和 1 84 1 9 eB n 0 3 5 5 个 0 3 2条序 6 列 。到 2 0 0 6年 ,序列数据总量约有 l0亿个碱基 。在 1 1 8年 间,数据量增长 了近十 万倍 。
Fa t i n e t0 o o i a e u n e s g m n f Al Bi l g c l q e c s S
Ba e n G e e a ur o eG r p i o e s rUn t sd0 n r l P p s a h c Pr c s o i
函数及 数据传输进行优化 ,在 O e C p n L框架 下重构 S i — t m n m t Wa r a 算法 ,加快 生物序 列比对 速度。实验结果证 明,与 C U 上传 统的串行 h e P 算法相 比 , 算法最高可获得约 10 的性能提升 。 该 0倍
关健词 :生物 信息学 ;序列 比对 ;通 用图形 处理器 ;S i . t a mt Wa r n算法 ;O eC h e m pn L框架
32 数据布 局优化 . 在一般应用 中,数据存取是很常用的操作 。而一般存储
器 的工作频率比计算单元都低几个数量级 ,导致数据存取成
Waern 方式利用了 D vf t o P矩 阵中每条对角线中元素 计算 独立 的特性 ,每次并行地计算对角线 中的各个单元 ,再通过 循环计算每条对角线 ,直到完成。 VL E方式是 Waern 方式 的一种变形。VL vf t o E方式将多 个矩阵单元合 并为一个块 。这样传输 的单元就变为块 ,从而
[ sr c]T i pp rpee t a hg l fet e boo ia e u ne l n n ouin bsd o U— rp i Poesn rU iGP ) Ab tat hs ae rsns ihy efci ilgclsq e csai metslt ae n CP G a hc rcsig nt U v g o (
( p nC mp t gL n ug ) O e o ui ag ae编程模型 。 n
矩 阵。
2 O eC . 2 pn L编程模 型
O eC p n L为异构平 台提供 了开放 的框架标准 。 O eC 在 pn L 中,硬件结构分为 HO T和 C mp t Unt S o ue i两部分。H S O T的
减少ቤተ መጻሕፍቲ ባይዱ信成本。
为 应用的瓶 颈 J 。因此 ,一般的体系结构 皆对存储子 系统进
行 了优化 。 GP 在 U体系结构 中, 对全局 内存的存取 进行 了优 化 。当存储子系统收到连续的地址请求时 ,系统可 以把 所有
请 求打包为一个请求 。从而可 以在一个请求中存取 所有的数
据 。由于 G U采用典型的 SMD执行方式 ,即一次迭代中的 P I 所有计算单元会在 同一个 时钟周期 内发 出存取请求 ,当存取 请求的地址不连 续时,G U程序(en1的运行就会停 顿 ,因 P k re) 此理想的存取模 式是每个计算单元在 同一个时钟时所读写的 数据地址是连续的 ,即第 1个计算单元读第 1个数据 ,而 第k 个计算单元读第 k 个数据 。 321 写延迟优化 ..
p o e sn a a l y r c s i g c p bi t ,g e ty i r v s t e e f c i e e s o l o i m .Ex e i n a e ul s ws t a h o ut n ha 1 0 tme e f r a c i r a l mp o e h fe tv n s f a g rt h p r me t l r s t ho h t t e s l i s i s p ro o 0 m ne
a c i c u e a d a p i s o t i ai n o mo a c s i g lt n y a d o t ia i n o e me  ̄ d p o m e t u l t ie U’ a a l l r h t t r n p le p i z to f me  ̄ c e sn a e c n p i z to f t mo e m m h e l y n ,f l u i z s GP S p r l y l e
作用在于实现程序执行 的控制 。C m u n 负责主要的计 o pt U i e t 算 。O eC 作 为一个异构平 台的通 用编程模 型 ,其优势在 pn L 于通过显式并行获得极高 的并 行性 ,通 过合 理的内存映射将
作者倚介 :马海 晨( 8 -) 1 6 ,男,硕士 , 研方向 :图像处理 ,并行 9 主
i c e s a h e i l l o i m n CPU n r a e t n t e s ra g rt h a h i
/, ●● ●
/, ●● ● ,
| ywod ]bono ais sq e c l n n; e ea up s ahcPoesn iGP U) S t— t ma(W) loi m; e C Ke r s iifr t ;e u neai me tG n rl ro e p i rcsigUnt GP ; mi Wae nS 层 t Op n L m c g P Gr ( h r a r g h
有单元 。 S T计算 H值完全可 以并行地进行 ,同时 ,随着数据 WA 库序 列长 度的增加 ,并行度也会相应增加 ,具有相当好的伸 缩性 。但是 ,算法 的第() 限制 了总体性能 的提高 。因为 2步 第() 2步是典型的并行 sa cn算法 。 已有 的资料中可知 , 从 并行

文在 C U— P P G U异构平 台下 ,充分利用 G U的高计算能力 , P 提出 了一个加速生物序列 比对 的方案 。
般可通过 替换矩 阵查询到 ,如 B OS M6 L U 2矩阵、P AM2 0 5
2 背景知识
本文 的工 作主 要涉及两部分 内容 :S 算法和 Opn L W eC
21 S 算法 . W S 算法是经典的序列 比对算法 。本质上 ,它 是为 了找 W 出 2个序 列之问的最大公共子 串,而且允许在 比对 过程中插 入空 白和错配 。因此 ,算法的整个过程就是计算一个 DP矩 阵。D P矩 阵中的每个值代表 当前 2个子 串之间的最大公共
子 串的得 分。而整个序列之 间的最大公共子 串可 以通过矩阵 的最大值沿路返 回找到 。
访存延迟 遮 蔽 ,使之 与计 算过程 重叠 ,以达到 吞吐率 的最
大化。
库序 列之 问。生物序列数据库 中的序列一般都有几百万条以
上 。因此,这种 方式具有很高 的并行度 。另外 ,随着数据库
大小的增加,并行度也会相应增加 。
3 生物序列比对算法实现及优化
S 加速算法一般有 Waern W vf t方式 、V E 方式 和 o J L S T方式 3种 。 WA
r m wo k fa e r

、 、●

巨J
广






●/
DOI 1 .9 9 .s.0 03 2 .0 20 .7 : 03 6 /i n10 —4 82 1 .40 9 js
& D
l 概述
数据库是 生物 信息学的主要内容 ,各种数据库几乎覆盖 了生命科 学的各个领域 。据统计 ,至 2 0 0 6年,生物信息数据
性能 的快速提高及 其近年来 不断改进的可编程性 ,通用 图形 处理器( nrl up s U G GP ) Geea P roe GP , P U 的应用越来越广泛 。 本



m a x
其 中,E 表示在 目标序列 中插入空 白的得分 ;F代表在查询 序列 中插入空 白的得 分 ;H 是 当前 2条子序列 的最大得分 S oe 表示第 f cr ; 个字符 与第 个字符 匹配得分 。这个得分
这 2种方法的最大缺点是并行度不高。因为只有在计算
主反对角线时 ,并行 度才达到最大值 。 S T方式下计算 D WA P矩 阵的过程如下 :() 1 并行地计算 E值或 F值和 日值 ; 2使 用并行 的修正函数对前一步计 算出 ()
来 的 日值修正 ; 3以 同样 的方式计 算下一行 ,直到计算完所 ()
M A i he W EIGa g W U i e g Ha - n, c n, Ba - n f
( c o l f mp tr ce c , u a iest, h n h i 0 4 3 C i a S h o o Co ue i e F d nUnv ri S a g a 2 0 3 , h n ) S n y
序列 比对 的过程是通过序列 比对 算法 在生物序列数据库

: m a x


= m ax
中寻找相 似的序 列。S S t— tr n算法 是典 型的序列 W(mi Waema) h 比对算法 。该算法 以动态规划的方式寻找 2条序列问所有的 可能 比对 。随着图形处理器( rp i Po es g nt P G a hc rcsi rU i n ,G U)
计 算 ;韦 刚 ,硕士 ;吴 百峰 ,教授
文献 【】 l的研究实验证明 ,在 生物信息 学中,连续的空 白
收稿 日期 :2 1-7 6 0 0 — 1 2
Ema :m hi e@ht i o . i aa hn o l r l c ma. n c
22 4





2 1 年 2月 2 02 0日
相关文档
最新文档