CN104238372A - 多个模型并行仿真的调度方法和装置 - Google Patents

多个模型并行仿真的调度方法和装置 Download PDF

Info

Publication number
CN104238372A
CN104238372A CN201410460674.XA CN201410460674A CN104238372A CN 104238372 A CN104238372 A CN 104238372A CN 201410460674 A CN201410460674 A CN 201410460674A CN 104238372 A CN104238372 A CN 104238372A
Authority
CN
China
Prior art keywords
model
frame
present frame
parameter
models
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
Application number
CN201410460674.XA
Other languages
English (en)
Other versions
CN104238372B (zh
Inventor
宋平
见永刚
代志远
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Runke General Technology Co Ltd
Original Assignee
Beijing Jingwei Hirain Tech Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Jingwei Hirain Tech Co Ltd filed Critical Beijing Jingwei Hirain Tech Co Ltd
Priority to CN201410460674.XA priority Critical patent/CN104238372B/zh
Publication of CN104238372A publication Critical patent/CN104238372A/zh
Application granted granted Critical
Publication of CN104238372B publication Critical patent/CN104238372B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种多个模型并行仿真的调度方法和装置。所述方法包括:设置所述多个模型中每个模型的调度周期;计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;计算所述最小公倍数对所述最大公约数的商,作为总帧数;所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;从第一帧到最后一帧,分别用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。本发明实现了对并行仿真的多个模型的合理调度,实现了数据的实时仿真功能。

Description

多个模型并行仿真的调度方法和装置
技术领域
本发明实施例涉及控制仿真技术领域,尤其涉及一种多个模型并行仿真的调度方法和装置。
背景技术
仿真模型调度在航空、航天、军事领域的电子联网系统中得到广泛的应用。在航电系统中,多个仿真模型的调度决定了整个仿真过程中数据的正确性及数据传输时间的准确性。
现有技术及使用中会单独调度每一个模型,并没有统一的调度规则,往往会出现因模型调度设置不当,导致仿真过程中数据在各个终端之间无法正常传输,或者传输数据有问题,或者数据传递时间不准确。例如,若整个仿真系统中存在多个仿真模型,而每一种仿真模型步长各异,若在模型调度配置中配置不当,会导致某一时刻接收到的数据信息时间错误,或指定时间内没有接收到指定的数据,若模型调度安排不合理,会出现接收到的数据出现较大时间偏差。
发明内容
有鉴于此,本发明实施例提供一种多个模型并行仿真的调度方法和装置,以实现对并行仿真的多个模型的合理调度,提高实时仿真功能的准确性。
第一方面,本发明实施例提供了一种多个模型并行仿真的调度方法,所述方法包括:
设置所述多个模型中每个模型的调度周期;
计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;
计算所述最小公倍数对所述最大公约数的商,作为总帧数;
所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;
从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
第二方面,本发明实施例还提供了一种多个模型并行仿真的调度装置,所述装置包括:
设置模块,用于设置所述多个模型中每个模型的调度周期;
第一计算模块,用于计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;
第二计算模块,用于计算所述最小公倍数对所述最大公约数的商,作为总帧数;
第三计算模块,用于所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;
调度模块,用于从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
本发明实施例提供的多个模型并行仿真的调度方法和装置,通过设置多个模型的调度周期,计算多个模型中所有模型的调度周期的最大公约数和最小公倍数,计算所述最小公倍数对所述最大公约数的商作为总帧数,并将每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数,从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中,实现了对并行仿真的多个模型的合理调度,提高了数据的实时仿真功能的准确性。
附图说明
图1是本发明第一实施例提供的多个模型并行仿真的调度方法的流程图;
图2是本发明实施例提供的多个模型并行仿真的调度方法中的调度多个模型的流程图;
图3是本发明第二实施例提供的多个模型并行仿真的调度方法中的模型周期调度序列示例图;
图4是本发明第三实施例提供的多个模型并行仿真的调度装置的示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
图1示出了本发明的第一实施例。
图1是本发明第一实施例提供的一种多个模型并行仿真的调度方法的流程图,该方法适用于对并行仿真的多个模型进行调度,可由计算机执行,该方法具体包括如下步骤:
步骤110,设置所述多个模型中每个模型的调度周期。
根据需要,设定每个模型的调度周期。
步骤120,计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数。
通过多个数的最大公约数的计算方法,计算所述多个模型中所有模型的调度周期的最大公约数;通过多个数的最小公倍数的计算方法,计算所述多个模型中所有模型的调度周期的最小公倍数。
步骤130,计算所述最小公倍数对所述最大公约数的商,作为总帧数。
计算所述多个模型中的所有模型的调度周期的最小公倍数对最大公约数的商,得到一次循环的总帧数。其中,一次循环是指调度完所述多个模型中的所有模型。
在航空总线上,模型的诸如上报、监听、通知等各种信息是以消息的方式进行传输的,而若完成模型与调度中心之间的某一特定功能时,就需要使用多个消息进行组合,形成新的结构,这种新的结构称为帧。
步骤140,所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数。
分别计算所述多个模型中的每个模型的调度周期对所述最大公约数的商,得到每个模型的第一参数。
步骤150,从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
步骤150主要实现对多个模型的调度,基于FBS(Frequency BasedScheduler,基于频率调度机制)调度机制实现多个模型的调度,可以满足航电系统中的实时数据采集和实时仿真的需求。在对并行仿真的多个模型调度之前要挂载硬件时钟中断,设置硬件时钟的定时参数,并启动硬件时钟实现定时,以保证数据传输的实时性。
对并行仿真的多个模型进行调度,首先从第一帧开始,用当前帧的帧序列号(即1、2、3、……、N,其中,N为总帧数)分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型(即取余计算结果为0的模型)的信息放置到当前帧中;然后再以同样的方法调度相应的模型到第二帧、第三帧……最后一帧(帧序列号为总帧数N)中。
本实施例通过设置多个模型的调度周期,计算多个模型中所有模型的调度周期的最大公约数和最小公倍数,计算所述最小公倍数对所述最大公约数的商作为总帧数,并将每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数,从第一帧到最后一帧,分别用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。由于当前帧能够整除模型的调度周期,所以避免了单独调度每一个模型,实现了统一调度多个模型,从而实现了对并行仿真的多个模型的合理调度,提高了数据的实时仿真功能的准确性。
在上述技术方案的基础上,在设置所述多个模型中每个模型的调度周期之前,还优选包括:
确定需要调度的多个模型;
将所述多个模型绑定到不同的CPU上。
即在不知道哪个模型需要调度之前,还需要确定需要调度的模型,即确定需要并行仿真的模型。在具有多核的计算机中,将该计算机上承载的需要调度的多个模型绑定到该计算机的不同CPU上,从而使得模型运行的负载尽量均衡,保证任意模型的运行可得到足够的CPU资源,以提高数据的实时性,提高数据传输的效率。
在上述技术方案的基础上,图2是本发明实施例提供的多个模型并行仿真的调度方法中的调度多个模型的流程图,如图2所示,步骤150具体包括如下步骤:
步骤151、设定一个变量j,用于表示当前帧的帧序列号,将1赋值给变量j。
定义一个整型的中间变量j,用于表示当前帧的帧序列号,即表示当前帧为第几帧,设定其初始值为1,即j=1,表示从第一帧开始。
步骤152、用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
例如:如果有3个模型,分别为模型1、模型2和模型3,模型1、模型2和模型3的第一参数分别记做A、B和C,用当前帧的帧序列号j分别对A、B和C进行取余计算,如果j对A取余为0,则将模型1的信息放置到第j帧中;如果j对B和对C取余均不为0,则不用将模型2和模型3的信息放置到第j帧中,继续后面的操作。
步骤153、对变量j加1并赋值给j,判断j是否大于总帧数,如果是,则结束本流程;如果否,则返回步骤152。
当j大于一次循环的总帧数时,表示已完成所有模型的调度,便可以结束本流程,后续按照为每个模型分配的帧进行调度即可;当j不大于一次循环的总帧数时,表示还没有完成所有模型的调度,返回步骤152继续对模型进行调度操作。
通过步骤151、步骤152和步骤153详细给出了对于并行仿真的多个模型的调度,结合硬件时钟实现了数据的实时仿真功能。
第二实施例。
第二实施例提供了一种多个模型并行仿真的调度方法,本实施例应用第一实施例提供的多个模型并行仿真的调度方法,以配置3个模型为例详细说明对并行仿真的多个模型的调度。
首先,确定需要调度的多个模型为3个模型,分别为模型0、模型1和模型2,并将这3个模型绑定到不同的CPU上。
然后,设置这3个模型中的每个模型的调度周期,模型0的调度周期为10ms、模型1的调度周期为20ms、模型3的调度周期为40ms。计算这3个模型的调度周期的最大公约数为10ms,最小公倍数为40ms,则总帧数为4。模型0的第一参数为1,模型1的第一参数为2,模型2的第一参数为4。帧周期可以通过这3个模型的最大公约数得到,即为10ms,也称为主帧周期。其中各个模型的调度周期也可以称为副帧周期。
最后,对各个模型进行调度。首先,从第一帧开始,当前帧的帧序列号为1,用1分别对模型0、模型1和模型2的第一参数进行取余计算,分别得到0、1、1,因此,将模型0的信息放置到第一帧中;然后计算第二帧,当前帧的帧序列号为2,用2分别对模型0、模型1和模型2的第一参数进行取余计算,分别得到0、0、2,因此,将模型0和模型1的信息放置到第二帧中;然后计算第三帧,当前帧的帧序列号为3,用3分别对模型0、模型1和模型2的第一参数进行取余计算,分别得到0、2、3,因此,将模型0的信息放置到第三帧中;然后计算第四帧,当前帧的帧序列号为4,用4分别对模型0、模型1和模型2的第一参数进行取余计算,分别得到0、0、0,因此,将模型0、模型1和模型2的信息放置到第四帧中。通过上述计算,为每帧都分配了相应的模型。图3是本发明第二实施例提供的多个模型并行仿真的调度方法中的模型周期调度序列示例图。如图3所示,完成对所有模型的调度便为一次循环。
本实施例以配置3个模型为例,详细介绍了对并行仿真的多个模型进行调度的过程,实现了数据的实时仿真功能。
图4示出了本发明的第三实施例。
图4是本发明第三实施例提供的一种多个模型并行仿真的调度装置的示意图。本实施例提供的多个模型并行仿真的调度装置用于实现第一实施例提供的多个模型并行仿真的调度方法。如图4所示,本实施例提供的多个模型并行仿真的调度装置包括:设置模块410、第一计算模块420、第二计算模块430、第三计算模块440和调度模块450。
其中,设置模块410用于设置所述多个模型中每个模型的调度周期;
第一计算模块420用于计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;
第二计算模块430用于计算所述最小公倍数对所述最大公约数,作为总帧数;
第三计算模块440用于所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;
调度模块450用于从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
优选的,所述装置还包括:
确定模块,用于确定需要调度的多个模型;
绑定模块,用于将所述多个模型绑定到不同的CPU上。
优选的,所述调度模块包括:
赋值子模块,用于设定一个变量j,用于表示当前帧的帧序列号,将1赋值给变量j;
调度子模块,用于用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中;
处理子模块,用于对变量j加1并赋值给j,判断j是否大于总帧数,如果是,则结束调度;如果否,则返回触发调度子模块的操作。
本实施例通过设置模块设置所述多个模型中每个模型的调度周期;第一计算模块计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;第二计算模块计算所述最小公倍数对所述最大公约数的商,作为总帧数;第三计算模块所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;调度模块从第一帧到最后一帧,分别用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。由于当前帧能够整除模型的调度周期,所以避免了单独调度每一个模型,实现了统一调度多个模型,从而实现了对并行仿真的多个模型的合理调度,提高了数据的实时仿真功能的准确性。
值得注意的是,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员可以理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (6)

1.一种多个模型并行仿真的调度方法,其特征在于,所述方法包括:
设置所述多个模型中每个模型的调度周期;
计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;
根据计算所述最小公倍数对所述最大公约数的商,作为总帧数;
所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;
从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
2.根据权利要求1所述的方法,其特征在于,在设置所述多个模型中每个模型的调度周期之前,还包括:
确定需要调度的多个模型;
将所述多个模型绑定到不同的CPU上。
3.根据权利要求1或2所述的方法,其特征在于,从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中,包括:
S1、设定一个变量j,用于表示当前帧的帧序列号,将1赋值给变量j;
S2、用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中;
S3、对变量j加1并赋值给j,判断j是否大于总帧数,如果是,则结束本流程;如果否,则返回步骤S2。
4.一种多个模型并行仿真的调度装置,其特征在于,所述装置包括:
设置模块,用于设置所述多个模型中每个模型的调度周期;
第一计算模块,用于计算所述多个模型中所有模型的调度周期的最大公约数和最小公倍数;
第二计算模块,用于计算所述最小公倍数对所述最大公约数的商,作为总帧数;
第三计算模块,用于所述多个模型中的每个模型的调度周期分别对所述最大公约数做商,得到每个模型的第一参数;
调度模块,用于从第一帧到最后一帧,用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中。
5.根据权利要求4所述的装置,其特征在于,所述装置还包括:
确定模块,用于确定需要调度的多个模型;
绑定模块,用于将所述多个模型绑定到不同的CPU上。
6.根据权利要求4或5所述的装置,其特征在于,所述调度模块包括:
赋值子模块,用于设定一个变量j,用于表示当前帧的帧序列号,将1赋值给变量j;
调度子模块,用于用当前帧的帧序列号分别对每个模型的第一参数进行取余计算,如果结果为0,则将对应的模型的信息放置到当前帧中;
处理子模块,用于对变量j加1并赋值给j,判断j是否大于总帧数,如果是,则结束调度;如果否,则返回触发调度子模块的操作。
CN201410460674.XA 2014-09-11 2014-09-11 多个模型并行仿真的调度方法和装置 Active CN104238372B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410460674.XA CN104238372B (zh) 2014-09-11 2014-09-11 多个模型并行仿真的调度方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410460674.XA CN104238372B (zh) 2014-09-11 2014-09-11 多个模型并行仿真的调度方法和装置

Publications (2)

Publication Number Publication Date
CN104238372A true CN104238372A (zh) 2014-12-24
CN104238372B CN104238372B (zh) 2017-10-27

Family

ID=52226692

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410460674.XA Active CN104238372B (zh) 2014-09-11 2014-09-11 多个模型并行仿真的调度方法和装置

Country Status (1)

Country Link
CN (1) CN104238372B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018623A (ja) * 2003-06-27 2005-01-20 Sony Corp シミュレーション装置およびシミュレーション方法
CN101639788A (zh) * 2009-09-10 2010-02-03 北京航空航天大学 一种基于tbb线程构建块的连续系统仿真多核并行方法
CN103136032A (zh) * 2013-02-28 2013-06-05 北京时代民芯科技有限公司 一种多核体系并行仿真系统
CN103279622A (zh) * 2013-06-07 2013-09-04 北京理工大学 一种飞行器仿真系统中的分布式仿真模型调度方法
US20130297279A1 (en) * 2012-05-07 2013-11-07 Synopsys, Inc. Quasi-dynamic scheduling and dynamic scheduling for efficient parallel simulation
CN103685084A (zh) * 2013-12-23 2014-03-26 北京经纬恒润科技有限公司 一种生成数据帧的方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018623A (ja) * 2003-06-27 2005-01-20 Sony Corp シミュレーション装置およびシミュレーション方法
CN101639788A (zh) * 2009-09-10 2010-02-03 北京航空航天大学 一种基于tbb线程构建块的连续系统仿真多核并行方法
US20130297279A1 (en) * 2012-05-07 2013-11-07 Synopsys, Inc. Quasi-dynamic scheduling and dynamic scheduling for efficient parallel simulation
CN103136032A (zh) * 2013-02-28 2013-06-05 北京时代民芯科技有限公司 一种多核体系并行仿真系统
CN103279622A (zh) * 2013-06-07 2013-09-04 北京理工大学 一种飞行器仿真系统中的分布式仿真模型调度方法
CN103685084A (zh) * 2013-12-23 2014-03-26 北京经纬恒润科技有限公司 一种生成数据帧的方法及装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘金鹏 等: "并行仿真多样本任务分发与调度工具的设计", 《计算机仿真》 *
邓彬 等: "面向连续系统并行仿真的任务调度算法", 《系统仿真学报》 *

Also Published As

Publication number Publication date
CN104238372B (zh) 2017-10-27

Similar Documents

Publication Publication Date Title
US9099866B2 (en) Apparatus, methods and systems for parallel power flow calculation and power system simulation
CN102415059B (zh) 总线控制装置
Asmundsson et al. Production planning with resources subject to congestion
US20190332422A1 (en) Dynamic accelerator scheduling and grouping for deep learning jobs in a computing cluster
CN111553484A (zh) 联邦学习的方法、装置及系统
CN104317749B (zh) 信息写入方法和装置
CN104461748B (zh) 一种基于MapReduce的最优本地化任务调度方法
CN107689982A (zh) 多数据源数据同步方法、应用服务器及计算机可读存储介质
CN106293947B (zh) 虚拟化云环境下gpu-cpu混合资源分配系统和方法
CN109299531A (zh) 电磁暂态仿真方法及装置
CN104238372A (zh) 多个模型并行仿真的调度方法和装置
CN103903070A (zh) 应用系统资源需求测算系统
CN105468455B (zh) 一种用于多设备的动态任务分配的方法及装置
CN103763064A (zh) 适用于超高速通讯系统的循环冗余校验码生成方法与电路
CN106506282A (zh) 一种提高云平台监控性能及规模的监控方法
CN115115292B (zh) 发电分配信息生成方法、装置、设备、介质和程序产品
CN113743040B (zh) 测试方法、装置、电子设备以及可读存储介质
CN108874666A (zh) 测试数据自动生成方法、装置、计算机设备及存储介质
US9887928B2 (en) System and method for identifying performance characteristics in asynchronous networks
CN103489077B (zh) 一种用电器任务调度方法和装置
CN103533654B (zh) 码道资源分配方法和设备
Banerjee et al. Offloading work to mobile devices: An availability-aware data partitioning approach
CN112819266A (zh) 配送参数调整方法、装置、存储介质及电子设备
CN105553802B (zh) 一种异构航电网络和总线的数据实时接收方法
CN108960608A (zh) 一种电力现货市场的电量电价计算方法、装置及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020

Patentee after: Beijing Jingwei Hirain Technologies Co.,Inc.

Address before: 100101 Beijing city Chaoyang District Anxiang Beili 11 B block 8 layer of Beijing Jingwei Hengrun Technology Co. Ltd.

Patentee before: Beijing Jingwei HiRain Technologies Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230605

Address after: 100192 5th floor, Zhizhen building, 7 Zhichun Road, Haidian District, Beijing

Patentee after: BEIJING RUNKE GENERAL TECHNOLOGY Co.,Ltd.

Address before: 4 / F, building 1, No.14 Jiuxianqiao Road, Chaoyang District, Beijing 100020

Patentee before: Beijing Jingwei Hirain Technologies Co.,Inc.