一种基于gpu加速的化学结构多样性分析方法

文档序号:6568278阅读:300来源:国知局
专利名称:一种基于gpu加速的化学结构多样性分析方法
技术领域
本发明总体涉及化学结构多样性分析方法。特别涉及基于图形处理单元 (graphics processing unit, GPU)加速的化学结构多样性分析方法。
背景技术
随着高通量合成技术、高通量物质分离提取技术的成熟、完善,化学结构数据库的规模已由过去的成千上万个化学结构(每个化学结构表示一种化学品或化合物)增长到现在的成百万,甚至上千万个化学结构。这给工业界购买新颖的原料、先导化合物的筛选与设计带来了挑战。例如,如果一家机构已经拥有200万个化合物,欲再购买200万个化合物, 那么他们将不仅需要避免单个化合物的重复,也要避免相似化合物的重复。为此,要对已有的化合物库与将要选择的化合物库进行化学结构多样性分析。这类分析涉及化学结构相似度计算,为了比较化学结构数目分别为M和N的两个化学结构的数据库,需要进行M χ N次的化学结构相似度计算,而每两个化学结构相似度的计算涉及I χ K次分子结构片段的比较。因此,当数据库化合物数量达到数十万以上规模时,所需的计算时间成本急速上扬,甚至需要经年累月方能完成此类计算。因此,很多企业和科研机构放弃这类分析,而购买大量重复原料,设计和筛选大量化学结构多样性贫乏的化合物,这造成了资源浪费、环境污染、 成本居高不下以及创新效率降低。近年来,用GPU并行浮点计算能力来加速科学计算逐渐成为国际趋势。一个GPU 卡,相当于488个中央处理单元(CPU)的运算能力,其潜能令人振奋。但是,为了把GPU的潜能发挥出来,需要将计算问题并行化。因此目前亟需一种通过将计算问题并行化,而实现为大规模化学结构数据库的扩充和筛选提供基于GPU加速的化学结构多样性分析方法。

