本发明属于模型仿真,特别是涉及基于微服务的混合信号系统执行效率的优化方法。
背景技术:
1、本发明应用于面向模型actor的并发系统的异构建模、仿真和设计系统。面向actor的设计框架强调组件之间的并发性和数据通信。每个actor有着定义好的抽象接口,封装了其内部状态和行为,并限制了与其环境的交互方式。一个actor带有一个或多个端口,端口又分为输入端口以及输出端口,actor在输入(输出)端口接收(发送)消息。消息也被称为信号。每个端口处信号的一个集合称为actor的行为。具有连续行为的actor以及离散行为的actor共同组成了混合信号系统。
2、多个actor之间可以通过在端口之间建立连接器组装成一个复合actor,actora的输出端口a1到actorb的输入端口b1的连接器表示信号会从a的a1端口流向b的b1端口。
3、在图形化建模语言中,actor常用方框组合三角形(端口)表示,三角形顶点方向指向框内代表输入端口,三角形顶点方向指向框外代表输出端口,连接器则由线来表示。
4、模型的总体执行过程由管理器类的一个实例来控制。可执行接口定义了执行计算的参与者抽象语义的操作。这些操作被分为三个阶段:设置、迭代和包装。每个阶段都被进一步划分为子阶段。在初始化操作中,执行者执行任何可能影响静态分析的操作(包括调度、类型推理和检查、代码生成等)。其中,迭代阶段是模型的主要执行阶段,即每个参与者执行一系列的循环操作,通过有限数量的更新使得每个actor(执行组件)进入稳定状态。迭代中的prefire、fire、postfire接口是为了协调参与者之间的交互,prefire测试参与者点火所需的先决条件;fire读取输入数据,执行计算,并产生输出数据;postfire更新组件状态标志着执行的完成。
5、现有技术通过对系统的依赖图进行拓扑分析,从而得到一个比较优化的actor执行顺序,按序调用actor的执行接口,从而完成整体迭代。由此可见目前技术还是顺序执行的过程,没有利用并行化算法,执行速度相对较慢。
技术实现思路
1、本发明目的是为了解决现有技术中的问题,提出了基于微服务的混合信号系统执行效率的优化方法。
2、本发明是通过以下技术方案实现的,本发明提出基于微服务的混合信号系统执行效率的优化方法,所述方法包括以下步骤:
3、步骤一、首先分析系统中是否存在因果环,如果存在因果环则意味着系统存在死锁,返回错误信息;不存在则继续执行;
4、步骤二、调度器初始化仿真时间以及步进时间步长,设置每条连接器表示的消息队列并配置到对应的actor服务上;
5、步骤三、发给所有actor服务启动指令,所有actor共享调度器的时间;
6、步骤四、每个actor服务并行运行,依赖图中的起点actor直接将输出结果输出到消息队列中,其他actor则观察它的输入,如果输入为空则进入等待状态,如果有则立即计算它的输出,并为下一个执行做好准备,执行结束或进入等待状态的actor向调度器进行报告,同时报告自己本次执行是否更新了状态;
7、步骤五、控制器收到所有执行器的返回结果后进行操作,若存在更新了的actor则继续向所有actor服务发出执行信号,重复步骤三和四;若所有actor本次调度均未更新状态,则测试误差值以及断点判断当前迭代是否成功,不成功则回溯并重新选择时间步长,重新迭代并重复步骤三和四,成功则预测下一步步长并进入下一轮迭代并重复步骤三和四。
8、进一步地,所述启动指令为时钟信号。
9、进一步地,所述起点actor为具备直接输出能力的actor或带有初始状态的actor。
10、进一步地,所述具备直接输出能力的actor为信号源。
11、进一步地,所述带有初始状态的actor为积分器。
12、进一步地,所述未更新状态即到达了不动点。
13、进一步地,所述不动点具体指:把每个actor看做是一个函数f,如果每一个actor都满足单调性以及斯科特连续性,那么由这些actor组合构成的系统一定存在一个不动点解,也就是说在一次迭代中按任意的顺序调度actor的执行,在有限次的执行后必然会使所有组件到达稳定即不动点状态。
14、进一步地,每个actor封装为独立的服务,actor服务之间通过消息队列传输数据,当试图从空通道读取时,服务处于等待状态,直到有消息可用。
15、本发明提出一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述基于微服务的混合信号系统执行效率的优化方法的步骤。
16、本发明提出一种计算机可读存储介质,用于存储计算机指令,所述计算机指令被处理器执行时实现所述基于微服务的混合信号系统执行效率的优化方法的步骤。
17、本发明的有益效果:
18、本发明提出基于微服务的混合信号系统执行效率的优化方法,所述方法采用并行化算法,提高了运行速度。本发明充分利用云计算、微服务的优势,使用并行化的算法加速了混合系统仿真引擎的执行速度。
1.基于微服务的混合信号系统执行效率的优化方法,其特征在于,所述方法包括以下步骤:
2.根据权利要求1所述的方法,其特征在于,所述启动指令为时钟信号。
3.根据权利要求1所述的方法,其特征在于,所述起点actor为具备直接输出能力的actor或带有初始状态的actor。
4.根据权利要求3所述的方法,其特征在于,所述具备直接输出能力的actor为信号源。
5.根据权利要求3所述的方法,其特征在于,所述带有初始状态的actor为积分器。
6.根据权利要求1所述的方法,其特征在于,所述未更新状态即到达了不动点。
7.根据权利要求6所述的方法,其特征在于,所述不动点具体指:把每个actor看做是一个函数f,如果每一个actor都满足单调性以及斯科特连续性,那么由这些actor组合构成的系统一定存在一个不动点解,也就是说在一次迭代中按任意的顺序调度actor的执行,在有限次的执行后必然会使所有组件到达稳定即不动点状态。
8.根据权利要求1所述的方法,其特征在于,每个actor封装为独立的服务,actor服务之间通过消息队列传输数据,当试图从空通道读取时,服务处于等待状态,直到有消息可用。
9.一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-8任一项所述方法的步骤。
10.一种计算机可读存储介质,用于存储计算机指令,其特征在于,所述计算机指令被处理器执行时实现权利要求1-8任一项所述方法的步骤。