System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种分子动力学模拟系统及方法技术方案_技高网

一种分子动力学模拟系统及方法技术方案

技术编号:40652018 阅读:22 留言:0更新日期:2024-03-13 21:29
本发明专利技术公开了一种分子动力学模拟系统及方法,涉及数据处理领域,为解决分子动力学模拟系统数据传输效率低的问题,该分子动力学模拟系统包括:计算高速链路交换模块,及与计算高速链路交换模块连接的第一共享内存、全域处理板卡组、区域处理板卡组和信息计算板卡组。本发明专利技术中,当主机、全域处理板卡组、区域处理板卡组和信息计算板卡组通过计算高速链路与第一共享内存互联后,均可访问第一共享内存中的数据,无需主机端进行数据转发,提升计算任务处理效率,从而提升了分子动力学模拟的效率。

【技术实现步骤摘要】

本专利技术涉及数据处理领域,特别涉及一种分子动力学模拟系统及方法


技术介绍

1、分子动力学(molecular dynamics,简称md)是一门结合了数学、物理、化学以及生物学等多门学科的前沿技术。一般来说,研究分子体系结构与性质的方法共分为:实验、理论研究和模拟三种。其中,分子动力学模拟将体系中的每个原子视为遵守牛顿第二定律的粒子,根据分子的势能函数,得到作用在每个原子上的力,给定初速度和演化的步长,利用牛顿运动定律求解运动方程,便得到原子在势能面上的运动轨迹。在一定的时间内,通过对体系中分子、原子运动状态的模拟,从而以动态方式观察体系随时间演化的行为。这为研究人员提供了相当于“计算显微镜”的东西,可以被用来揭示化学反应的微观物理过程,用于光合作用,新药寻找,纳米材料性质预测等。

2、目前常用的分子动力学软件有很多,大部分的分子动力学软件都可以在单片fpga(field programmable gate array,现场可编程逻辑门阵列)或者gpu(graphicsprocessing unit)上实现软件算法的部分卸载,释放cpu(central processing unit,中央处理器)资源。但是现有的方案做不到全硬件卸载,大部分控制工作还在cpu中进行,硬件板卡只是对特定部分算法进行加速,需要cpu将待加速数据下载到板卡,等待结果,再从板卡读取加速后的数据,之后不断重复这一个操作。其间存在数据从主机内存到硬件板卡的拷贝、pcie(peripheral component interconnect express,高速串行计算机扩展总线标准)传输延迟等问题,效率非常的低。而且不同硬件板卡之间没有高效的协同操作,比如第二板卡需要第一板卡的计算结果,需要cpu从中间协调,或者是采用固定的数据传输通道,不能满足灵活的数据传输需求。

3、因此,如何提供一种解决上述技术问题的技术方案是本领域技术人员目前需要解决的问题。


技术实现思路

1、本专利技术的目的是提供一种分子动力学模拟系统及方法,能够提升计算任务处理效率,从而提升了分子动力学模拟的效率。

2、为解决上述技术问题,本专利技术提供了一种分子动力学模拟系统,包括:

3、计算高速链路交换模块;

4、第一共享内存,与所述计算高速链路交换模块连接,以便所述计算高速链路交换模块上连接的全域处理板卡组、区域处理板卡组和信息计算板卡组对所述第一共享内存进行访问;

5、所述全域处理板卡组,用于当接收到中央处理器下发的计算任务,从所述第一共享内存中获取最新的时间片,基于所述最新的时间片中的全部粒子的信息计算各所述粒子受到的第一力值,将所述第一力值写入所述第一共享内存;

6、所述区域处理板卡组,所述区域处理板卡组包括多张区域计算板卡,每一所述区域计算板卡用于当接收到所述计算任务,从所述第一共享内存中获取最新的时间片,基于所述最新的时间片中与自身对应的粒子的信息计算与自身对应的粒子受到的第二力值,将所述第二力值写入所述第一共享内存;

7、所述信息计算板卡组,用于从所述第一共享内存中获取各个所述粒子的第一力值和第二力值,根据每一所述粒子的第一力值和第二力值在所述第一共享内存中更新每一所述粒子的信息。

8、在一示例性实施例中,所述分子动力学模拟系统还包括第二共享内存,所述计算高速链路交换模块包括相互连接的第一交换机和第二交换机,所述第一共享内存与所述第一交换机连接,所述区域处理板卡组和所述第二共享内存均与所述第二交换机连接,所述全域处理板卡组包括:

