CN114996198A - 跨处理器数据传输方法、装置、设备及介质 - Google Patents
跨处理器数据传输方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114996198A CN114996198A CN202210926784.5A CN202210926784A CN114996198A CN 114996198 A CN114996198 A CN 114996198A CN 202210926784 A CN202210926784 A CN 202210926784A CN 114996198 A CN114996198 A CN 114996198A
- Authority
- CN
- China
- Prior art keywords
- data
- current
- transmitted
- target
- processor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/17—Interprocessor communication using an input/output type connection, e.g. channel, I/O port
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种跨处理器数据传输方法、装置、设备及介质,涉及流体力学领域,包括:统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,基于起始处理器的数量确定出目标组数;基于数据长度和目标组数利用贪心算法对第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,基于位置标记将数据片段分配至对应的起始处理器;利用分组编号将每一起始处理器中数据片段进行收集得到与目标组数对应数量组第二待传输数据;基于分组编号将每一组第二待传输数据分组传输至当前目标通信域中的主处理器,主处理器利用广播通信将每一组第二待传输数据传输至当前目标通信域中的每一协处理器。实现提升数据传输执行速度的目的。
Description
技术领域
本发明涉及流体力学领域,特别涉及跨处理器数据传输方法、装置、设备及介质。
背景技术
当前,在计算流体力学领域,基于网格点壁面距离准则的重叠网格隐式装配方法已成为处理含多个相对运动部件的流场非定常数值仿真问题的关键技术之一。它不需要人工辅助网格的参与,能够同步完成挖洞边界的识别过程与重叠单元-贡献单元插值映射的计算过程,展现出自身高度的自动化水平,同时还能够使整个求解域上参与计算的控制单元总量保持最低,因而在航空、航天、航海等多个工程领域得到了日益广泛的应用。
然而,在分布式内存环境下,一方面,伴随着网格规模的增加以及网格相交区域的扩大,各部件网格所属的局部处理器分组之间需要传输的待检索几何数据总量迅速升高,极易在相关处理器上产生内存溢出与缓存溢出效应。另一方面,伴随着处理器总数的增加,传统的点对点通信模型对应的数据传输频率依平方规律上升,为算法并行效率的提升带来了消极影响。国家数值风洞工程通用CFD(Computational Fluid Dynamics,即流体动力学)软件中的风雷软件具备多部件重叠网格的隐式并行装配功能,从而能够处理飞行器外挂物投放、舵面偏转以及螺旋桨高速旋转等工况对应的非定常流场仿真问题,但是目前并行化自动挖洞算法仅能处理总量在4000万以下的重叠网格,而且伴随着处理器总数的增加,并行通信时间成本呈非线性增长。
综上可见,如何提升跨处理器数据传输过程中相关算法的并行效率以及如何避免内存溢出与缓存溢出的情况是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种跨处理器数据传输方法、装置、设备及介质,能够提升跨处理器数据传输过程中相关算法的并行效率以及避免内存溢出与缓存溢出的情况。其具体方案如下:
第一方面,本申请公开了一种跨处理器数据传输方法,包括:
统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数;
基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;
利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;
基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。
可选的,所述基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,包括:
利用所述数据长度和所述目标组数计算出每一数据组的目标数据容量值;
利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段。
可选的,所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段,包括:
确定当前所述每一数据组的当前数据容量值,并利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据,然后基于所述当前数据容量值和所述当前待分组数据的所述数据长度计算出当前所述数据组的预期容量值;
判断所述预期容量值否大于所述目标数据容量值,若大于则利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,并基于所述数据片段更新当前所述每一数据组的当前数据容量值以及所述当前待分组数据集,然后重新跳转至所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据的步骤,直至所述数据片段均包含位置标记和分组编号为止。
可选的,所述利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,包括:
获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系;
若满足则基于所述贪心算法确定出包含位置标记和分组编号的第一数据片段以及包含位置标记的第二数据片段;若不满足则基于所述贪心算法确定出包含位置标记和分组编号的所述第一数据片段。
可选的,所述获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系,包括:
获取预设绝对误差阈值参数和预设相对误差阈值参数,并计算所述预期容量值以及所述目标数据容量值的第一差值,然后计算所述预期容量值与所述第一差值的第二差值;
判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述第一差值、所述第二差值、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系。
可选的,所述利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据,包括:
确定当前所述分组编号,并从若干所述起始处理器中确定出与当前所述分组编号对应且所述数据片段不为空的当前所述起始处理器,然后收集当前所述起始处理器中的所述数据片段以得到当前所述第二待传输数据。
可选的,所述基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,包括:
基于当前所述分组编号利用预设MPI数据打包函数和非阻塞通信接口将当前所述第二待传输数据传输至当前目标通信域中的主处理器。
可选的,所述基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器之后,还包括:
通过所述当前目标通信域中所述主处理器和/或所述协处理器计算出包含与所述第二待传输数据对应的目标贡献单元的局部序号的第三待传输数据之后,将所述当前目标通信域更新为下一起始通信域以及将所述当前起始通信域更新为下一目标通信域。
第二方面,本申请公开了一种跨处理器数据传输装置,包括:
目标组数确定模块,用于统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的第一数目估算出目标组数;
数据片段分配模块,用于基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;
收集模块,用于利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;
传输模块,用于基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的跨处理器数据传输方法的步骤。
第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的跨处理器数据传输方法的步骤。
可见,本申请首先统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数;基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。由此可见,本申请基于第一待传输数据的数据长度与目标组数,并利用贪心算法对第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,有效避免了因数据容量过大而使得内存溢出和缓存溢出的情况,从而能够适应大规模重叠网格的并行装配需求;基于分组编号将每一组第二待传输数据分组传输至当前目标通信域中的主处理器,能够有效的控制并行通信的频率,进而提升跨处理器数据传输的执行速度。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种跨处理器数据传输方法流程图;
图2为本申请公开的一种具体的跨处理器数据传输示意图;
图3为本申请公开的一种具体的贪心算法分组结构示意图;
图4为本申请公开的一种具体的跨处理器数据传输方法流程图;
图5为本申请公开的一种具体的跨处理器数据传输方法流程图;
图6为本申请公开的一种跨处理器数据传输装置结构示意图;
图7为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
当前,在计算流体力学领域,基于网格点壁面距离准则的重叠网格隐式装配方法已成为处理含多个相对运动部件的流场非定常数值仿真问题的关键技术之一。它不需要人工辅助网格的参与,能够同步完成挖洞边界的识别过程与重叠单元-贡献单元插值映射的计算过程,展现出自身高度的自动化水平,同时还能够使整个求解域上参与计算的控制单元总量保持最低,因而在航空、航天、航海等多个工程领域得到了日益广泛的应用。
然而,在分布式内存环境下,一方面,伴随着网格规模的增加以及网格相交区域的扩大,各部件网格所属的局部处理器分组之间需要传输的待检索几何数据总量迅速升高,极易在相关处理器上产生内存溢出与缓存溢出效应。另一方面,伴随着处理器总数的增加,传统的点对点通信模型对应的数据传输频率依平方规律上升,为算法并行效率的提升带来了消极影响。
为此本申请相应的提供了一种跨处理器数据传输方案,能够提升跨处理器数据传输过程中相关算法的并行效率以及避免内存溢出与缓存溢出的情况。
参见图1所示,本申请实施例公开了一种跨处理器数据传输方法,包括:
步骤S11:统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数。
本实施例中,当前起始通信域中包含若干个起始处理器,每一个起始处理器中存储第一待传输数据,例如图2所示的一种具体的跨处理器数据传输示意图,在当前情况下,起始通信域(网格S)中包含M个起始处理器,即主处理器S[0]、协处理器S[1]…协处理器S[M-1],各个处理器中包含待检索数据即第一待传输数据,目标通信域(网格T)中包含N个处理器,即主处理器T[0]、协处理器T[1]…协处理器T[N-1],可以理解的是,后续得到分组后的待检索数据即第二待传输数据,将待检索数据进行相应合并。其中第一待传输数据可以包含并行计算后的起始部件网格点的距离参数ds,例如在当前起始通信域上,调用预设MPI(Multi Point Interface,即多点接口)规约接口将当前起始部件网格S上固壁边界点空间坐标序列收集到起始处理器中的主处理器S[0]上,然后主处理器S[0]使用广播通信接口进行数据共享,使得起始处理器中的各个协处理器获取到相关数据,然后并行计算起始部件网格S上的所有点的距离参数ds;预先获取距离参数dt,其中距离参数dt计算过程中包括在目标通信域上调用预设MPI规约接口,将当前目标网格T上固壁边界点空间坐标序列收集到主处理器T[0]上,然后在起始通信域与T[0]组成的延拓通信域上使用广播通信接口进行共享,并行计算起始部件网格S上所有点的距离参数dt;预先获取起始部件网格点与目标部件网格影响区域的覆盖关系,其中过程包括并行判断计算起始部件网格点与目标部件网格影响区域的覆盖关系,在目标通信域上,并行计算出目标部件网格的矩形体影响区域的8个端点坐标参数,并通过主处理器T[0]依次发送至起始通信域的各个处理器上,其中矩形体影响区域为根据部件网格最外层边界点坐标序列之协方差矩阵的谱分析结果计算出来,即以三个正交的特征向量为法向,构造出最小的矩形体,包含当前部件的所有网格点;在起始通信域上进行同步筛查,记录当前处理器上待检索网格点的个数,根据壁面距离准则,判断当前处理器上的任意部件网格点p的距离参数是否满足预设条件,如果其距离参数满足dt<ds的预设条件,并且被目标部件网格的影响区域覆盖,那么p点被识别为待检索网格点;在起始通信域与目标通信域组成的延拓通信域上,调用广播通信接口共享待检索网格点数目在各个处理器上的分布信息。
步骤S12:基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器。
本实施例中,如图3所示的一种具体的贪心算法分组结构示意图,在当前情况下,可以基于数据长度和目标组数LP利用贪心算法对M个起始处理器中第一待传输数据进行分组,以得到若干个包含位置标记和分组编号的数据片段。
步骤S13:利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据。
本实施例中,如图3所示的一种具体的贪心算法分组结构示意图,利用分组编号将每一起始处理器中数据片段进行收集,例如将第0组的数据片段进行收集则得到第0组的第二待传输数据、将第1组的数据片段进行收集则得到第1组的第二待传输数据…将第LP-1组的数据片段进行收集则得到第LP-1组的第二待传输数据。需要注意的是,若某一起始处理器的某一组数据片段为空,则在收集该组数据片段时,可以不收集该起始处理器的数据片段。
步骤S14:基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。
本实施例中,如果当前目标通信域中的主处理器接收到任意一组第二待传输数据,则主处理器利用广播通信将该组第二待传输数据传输至当前目标通信域中的每一协处理器,实现数据共享,然后解析该组第二待传输数据,并开辟连续的临时内存空间存储解析后的该组第二待传输数据。
本实施例中,所述基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器之后,还包括:通过所述当前目标通信域中所述主处理器和/或所述协处理器计算出包含与所述第二待传输数据对应的目标贡献单元的局部序号的第三待传输数据之后,将所述当前目标通信域更新为下一起始通信域以及将所述当前起始通信域更新为下一目标通信域。可以理解的是,当前目标通信域中主处理器和/或协处理器接收到第二待传输数据后,计算并生成与第二待传输数据对应的第三待传输数据,将当前目标通信域更新为下一起始通信域以及将当前起始通信域更新为下一目标通信域,下一起始通信域向下一目标通信域传输第三待传输数据时,统计下一起始通信域中每一处理器存储的第三待传输数据的数据长度,并基于处理器的数量确定出目标组数;基于数据长度和目标组数利用贪心算法对第三待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于位置标记将所述数据片段分配至对应的所述处理器;利用分组编号将每一处理器中数据片段进行收集得到与目标组数对应数量组第四待传输数据;基于分组编号将每一组第四待传输数据分组传输至下一目标通信域中的主处理器,以便主处理器利用广播通信将每一组第四待传输数据传输至下一目标通信域中的每一协处理器,从而完成重叠网格挖洞-插值结果的并行化提取。其中第三待传输数据包含与第二待传输数据对应的目标贡献单元的局部序号。例如计算过程可以包括在目标网格上完成待检索网格点的配对运算,配对运算包括在当前目标通信域的各个处理器上,并行执行待检索网格点与目标贡献单元之间的配对插值运算,记录当前处理器的编号、目标贡献单元的局部序号、网格点到目标网格壁面的线性插值距离,释放开辟的临时内存空间。
可见,本申请首先统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数;基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。由此可见,本申请基于第一待传输数据的数据长度与目标组数,并利用贪心算法对第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,有效避免了因数据容量过大而使得内存溢出和缓存溢出的情况,从而能够适应大规模重叠网格的并行装配需求;基于分组编号将每一组第二待传输数据分组传输至当前目标通信域中的主处理器,能够有效的控制并行通信的频率,进而提升跨处理器数据传输的执行速度。
参见图4所示,本申请实施例公开了一种具体的跨处理器数据传输方法,包括:
步骤S21:统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数。
本实施例中,统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度LS[0]、LS[1]…LS[M-1]。起始部件网格按照负载平衡的原则均匀分布于编号连续的M个起始处理器S[0]、S[1]、S[M-1]上,重叠网格隐式装配的壁面距离准则导致每个起始处理器上包含起始部件网格的待检索数据呈现非均匀分布。目标组数与起始处理器的数量关系可以如下:
LP=floor(sqrt(M)+0.5);
式中,sqrt()为C++语言中平方根运算函数,floor()为C++语言中浮点数的向下取整函数,M表示起始处理器的数量,LP表示目标组数,其中可以理解的是,LP为局部处理器总数平方根四舍五入后的整数值。
步骤S22:利用所述数据长度和所述目标组数计算出每一数据组的目标数据容量值。
本实施例中,利用数据长度LS[0]、LS[1]…LS[M-1]和目标组数LP计算出每一数据组的目标数据容量值AVERAGE,计算公式可以如下所示:
AVERAGE=(LS[0]+LS[1]+...+LS[M-1])/LP。
步骤S23:利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段。
本实施例中,所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段,具体包括:确定当前所述每一数据组的当前数据容量值,并利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据,然后基于所述当前数据容量值和所述当前待分组数据的所述数据长度计算出当前所述数据组的预期容量值;判断所述预期容量值否大于所述目标数据容量值,若大于则利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,并基于所述数据片段更新当前所述每一数据组的当前数据容量值以及所述当前待分组数据集,然后重新跳转至所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据的步骤,直至所述数据片段均包含位置标记和分组编号为止。确定当前每一数据组的当前数据容量值CAPACITY[i],如果当前为初始时刻则初始化每个数据组的当前数据容量值CAPACITY[i]=0,即第一待传输数据未被分组,利用数据长度从若干第一待传输数据中确定出当前待分组数据集以及从当前待分组数据集中确定出当前待分组数据,若当前为初始时刻则当前待分组数据集即为若干第一待传输数据,可以从当前待分组数据集中确定出数据长度为最长的当前待分组数据LARGEST,设其数据长度值为LENGTH,可以理解的是,假设当前待分组数据LARGEST未经分割直接分配到数据组GROUP[i]中,那么该数据组的预期容量值TAU[i]将达到TAU[i]=CAPACITY[i]+LENGTH,而预期容量值TAU[i]可能大于目标数据容量值AVERAGE。
本实施例中,所述利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,具体包括:获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系;若满足则基于所述贪心算法确定出包含位置标记和分组编号的第一数据片段以及包含位置标记的第二数据片段;若不满足则基于所述贪心算法确定出包含位置标记和分组编号的所述第一数据片段。
本实施例中,所述获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系,具体包括:获取预设绝对误差阈值参数和预设相对误差阈值参数,并计算所述预期容量值以及所述目标数据容量值的第一差值,然后计算所述预期容量值与所述第一差值的第二差值;判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述第一差值、所述第二差值、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系。获取预设绝对误差阈值参数LEAST和预设相对误差阈值参数EPS,计算预期容量值TAU[i]以及目标数据容量值AVERAGE的第一差值REST,计算预期容量值TAU[i]与第一差值REST的第二差值PLAN,判断预设绝对误差阈值参数LEAST、预设相对误差阈值参数EPS、第一差值REST、第二差值PLAN、预期容量值TAU[i]以及目标数据容量值AVERAGE之间的数值关系是否满足预设关系,例如可以判断数值关系是否满足TAU[i]>AVERAGE*(1.0+EPS),且REST>LEAST,且PLAN>LEAST。其中第一差值REST、第二差值PLAN计算公式如下所示:
REST=TAU[i]–AVERAGE;
PLAN=TAU[i]–REST。
可以理解的是,若判定预设绝对误差阈值参数LEAST、预设相对误差阈值参数EPS、第一差值REST、第二差值PLAN、预期容量值TAU[i]以及目标数据容量值AVERAGE之间的数值关系满足预设关系,则基于贪心算法确定出包含位置标记和分组编号的第一数据片段以及包含位置标记的第二数据片段,例如对当前待分组数据LARGEST进行分割,分割长度的相对比值RATIO=PLAN/LENGTH,如果满足1/4<RATIO<3/4,那么将当前待分组数据LARGEST切割成两个新的包含位置标记和分组编号的第一数据片段,第一段的数据长度为PLAN,第二段的长度为LENGTH–PLAN,如果不满足1/4<RATIO<3/4,则将当前待分组数据LARGEST切割成长度相同的两个新的包含位置标记的第二数据片段。若判定预设绝对误差阈值参数LEAST、预设相对误差阈值参数EPS、第一差值REST、第二差值PLAN、预期容量值TAU[i]以及目标数据容量值AVERAGE之间的数值关系不满足预设关系,则把当前待分组数据LARGEST直接分配到数据组GROUP[i]中。
步骤S24:基于所述位置标记将所述数据片段分配至对应的所述起始处理器。
步骤S25:利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据。
步骤S26:基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。
由此可见,本申请计算出目标数据容量值,并基于目标数据容量值利用贪心算法将若干个第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,后续收集数据片段得到的第二待传输数据的数据长度得到有效控制,因此传输至当前目标通信域中的主处理器时,主处理器存储压力有效减小,又因为主处理器通过广播通信将每一组第二待传输数据传输至当前目标通信域中的每一协处理器,无需依次将每一组第二待传输数据传输至每一协处理器,仅需一次广播通信即可实现数据共享,进而又降低主处理器的传输数据压力。
参见图5所示,本申请实施例公开了一种具体的跨处理器数据传输方法,包括:
步骤S31:统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数。
步骤S32:基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器。
步骤S33:确定当前所述分组编号,并从若干所述起始处理器中确定出与当前所述分组编号对应且所述数据片段不为空的当前所述起始处理器,然后收集当前所述起始处理器中的所述数据片段以得到当前第二待传输数据。
本实施例中,根据当前分组编号在当前起始通信域上确定参与数据片段收集的起始处理器编号序列,例如当前分组编号为第0号,可以首先动态申请一个长度为M的整型数组SEQUENCE[M],如果第i行起始处理器S[i]链接的数据片段D[0]为空,即S[i]将不参与数据片段的收集,那么令SEQUENCE[i]=0,否则令SEQUENCE[i]=1。后续可以调用预设MPI通信接口,当前目标通信域中的主处理器T[0]获取数组SEQUENCE[M]的内容,并确认接收数据的处理器编号序列。
步骤S34:基于当前所述分组编号利用预设MPI数据打包函数和非阻塞通信接口将当前所述第二待传输数据传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。
本实施例中,当前起始通信域上参与数据收集的处理器通过预设MPI数据打包函数和非阻塞通信接口进行向当前目标通信域中主处理器T[0]的数据传输。然后在主处理器T[0]上开辟新的连续内存INFO_STREAM,对已接收的多个数据片段顺次存储,同时释放数据片段的内存空间。由于分组进行数据传输,那么INFO_STREAM的长度将得到控制,在降低整体通信频率以避免处理器内存溢出和缓存溢出方面发挥有效作用。例如采用一个标准的机翼外挂物投放模型以此生成了单元总量达4.2亿的重叠网格,在天河二号高性能集群上,使用10000个处理器对网格进行重叠装配,仅用3分钟即实现了挖洞边界的自动化识别,由此可见提升了重叠网格隐式装配算法对大规模网格的并行组装能力。
由此可见,本申请利用贪心算法对当前起始通信域中第一待传输数据进行分组得到对应的数据片段,并将数据片段进行收集以得到若干组第二待传输数据;基于分组编号利用预设MPI数据打包函数和非阻塞通信接口将若干组第二待传输数据传输至当前目标通信域中的主处理器,因为第二待传输数据的数据长度得到控制,因此在降低整体通信频率以及避免处理器内存溢出和缓存溢出方面发挥有效作用。
参见图6所示,本申请实施例公开了一种跨处理器数据传输装置,包括:
目标组数确定模块11,用于统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的第一数目估算出目标组数;
数据片段分配模块12,用于基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;
收集模块13,用于利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;
传输模块14,用于基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器。
可见,本申请首先统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数;基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。由此可见,本申请基于第一待传输数据的数据长度与目标组数,并利用贪心算法对第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,有效避免了因数据容量过大而使得内存溢出和缓存溢出的情况,从而能够适应大规模重叠网格的并行装配需求;基于分组编号将每一组第二待传输数据分组传输至当前目标通信域中的主处理器,能够有效的控制并行通信的频率,进而提升跨处理器数据传输的执行速度。
图7为本申请实施例提供的一种电子设备的结构示意图。具体可以包括:至少一个处理器21、至少一个存储器22、电源23、通信接口24、输入输出接口25和通信总线26。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的由电子设备执行的跨处理器数据传输方法中的相关步骤。
本实施例中,电源23用于为电子设备上的各硬件设备提供工作电压;通信接口24能够为电子设备创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源包括操作系统221、计算机程序222及数据223等,存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备上的各硬件设备以及计算机程序222,以实现处理器21对存储器22中海量数据223的运算与处理,其可以是Windows、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备执行的跨处理器数据传输方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。数据223除了可以包括电子设备接收到的由外部设备传输进来的数据,也可以包括由自身输入输出接口25采集到的数据等。
进一步的,本申请实施例还公开了一种计算机可读存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器加载并执行时,实现前述任一实施例公开的由跨处理器数据传输过程中执行的方法步骤。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的一种跨处理器数据传输方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种跨处理器数据传输方法,其特征在于,包括:
统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的数量确定出目标组数;
基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;
利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;
基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至所述当前目标通信域中的每一协处理器。
2.根据权利要求1所述的跨处理器数据传输方法,其特征在于,所述基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,包括:
利用所述数据长度和所述目标组数计算出每一数据组的目标数据容量值;
利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段。
3.根据权利要求2所述的跨处理器数据传输方法,其特征在于,所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集,并从所述当前待分组数据集中确定出当前待分组数据,然后利用贪心算法、所述当前待分组数据的所述数据长度和所述目标数据容量值对所述当前待分组数据进行分组得到包含位置标记和分组编号的数据片段,包括:
确定当前所述每一数据组的当前数据容量值,并利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据,然后基于所述当前数据容量值和所述当前待分组数据的所述数据长度计算出当前所述数据组的预期容量值;
判断所述预期容量值否大于所述目标数据容量值,若大于则利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,并基于所述数据片段更新当前所述每一数据组的当前数据容量值以及所述当前待分组数据集,然后重新跳转至所述利用所述数据长度从若干所述第一待传输数据中确定出当前待分组数据集以及从所述当前待分组数据集中确定出当前待分组数据的步骤,直至所述数据片段均包含位置标记和分组编号为止。
4.根据权利要求3所述的跨处理器数据传输方法,其特征在于,所述利用所述贪心算法对所述当前待分组数据进行分组得到包含位置标记和/或分组编号的数据片段,包括:
获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系;
若满足则基于所述贪心算法确定出包含位置标记和分组编号的第一数据片段以及包含位置标记的第二数据片段;若不满足则基于所述贪心算法确定出包含位置标记和分组编号的所述第一数据片段。
5.根据权利要求3所述的跨处理器数据传输方法,其特征在于,所述获取预设绝对误差阈值参数和预设相对误差阈值参数,并判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系,包括:
获取预设绝对误差阈值参数和预设相对误差阈值参数,并计算所述预期容量值以及所述目标数据容量值的第一差值,然后计算所述预期容量值与所述第一差值的第二差值;
判断所述预设绝对误差阈值参数、所述预设相对误差阈值参数、所述第一差值、所述第二差值、所述预期容量值以及所述目标数据容量值之间的数值关系是否满足预设关系。
6.根据权利要求1至5任一项所述的跨处理器数据传输方法,其特征在于,所述利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据,包括:
确定当前所述分组编号,并从若干所述起始处理器中确定出与当前所述分组编号对应且所述数据片段不为空的当前所述起始处理器,然后收集当前所述起始处理器中的所述数据片段以得到当前所述第二待传输数据。
7.根据权利要求6所述的跨处理器数据传输方法,其特征在于,所述基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,包括:
基于当前所述分组编号利用预设MPI数据打包函数和非阻塞通信接口将当前所述第二待传输数据传输至当前目标通信域中的主处理器。
8.根据权利要求1所述的跨处理器数据传输方法,其特征在于,所述基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器之后,还包括:
通过所述当前目标通信域中所述主处理器和/或所述协处理器计算出包含与所述第二待传输数据对应的目标贡献单元的局部序号的第三待传输数据之后,将所述当前目标通信域更新为下一起始通信域以及将所述当前起始通信域更新为下一目标通信域。
9.一种跨处理器数据传输装置,其特征在于,包括:
目标组数确定模块,用于统计当前起始通信域中每一起始处理器存储的第一待传输数据的数据长度,并基于所述起始处理器的第一数目估算出目标组数;
数据片段分配模块,用于基于所述数据长度和所述目标组数利用贪心算法对所述第一待传输数据进行分组得到包含位置标记和分组编号的数据片段,并基于所述位置标记将所述数据片段分配至对应的所述起始处理器;
收集模块,用于利用所述分组编号将每一所述起始处理器中所述数据片段进行收集得到与所述目标组数对应数量组第二待传输数据;
传输模块,用于基于所述分组编号将每一组所述第二待传输数据分组传输至当前目标通信域中的主处理器,以便所述主处理器利用广播通信将每一组所述第二待传输数据传输至每一协处理器。
10.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至8任一项所述的跨处理器数据传输方法的步骤。
11.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述的跨处理器数据传输方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926784.5A CN114996198B (zh) | 2022-08-03 | 2022-08-03 | 跨处理器数据传输方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210926784.5A CN114996198B (zh) | 2022-08-03 | 2022-08-03 | 跨处理器数据传输方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114996198A true CN114996198A (zh) | 2022-09-02 |
CN114996198B CN114996198B (zh) | 2022-10-21 |
Family
ID=83022093
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210926784.5A Active CN114996198B (zh) | 2022-08-03 | 2022-08-03 | 跨处理器数据传输方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114996198B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115796083A (zh) * | 2023-02-17 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101126992A (zh) * | 2006-08-15 | 2008-02-20 | 国际商业机器公司 | 在网络中的多个节点中分配多个任务的方法和系统 |
US20110213869A1 (en) * | 2000-09-25 | 2011-09-01 | Yevgeny Korsunsky | Processing data flows with a data flow processor |
CN104965761A (zh) * | 2015-07-21 | 2015-10-07 | 华中科技大学 | 一种基于gpu/cpu混合架构的流程序多粒度划分与调度方法 |
US20160077838A1 (en) * | 2008-05-20 | 2016-03-17 | Telefonaktiebolaget L M Ericsson (Publ) | Single Instruction Multiple Data (SIMD) Architectures |
US20200242072A1 (en) * | 2019-01-29 | 2020-07-30 | Huazhong University Of Science And Technology | Fpga-based graph data processing method and system thereof |
CN112256422A (zh) * | 2020-11-17 | 2021-01-22 | 中国人民解放军战略支援部队信息工程大学 | 基于q学习的异构平台任务调度方法及系统 |
CN113114589A (zh) * | 2021-04-28 | 2021-07-13 | 北京中宏立达信创科技有限公司 | 一种跨网数据安全传输系统及方法 |
CN114494650A (zh) * | 2022-04-06 | 2022-05-13 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种分布式非结构网格跨处理器面对接方法及系统 |
CN114629840A (zh) * | 2022-03-07 | 2022-06-14 | 天津体育学院 | 一种基于群智感知策略的可靠车联网数据传输方法 |
CN114691873A (zh) * | 2022-04-08 | 2022-07-01 | 广州文远知行科技有限公司 | 自动驾驶日志数据的语义化处理方法、装置及存储介质 |
-
2022
- 2022-08-03 CN CN202210926784.5A patent/CN114996198B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110213869A1 (en) * | 2000-09-25 | 2011-09-01 | Yevgeny Korsunsky | Processing data flows with a data flow processor |
CN101126992A (zh) * | 2006-08-15 | 2008-02-20 | 国际商业机器公司 | 在网络中的多个节点中分配多个任务的方法和系统 |
US20160077838A1 (en) * | 2008-05-20 | 2016-03-17 | Telefonaktiebolaget L M Ericsson (Publ) | Single Instruction Multiple Data (SIMD) Architectures |
CN104965761A (zh) * | 2015-07-21 | 2015-10-07 | 华中科技大学 | 一种基于gpu/cpu混合架构的流程序多粒度划分与调度方法 |
US20200242072A1 (en) * | 2019-01-29 | 2020-07-30 | Huazhong University Of Science And Technology | Fpga-based graph data processing method and system thereof |
CN112256422A (zh) * | 2020-11-17 | 2021-01-22 | 中国人民解放军战略支援部队信息工程大学 | 基于q学习的异构平台任务调度方法及系统 |
CN113114589A (zh) * | 2021-04-28 | 2021-07-13 | 北京中宏立达信创科技有限公司 | 一种跨网数据安全传输系统及方法 |
CN114629840A (zh) * | 2022-03-07 | 2022-06-14 | 天津体育学院 | 一种基于群智感知策略的可靠车联网数据传输方法 |
CN114494650A (zh) * | 2022-04-06 | 2022-05-13 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种分布式非结构网格跨处理器面对接方法及系统 |
CN114691873A (zh) * | 2022-04-08 | 2022-07-01 | 广州文远知行科技有限公司 | 自动驾驶日志数据的语义化处理方法、装置及存储介质 |
Non-Patent Citations (4)
Title |
---|
JIE ZHU等: "Multi-objective optimization for fuzzy workflow scheduling", 《2021 IEEE INTERNATIONAL CONFERENCE ON SYSTEMS, MAN, AND CYBERNETICS (SMC)》 * |
平凡等: "不规则任务在图形处理器集群上的调度策略", 《计算机应用》 * |
杨李杨: "基于分布式流处理系统的分组策略研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
赵钟等: "适用于任意网格的大规模并行CFD计算框架PHengLEI", 《计算机学报》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115796083A (zh) * | 2023-02-17 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
CN115796083B (zh) * | 2023-02-17 | 2023-05-26 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种直升机流场仿真方法、装置、设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114996198B (zh) | 2022-10-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8413166B2 (en) | Multithreaded physics engine with impulse propagation | |
US8627329B2 (en) | Multithreaded physics engine with predictive load balancing | |
CN101819540B (zh) | 在集群中调度任务的方法和系统 | |
CN105843683B (zh) | 用于动态优化平台资源分配的方法、系统和设备 | |
US11816509B2 (en) | Workload placement for virtual GPU enabled systems | |
CN110058936B (zh) | 用于确定专用处理资源的资源量的方法、设备和计算机程序产品 | |
WO2014088967A1 (en) | Service allocation in a distributed computing platform | |
JP5121936B2 (ja) | リソース割り当て装置及びリソース割り当てプログラム及び記録媒体及びリソース割り当て方法 | |
CN114996198B (zh) | 跨处理器数据传输方法、装置、设备及介质 | |
CN103246755A (zh) | 基于任意拉格朗日-欧拉(ale)的有限元分析的单元细分方法和系统 | |
WO2022001086A1 (zh) | 一种高效的gpu资源分配优化方法和系统 | |
KR20130088513A (ko) | 멀티코어 시스템의 태스크 분배 방법 및 장치 | |
CN111752691B (zh) | Ai计算图的排序方法、装置、设备及存储介质 | |
CN103559087A (zh) | 一种虚拟处理器之间的中断的实现方法、相关装置和系统 | |
US20100257220A1 (en) | Multi-dimensional transform for distributed memory network | |
CN115457226A (zh) | 矢量地图生成方法、装置、电子设备和可读存储介质 | |
CN114625500A (zh) | 云环境下拓扑感知的微服务应用调度的方法及应用 | |
CN102184124B (zh) | 任务调度方法及系统 | |
CN114675953A (zh) | 资源动态调度方法、装置、设备及计算机可读存储介质 | |
CN100493001C (zh) | G比特流率下多粒度的网络自动聚类方法 | |
KR101656706B1 (ko) | 고성능 컴퓨팅 환경에서의 작업 분배 시스템 및 방법 | |
CN107479968B (zh) | 一种面向动态图增量计算的均衡负载方法及系统 | |
Palmer et al. | Efficient Algorithms for Ghost Cell Updates on Two Classes of MPP Architectures. | |
CN115016947B (zh) | 负载分配方法、装置、设备及介质 | |
CN115879543A (zh) | 一种模型训练方法、装置、设备、介质及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |