1.一种基于八叉树的计算节点负载均衡方法,其特征在于,所述方法包括:获取计算区域,将计算区域划分为多个子区域,所述计算区域是对爆炸事件模拟仿真过程涉及到计算的空间;对所述计算区域进行递归划分,直到子区域中最小区域的负载值均小于预设负载值,得到所述计算区域对应的八叉树结构,所述八叉树结构中叶节点对应子区域中最小区域;根据所述八叉树结构,确定所述计算区域的空间填充曲线,按照所述空间填充曲线的填充顺序和所述叶节点的负载值,依次将叶节点分配到不同的计算节点上,使得各计算节点的负载值均衡,当计算节点负载值的差距值大于预设差距值,重新计算叶节点的负载值,根据所述叶节点的负载值,重新分配叶节点到计算节点上,使得计算节点的负载值重新均衡;其中,所述当计算节点负载值的差距值大于预设差距值,重新计算叶节点的负载值,包括:在模拟仿真过程中,根据预设时间间隔,比较计算节点中最大负载值和最小负载值的差距值是否大于预设差距值;若是,则判断八叉树结构中叶节点的负载值是否大于预设负载值;若是,则将大于预设负载值的叶节点对应的最小区域进行划分,直到最小区域的负载值均小于预设负载值,得到新的八叉树结构,更新空间填充曲线,并重新计算新的八叉树结构中叶节点的负载值;根据更新后的空间填充曲线的填充顺序和叶节点的负载值,依次将叶节点分配到不同的计算节点上,使得各计算节点的负载值均衡;否则,重新计算八叉树结构中叶节点的负载值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述八叉树结构,确定所述计算区域的空间填充曲线,具体包括:从所述八叉树结构的根节点开始遍历,为每个节点分配对应的编码,递归地访问其子节点,直到到达叶节点,为该叶节点分配编码;将从根节点到达叶节点的路径中所经过节点的编码表示为编码序列,则编码序列为该叶节点的Z曲线编码;通过深度优先搜索法遍历所述八叉树结构,得到所述八叉树结构中所有叶节点的Z曲线编码;使用字典序对所述叶节点的Z曲线编码进行排序,得到一维叶节点队列,所述叶节点队列即为所述计算区域的空间填充曲线。
3.根据权利要求1所述的方法,其特征在于,所述按照所述空间填充曲线的填充顺序和所述叶节点的负载值,依次将叶节点分配到不同的计算节点上,使得各计算节点的负载值均衡,具体包括:根据所述子区域中最小区域承载的计算任务,确定各所述最小区域的负载值,所述最小区域的负载值即为对应叶节点的负载值;按照所述空间填充曲线的填充顺序,依次将当前填充区域对应的叶节点分配到计算节点,直到该计算节点的负载到达预设负载阈值;继续分配下一填充区域对应的叶节点到另一计算节点,直到所有填充区域都被分配完成。
4.根据权利要求1所述的方法,其特征在于,所述当计算节点负载值的差距值大于预设差距值,重新计算叶节点的负载值,具体包括:在模拟仿真过程中,根据预设时间间隔,比较计算节点中最大负载值和最小负载值的差距值是否大于预设差距值;若是,则判断所述八叉树结构中叶节点的负载值是否大于预设负载值;若是,则将大于预设负载值的叶节点对应的最小区域进行划分,直到最小区域的负载值均小于预设负载值,得到新的八叉树结构,更新所述空间填充曲线,并重新计算新的八叉树结构中叶节点的负载值;否则,重新计算所述八叉树结构中叶节点的负载值。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:对所述计算区域中涉及的不同计算任务的复杂度进行量化,所述计算任务包括物质点法计算任务、耦合物质点有限差分法计算任务和耦合物质点有限差分有限元法计算任务中的一个或多个;根据所述物质点法计算任务中物质点数量、所述耦合物质点有限差分法计算任务中流体网格数量和所述耦合物质点有限差分有限元法计算任务中杆单元数量,确定所述计算区域中子区域的负载值和叶节点的负载值。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:在所述计算节点之间设置临时缓冲区,所述临时缓冲区用于存放所述计算节点的待传输数据。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:所述计算节点之间采用非阻塞方式通信。
8.一种基于八叉树的计算节点负载均衡装置,其特征在于,所述装置包括:第一处理模块,用于获取计算区域,将计算区域划分为多个子区域,所述计算区域是对爆炸事件模拟仿真过程涉及到计算的空间;第二处理模块,用于对所述计算区域进行递归划分,直到子区域中最小区域的负载值均小于预设负载值,得到所述计算区域对应的八叉树结构,所述八叉树结构中叶节点对应子区域中最小区域;第三处理模块,用于根据所述八叉树结构,确定所述计算区域的空间填充曲线,按照所述空间填充曲线的填充顺序和所述叶节点的负载值,依次将叶节点分配到不同的计算节点上,使得各计算节点的负载值均衡;第四处理模块,用于当计算节点负载值的差距值大于预设差距值,重新计算叶节点的负载值,根据所述叶节点的负载值,重新分配叶节点到计算节点上,使得计算节点的负载值重新均衡;所述第四处理模块,用于在模拟仿真过程中,根据预设时间间隔,比较计算节点中最大负载值和最小负载值的差距值是否大于预设差距值;若是,则判断八叉树结构中叶节点的负载值是否大于预设负载值;若是,则将大于预设负载值的叶节点对应的最小区域进行划分,直到最小区域的负载值均小于预设负载值,得到新的八叉树结构,更新空间填充曲线,并重新计算新的八叉树结构中叶节点的负载值;根据更新后的空间填充曲线的填充顺序和叶节点的负载值,依次将叶节点分配到不同的计算节点上,使得各计算节点的负载值均衡;否则,重新计算八叉树结构中叶节点的负载值。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一项所述基于八叉树的计算节点负载均衡方法。