9、全域控制板卡,用于当接收到所述计算任务,从所述第一共享内存读取最新的时间片中的所有粒子的信息,将所有所述粒子的信息写入所述第二共享内存,利用所述第二共享内存中的中间计算数据计算每个所述粒子受到的长程力,所述长程力为所述第一力值;

10、多张全域计算板卡,每张所述全域计算板卡用于从所述第二共享内存中获取所有所述粒子的信息,对所有所述粒子的信息进行处理得到所述中间计算数据,并将所述中间计算数据写入所述第二共享内存。

11、在一示例性实施例中,所述全域控制板卡还用于通过插值算法将所有所述粒子的电荷插值到多个正方体的端点上,并计算系数矩阵,多个所述正方体基于对全部所述粒子所在的三维空间划分得到。

12、在一示例性实施例中,所述全域控制板卡还用于获取每一所述正方体的端点上的数据,将所述正方体的端点上的数据写入所述第二共享内存。

13、在一示例性实施例中,所述全域计算板卡具体用于对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存,从所述第二共享内存中获取求和结果数据,对所述求和结果数据进行逆三维傅里叶变换,得到逆变换结果数据,将所述逆变换结果数据写入所述第二共享内存;

14、所述全域控制板卡还用于将所述第二共享内存中的变换结果数据与所述系数矩阵进行求和计算,得到所述求和结果数据,将所述求和结果数据写入所述第二共享内存,从所述第二共享内存获取所述逆变换结果数据,通过逆差值算法对所述逆变换结果数据进行处理,得到各个所述粒子受到的长程力。

15、在一示例性实施例中,对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存的过程包括:

16、按xyz方向读取所述第二共享内存中的所述正方体的端点上的数据;所述xyz方向为所述正方体的端点上的数据的初始存储方向;

17、针对x方向,对预设通道数的yz面的数据进行三维快速傅里叶变换得到变换结果数据,将所述变换结果数据按照yzx方向写入所述第二共享内存;

18、按所述yzx方向读取所述第二共享内存中的数据;

19、针对y方向,对所述预设通道数的zx面的数据进行三维快速傅里叶变换得到变换结果数据,将所述变换结果数据按照zxy方向写入所述第二共享内存;

20、按所述zxy方向读取所述第二共享内存中的数据;

21、针对z方向,对所述预设通道数的xy面的数据进行三维快速傅里叶变换得到变换结果数据,将所述变换结果数据按照xyz的方向写入所述第二共享内存。

22、在一示例性实施例中,所述第二共享内存为乒乓内存,所述乒乓内存包括第一缓冲区和第二缓冲区;

23、按xyz方向读取所述第二共享内存中的所述正方体的端点上的数据的过程包括:

24、从所述第一缓冲区按xyz方向读取数据;

25、将所述变换结果数据按照yzx方向写入所述第二共享内存的过程包括:

26、将所述变换结果数据按照yzx方向写入所述第二缓冲区;

27、按所述yzx方向读取所述第二共享内存中的数据的过程包括:

28、从所述第二缓冲区按所述yzx方向读取数据;

29、将所述变换结果数据按照zxy方向写入所述第二共享内本文档来自技高网...

【技术保护点】

1.一种分子动力学模拟系统,其特征在于,包括:

2.根据权利要求1所述的分子动力学模拟系统,其特征在于,所述分子动力学模拟系统还包括第二共享内存,所述计算高速链路交换模块包括相互连接的第一交换机和第二交换机,所述第一共享内存与所述第一交换机连接,所述区域处理板卡组和所述第二共享内存均与所述第二交换机连接,所述全域处理板卡组包括:

3.根据权利要求2所述的分子动力学模拟系统,其特征在于,所述全域控制板卡还用于通过插值算法将所有所述粒子的电荷插值到多个正方体的端点上,并计算系数矩阵,多个所述正方体基于对全部所述粒子所在的三维空间划分得到。

4.根据权利要求3所述的分子动力学模拟系统,其特征在于,所述全域控制板卡还用于获取每一所述正方体的端点上的数据,将所述正方体的端点上的数据写入所述第二共享内存。

5.根据权利要求4所述的分子动力学模拟系统,其特征在于,所述全域计算板卡具体用于对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存,从所述第二共享内存中获取求和结果数据,对所述求和结果数据进行逆三维傅里叶变换,得到逆变换结果数据,将所述逆变换结果数据写入所述第二共享内存;

6.根据权利要求5所述的分子动力学模拟系统,其特征在于,对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存的过程包括:

7.根据权利要求6所述的分子动力学模拟系统,其特征在于,所述第二共享内存为乒乓内存,所述乒乓内存包括第一缓冲区和第二缓冲区;

