多核计算机中的问题处理方法、装置、设备、存储介质与流程

摘要: 本申请涉及计算机,尤其涉及一种多核计算机中的问题处理方法、装置、设备、存储介质。背景技术:1、在分子动力学(moleculardynamics,md)模拟中,通...
多核计算机中的问题处理方法、装置、设备、存储介质与流程

本申请涉及计算机,尤其涉及一种多核计算机中的问题处理方法、装置、设备、存储介质。

背景技术:

1、在分子动力学(molecular dynamics,md)模拟中,通常由多个计算核并行协作,每个计算核负责计算所分配原子的作用力,并通过核间通信交换数据,最终计算每个原子受到的力,更新原子的坐标和速度。该过程循环执行数万至数亿轮,以模拟原子体系的动态演化。

2、但此技术在故障在发生后不会立刻导致计算机停止计算,因此不会立刻被维护人员察觉,在故障被察觉后,已经循环了很多轮,此时故障发生时的现场已经遗失,造成故障现场难以捕获的问题。

技术实现思路

1、为了解决上述技术缺陷之一,本申请提供了一种多核计算机中的问题处理方法、装置、设备、存储介质。

2、本申请第一个方面,提供了一种多核计算机中的问题处理方法,该方法包括:

3、各计算核在分子动力学模拟时,获取每一轮次的第一受力分量,且各轮第一受力分量标注轮次;其中,任一计算核在任一轮的第一受力分量为该轮得到的全部原子在x、y、z三个方向上的受力分量之和;

4、在对分子动力学模拟进行错误发现时,重新执行各计算核的各轮分子动力学模拟,且获取每一轮次的第二受力分量;若相同轮次的第二受力分量与第一受力分量不同,则确定该轮次发生计算故障;若多次重新执行各计算核的各轮分子动力学模拟后,依然未出现发生计算故障的轮次,则确定计算正确。

5、可选地,任一计算核在任一轮的第一受力分量的存储地址为累加结果存储基地址+轮次偏移。

6、可选地,确定该轮次发生计算故障之后,还包括:

7、暂停程序执行,保存该轮次的完整计算数据,将其确定为问题现场数据,并记录故障发生的具体轮次。

8、可选地,保存该轮次的完整计算数据之后,还包括:

9、重新执行各计算核的首轮至该轮次的分子动力学模拟,得到正确计算现场数据。

10、可选地,各计算核内部持续维护一个容量为n轮的环形缓冲区,实时存入最近n轮的受力累加和及其对应的轮次;其中,受力累加和,和均为轮次索引,为第轮的受力累加和,为第轮计算核接收到的原始受力数据;

11、该方法还包括:

12、基于缓冲区内的受力累加和,确定动态异常评分;

13、当动态异常评分自适应阈值时,锁定并固化环形缓冲区中第轮前后各m轮的现场数据,向计算核发送暂停指令。

14、可选地,;

15、其中,为轮次索引,为第轮的受力累加和,为环形缓冲区内所有受力累加和的均值,为环形缓冲区内所有受力累加和的标准差。

16、可选地,;

17、其中,为置信度系数,为偏置系数,为环形缓冲区内所有受力累加和的均值,为环形缓冲区内所有受力累加和的标准差。

18、本申请第二个方面,提供了一种多核计算机中的问题处理装置,该装置包括:

19、第一处理模块,用于在各计算核在分子动力学模拟时,获取每一轮次的第一受力分量,且各轮第一受力分量标注轮次;其中,任一计算核在任一轮的第一受力分量为该轮得到的全部原子在x、y、z三个方向上的受力分量之和;

20、第二处理模块,用于在对分子动力学模拟进行错误发现时,重新执行各计算核的各轮分子动力学模拟,且获取每一轮次的第二受力分量;若相同轮次的第二受力分量与第一受力分量不同,则确定该轮次发生计算故障;若多次重新执行各计算核的各轮分子动力学模拟后,依然未出现发生计算故障的轮次,则确定计算正确。

21、可选地,任一计算核在任一轮的第一受力分量的存储地址为累加结果存储基地址+轮次偏移。

22、可选地,该装置,还包括:第三处理模块,用于暂停程序执行,保存该轮次的完整计算数据,将其确定为问题现场数据,并记录故障发生的具体轮次。