发明内容
本发明旨在提供一种通过将计算问题并行化,而为大规模化学结构数据库的扩充和筛选提供基于GPU加速的化学结构多样性分析的解决方案。由此解决化学结构多样性分析耗时长的问题,从而使企业和科研机构能有效进行化学结构多样性分析,避免购买大量重复原料,提高化学结构多样性储备,进而能节省资源、保护环境、降低成本以及提高创新效率。为此,本发明提供一种基于GPU加速的化学结构多样性分析方法,其中包括输入设备、显示装置、主存储器、帧缓存、存储设备、处理器,从而完成化学结构数据库之间的比较。其中,输入设备用于输入化学结构数据库的存储位置信息,相似度阈值。显示装置用于显示输入信息和结果信息。主存储器用于存储执行中的计算机程序,分解化学结构得至IjUfifimi石马白勺才卜〒(Chemical Environment Encoded Dendric Topologic Fragments, CEEDTFs),并将CEEDTFs映射到N维位图上(N > = 32,且N为整数),得到的数据以二进制序列形式储存于主存储器。帧缓存用于存储GPU端执行的计算机程序,将
4CEEDTF s映射到N维位图上(N>= 32,且N为整数),得到的数据以二进制序列化形式存储于帧缓存。存储设备用于存储计算机程序文件、以连接表形式保存的化学结构数据库的 SD文件和程序运行结果文件。处理器是主要的数据处理设备,包括中央处理单元(CPU)和图形处理单元(GPU)。 CPU用于分析输入设备输入的化学结构数据库中的结构数据,分解化学结构得到CEEDTFs, 并将CEEDTFs映射到N维位图上(N > = 32,且N为整数)得到二进制数据。GPU用于比较这些二进制数据,计算结构相似度和多样性。根据本发明的一个方面,提供了一种基于图形处理单元加速的化学结构多样性分析方法,所述方法包括(a)CPU读取存储设备中的查询库和被查询库中的化学结构连接表数据到主存储器;(b)将该查询库和该被查询库中的化学结构连接表数据分别分解为查询库化学环境编码的树状拓扑子图集和被查询库化学环境编码的树状拓扑子图集,并存储在主存储器中;(c)将所述查询库化学环境编码的树状拓扑子图集和所述被查询库化学环境编码的树状拓扑子图集分别与化学环境编码的树状拓扑子图模板进行比较,以分别生成查询库二进制数据和被查询库二进制数据,并存储在主存储器中;(d)将所述查询库二进制数据和所述被查询库二进制数据从所述主存储器传输至帧缓存;(e)GPU从该帧缓存中读取所述查询库二进制数据和所述被查询库二进制数据,并计算两者的相似度值;(f)将所述相似度值由帧缓存传输至主存储器中;(g)CPU从该主存储器中读取该相似度值,将它输出至存储设备。优选地,步骤(b)中将化学结构连接表数据分解为化学环境编码的树状拓扑子图集,进一步包括CPU遍历该化学结构中的所有原于,以每个原子为中心得到一个化学环境编码的树状拓扑子图;将得到的所有化学环境编码的树状拓扑子图中不重复的子图合并为化学环境编码的树状拓扑子图集。优选地,所述化学环境编码的树状拓扑子图模板包括所有化学环境编码的树状拓扑子图中不重复的子图,且其中每个子图在该模板中均具有一个不同的唯一的编号。优选地,步骤(C)中将化学环境编码的树状拓扑子图集与化学环境编码的树状拓扑子图模板进行比较以生成二进制数据,进一步包括在主存储器中取N/8个字节的存储空间,其中N为该化学环境编码的树状拓扑子图模板中拓扑子图的数目;CPU将化学环境编码的树状拓扑子图集与化学环境编码的树状拓扑子图模板进行比较;如果该拓扑子图集中的某个子图在该拓扑子图模板中存在,则记下该拓扑子图在模板中的编号,并在所取出的存储空间中对应于编号的位上标记1,如果不存在,则标记0 ;比较完毕,得到对应于该拓扑子图集的二进制数据。优选地,步骤(e)中计算两者的相似度值,通过以下计算公式计算
权利要求
1.一种基于图形处理单元加速的化学结构多样性分析方法,所述方法包括(a)采用中央处理单元读取存储设备中的查询库和被查询库中的化学结构连接表数据到主存储器;(b)将该查询库和该被查询库中的化学结构连接表数据分别分解为查询库化学环境编码的树状拓扑子图集和被查询库化学环境编码的树状拓扑子图集,并存储在主存储器中;(c)将所述查询库化学环境编码的树状拓扑子图集和所述被查询库化学环境编码的树状拓扑子图集分别与化学环境编码的树状拓扑子图模板进行比较,以分别生成查询库二进制数据和被查询库二进制数据,并存储在主存储器中;(d)将所述查询库二进制数据和所述被查询库二进制数据从所述主存储器传输至帧缓存;(e)采用图形处理单元从该帧缓存中读取所述查询库二进制数据和所述被查询库二进制数据,并计算两者的相似度值;(f)将所述相似度值由帧缓存传输至主存储器中;(g)采用中央处理单元从该主存储器中读取该相似度值,将它输出至存储设备。
2.如权利要求1所述的基于图形处理单元加速的化学结构多样性分析方法,其中步骤(b)中将化学结构连接表数据分解为化学环境编码的树状拓扑子图集,进一步包括中央处理单元遍历该化学结构中的所有原子,以每个原子为中心得到一个化学环境编码的树状拓扑子图;将得到的所有化学环境编码的树状拓扑子图中不重复的子图合并为化学环境编码的树状拓扑子图集。
3.如权利要求1或2所述的基于图形处理单元加速的化学结构多样性分析方法,其中所述化学环境编码的树状拓扑子图模板包括所有化学环境编码的树状拓扑子图中不重复的子图,且其中每个子图在该模板中均具有一个不同的唯一的编号。
4.如权利要求3所述的基于图形处理单元加速的化学结构多样性分析方法,其中步骤(c)中将化学环境编码的树状拓扑子图集与化学环境编码的树状拓扑子图模板进行比较以生成二进制数据,进一步包括在主存储器中取N/8个字节的存储空间,其中N为该化学环境编码的树状拓扑子图模板中拓扑子图的数目;中央处理单元将化学环境编码的树状拓扑子图集与化学环境编码的树状拓扑子图模板进行比较;如果该拓扑子图集中的某个子图在该拓扑子图模板中存在,则记下该拓扑子图在模板中的编号,并在所取出的存储空间中对应于编号的位上标记1,如果不存在,则标记0 ; 比较完毕,得到对应于该拓扑子图集的二进制数据。
5.如权利要求1、2和4中任一所述的基于图形处理单元加速的化学结构多样性分析方法,其中步骤(e)中计算两者的相似度值,通过以下计算公式计算
6.如权利要求3所述的基于图形处理单元加速的化学结构多样性分析方法,其中步骤 (e)中计算两者的相似度值,通过以下计算公式计算
7.如权利要求1-6任一所述的基于图形处理单元加速的化学结构多样性分析方法,其中所述查询库是一个或多个。
8.如权利要求1-6任一所述的基于图形处理单元加速的化学结构多样性分析方法,其中所述被查询库是一个或多个。
全文摘要
一种基于GPU加速的化学结构多样性分析方法,包括(a)读取存储设备中的查询库和被查询库中的化学结构连接表数据到主存储器;(b)将该数据分别分解为查询库和被查询库的化学环境编码的树状拓扑子图集,并存储在主存储器中;(c)将查询库和被查询库的化学环境编码的树状拓扑子图集分别与树状拓扑子图模板进行比较,以分别生成查询库和被查询库的二进制数据,并存储在主存储器中;(d)将查询库和被查询库的二进制数据从主存储器传输至帧缓存;(e)GPU从该帧缓存中读取该查询库和被查询库的二进制数据,并计算两者的相似度值;(f)将相似度值由帧缓存传输至主存储器中;(g)CPU从主存储器中读取相似度值,并输出至存储设备。
文档编号G06F19/00GK102436545SQ201110309808
公开日2012年5月2日 申请日期2011年10月13日 优先权日2011年10月13日
发明者严鑫, 徐峻 申请人:苏州东方楷模医药科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1