8.根据权利要求5所述的分子动力学模拟系统,其特征在于,所述全域计算板卡包括:

9.根据权利要求1所述的分子动力学模拟系统,其特征在于,基于所述最新的时间片中与自身对应的粒子的信息计算与自身对应的粒子受到的第二力值的过程包括:

10.根据权利要求9所述的分子动力学模拟系统,其特征在于,所述中央处理器还用于配置预设截断半径;

11.根据权利要求10所述的分子动力学模拟系统,其特征在于,任意两个粒子之间的作用力包括成键作用力以及非成键作用力中所述预设截断半径以内的部分。

12.根据权利要求2所述的分子动力学模拟系统,其特征在于,所述信息计算板卡组包括合力计算板卡;

13.根据权利要求12所述的分子动力学模拟系统,其特征在于,在计算完成各所述粒子受到的第一力值后触发所述合力计算板卡的过程包括:

14.根据权利要求13所述的分子动力学模拟系统,其特征在于,所述合力计算板卡具体用于根据所述目标寄存器中各个标志位的值均为所述计算完成预设值后,在所述第一共享内存的目标时间片中获取每一所述粒子的所述第一力值和所述第二力值,基于每一所述粒子的所述第一力值和所述第二力值计算每一所述粒子的合力。

15.根据权利要求12所述的分子动力学模拟系统,其特征在于,所述信息计算板卡组还包括:

16.根据权利要求15所述的分子动力学模拟系统,其特征在于,所述信息计算板卡组还包括:

17.根据权利要求1所述的分子动力学模拟系统,其特征在于,所述中央处理器具体用于根据所述计算高速链路交换模块的第一硬件信息及各个所述全域处理板卡组、所述区域处理板卡组及所述信息计算板卡组对应的第二硬件信息生成并下发计算任务。

18.根据权利要求17所述的分子动力学模拟系统,其特征在于,所述中央处理器还用于设置每个所述计算任务对应的粒子的初始状态、模拟步长以及迭代次数;所述初始状态包括初始位置和初始速度。

19.根据权利要求1-18任意一项所述的分子动力学模拟系统,其特征在于,所述计算高速链路交换模块包括内部互联的第一类计算高速链路交换机以及内部不互联的第二类计算高速链路交换机;

20.一种分子动力学模拟方法,其特征在于,应用于如权利要求1-19任意一项所述的分子动力学模拟系统,所述分子动力学模拟方法包括:

...

【技术特征摘要】

1.一种分子动力学模拟系统,其特征在于,包括:

2.根据权利要求1所述的分子动力学模拟系统,其特征在于,所述分子动力学模拟系统还包括第二共享内存,所述计算高速链路交换模块包括相互连接的第一交换机和第二交换机,所述第一共享内存与所述第一交换机连接,所述区域处理板卡组和所述第二共享内存均与所述第二交换机连接,所述全域处理板卡组包括:

3.根据权利要求2所述的分子动力学模拟系统,其特征在于,所述全域控制板卡还用于通过插值算法将所有所述粒子的电荷插值到多个正方体的端点上,并计算系数矩阵,多个所述正方体基于对全部所述粒子所在的三维空间划分得到。

4.根据权利要求3所述的分子动力学模拟系统,其特征在于,所述全域控制板卡还用于获取每一所述正方体的端点上的数据,将所述正方体的端点上的数据写入所述第二共享内存。

5.根据权利要求4所述的分子动力学模拟系统,其特征在于,所述全域计算板卡具体用于对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存,从所述第二共享内存中获取求和结果数据,对所述求和结果数据进行逆三维傅里叶变换,得到逆变换结果数据,将所述逆变换结果数据写入所述第二共享内存;

6.根据权利要求5所述的分子动力学模拟系统,其特征在于,对所述正方体的端点上的数据进行三维快速傅里叶变换,得到变换结果数据,将所述变换结果数据写入所述第二共享内存的过程包括:

7.根据权利要求6所述的分子动力学模拟系统,其特征在于,所述第二共享内存为乒乓内存,所述乒乓内存包括第一缓冲区和第二缓冲区;

8.根据权利要求5所述的分子动力学模拟系统,其特征在于,所述全域计算板卡包括:

9.根据权利要求1所述的分子动力学模拟系统,其特征在于,基于所述最新的时间片中与自身对应的粒子的信息计算与自身对应的粒子受到的第二力值的过程包括:

10.根据权利要求9所述的分子动力学模拟系统,其特...

【专利技术属性】
技术研发人员:刘伟李仁刚徐亚明郭巍邓子为张德闪牟奇
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

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

1