23、可选地,该装置,还包括:第四处理模块,用于重新执行各计算核的首轮至该轮次的分子动力学模拟,得到正确计算现场数据。

24、可选地,各计算核内部持续维护一个容量为n轮的环形缓冲区,实时存入最近n轮的受力累加和及其对应的轮次;其中,受力累加和,和均为轮次索引,为第轮的受力累加和,为第轮计算核接收到的原始受力数据;

25、该装置,还包括:第五处理模块,用于基于缓冲区内的受力累加和,确定动态异常评分;当动态异常评分自适应阈值时,锁定并固化环形缓冲区中第轮前后各m轮的现场数据,向计算核发送暂停指令。

26、可选地,;

27、其中,为轮次索引,为第轮的受力累加和,为环形缓冲区内所有受力累加和的均值,为环形缓冲区内所有受力累加和的标准差。

28、可选地,;

29、其中,为置信度系数,为偏置系数,为环形缓冲区内所有受力累加和的均值,为环形缓冲区内所有受力累加和的标准差。

30、本申请第三个方面,提供了一种电子设备,包括:

31、存储器;

32、处理器;以及

33、计算机程序;

34、其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如上述第一个方面所述的方法。

35、本申请第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序;所述计算机程序被处理器执行以实现如上述第一个方面所述的方法。

36、本申请提供一种多核计算机中的问题处理方法、装置、设备、存储介质,该方法包括:各计算核在分子动力学模拟时,获取每一轮次的第一受力分量,且各轮第一受力分量标注轮次;在对分子动力学模拟进行错误发现时,重新执行各计算核的各轮分子动力学模拟,且获取每一轮次的第二受力分量;若相同轮次的第二受力分量与第一受力分量不同,则确定该轮次发生计算故障;若多次重新执行各计算核的各轮分子动力学模拟后,依然未出现发生计算故障的轮次,则确定计算正确。本申请可以在多核计算机运行分子动力学模拟等大规模并行计算过程中,发生概率性计算错误时,可在不改变计算内容、无需人工值守的前提下,自动且高效地复现计算错误、实时捕获错误发生轮次,并获取该轮次的问题现场数据与正确现场数据,使得故障复现不再需要人工处理,解决了人工处理效率低、无法全天候运行、易出错导致故障现场难以捕获的问题。

1.一种多核计算机中的问题处理方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,任一计算核在任一轮的第一受力分量的存储地址为累加结果存储基地址+轮次偏移。

3.根据权利要求1所述的方法,其特征在于,所述确定该轮次发生计算故障之后,还包括:

4.根据权利要求1所述的方法,其特征在于,所述保存该轮次的完整计算数据之后,还包括:

5.根据权利要求1所述的方法,其特征在于,各计算核内部持续维护一个容量为n轮的环形缓冲区,实时存入最近n轮的受力累加和及其对应的轮次;其中,受力累加和,和均为轮次索引,为第轮的受力累加和,为第轮计算核接收到的原始受力数据;

6.根据权利要求5所述的方法,其特征在于,所述;

7.根据权利要求5所述的方法,其特征在于,所述;

8.一种多核计算机中的问题处理装置,其特征在于,所述装置包括:

9.根据权利要求8所述的装置,其特征在于,任一计算核在任一轮的第一受力分量的存储地址为累加结果存储基地址+轮次偏移。

10.根据权利要求8所述的装置,其特征在于,所述装置,还包括:第三处理模块,用于暂停程序执行,保存该轮次的完整计算数据,将其确定为问题现场数据,并记录故障发生的具体轮次。

11.根据权利要求8所述的装置,其特征在于,所述装置,还包括:第四处理模块,用于重新执行各计算核的首轮至该轮次的分子动力学模拟,得到正确计算现场数据。

12.根据权利要求8所述的装置,其特征在于,各计算核内部持续维护一个容量为n轮的环形缓冲区,实时存入最近n轮的受力累加和及其对应的轮次;其中,受力累加和,和均为轮次索引,为第轮的受力累加和,为第轮计算核接收到的原始受力数据;

13.根据权利要求12所述的装置,其特征在于,所述;

14.根据权利要求12所述的装置,其特征在于,所述;

15.一种电子设备,其特征在于,包括:

16.一种计算机可读存储介质,其特征在于,其上存储有计算机程序;所述计算机程序被处理器执行以实现如权利要求1-7任一项所述的方法。