【技术实现步骤摘要】
一种事件处理的模拟方法、系统、电子设备及介质
[0001]本专利技术属于计算机
,涉及一种事件处理的模拟方法,特别是涉及一种事件处理的模拟方法、系统、电子设备及介质。
技术介绍
[0002]对于研究状态呈离散方式改变的系统,离散事件模拟(DiscreteEventSimulation,DES)在其设计和评估中有着非常重要的应用。对于离散事件的模拟方式也是一个急需研究的问题。
[0003]现有的离散事件处理系统中,主要存在如下问题:(1)对于同一时刻的所有离散事件,只能依次进行处理,不能利用好现代多核处理器或多处理器的并行能力;(2)对于可通过多进程实现并行处理的离散事件模拟,每个进程内部只能串行执行,难以充分挖掘并行潜能;(3)在并行离散事件中,当存在很多并行离散事件时,容易出现逻辑时序错误,导致处理时效低下、严重损害模拟的准确性的问题。
技术实现思路
[0004]本专利技术的目的在于提供一种事件处理的模拟方法、系统、电子设备及介质,用于实现离散事件的并行加速问题。
[0005]第一方面 ...
【技术保护点】
【技术特征摘要】
1.一种事件处理的模拟方法,其特征在于,运行于一事件驱动模拟器中,所述事件处理的模拟方法包括:将待执行的目标对象模拟为部件,将调用所述部件的模拟函数和时间戳封装成事件;其中,所述时间戳为所述事件的执行时间;基于细粒度策略将所述部件中的事件划分为内部事件或外部事件;基于所述内部事件的时间戳顺序构建内部事件队列;为所述内部事件队列中的每个内部事件分配一个线程;将时间戳相同的所述内部事件的线程并行处理;基于所述外部事件的时间戳顺序构建外部事件队列;为所述外部事件队列中的每个外部事件分配一个线程;将时间戳相同的所述外部事件的线程并行处理。2.根据权利要求1所述的事件处理的模拟方法,其特征在于,所述事件处理的模拟方法还包括:针对所述部件设置本地时钟,以使所述部件形成本地唯一的事件处理时间序;其中,所述本地时钟记录所述部件在所述内部事件队列和所述外部事件队列中时间戳最大的事件的时间。3.根据权利要求2所述的事件处理的模拟方法,其特征在于,所述针对所述部件设置本地时钟,以使所述部件形成本地唯一的事件处理时间序,包括:针对所述部件设置本地时钟,所述本地时钟记录所述部件在所述内部事件队列和所述外部事件队列中时间戳最大的事件的时间;如果所述部件存在外部触发事件,判断所述外部触发事件的时间戳和所述部件的本地时钟;如果所述外部触发事件的时间戳小于等于所述部件的本地时钟,则丢弃所述外部触发事件;否则,不丢弃。4.根据权利要求1所述的事件处理的模拟方法,其特征在于,所述基于细粒度策略将所述部件中的事件划分为内部事件或外部事件,包括:当所述部件中的事件为与其它部件通信触发的事件时,将该事件划分为外部事件;当所述部件中的事件为所述部件自身处理逻辑触发的事件时,将该事件划分为内部事件。5.根据权利要求1所述的事件处理的模拟方法,其特征在于,所述事件处理的模拟方法还包括:当所述内部事件队列的内部事件和所述外部事件队列中的外部事件的时间戳相同时,优先执行所述内部事件队列的内部事件。6.根据权利要求1所述的事件处理的模拟方法,其特征在于,所述将待执行的目标对象模拟为部件,包括:所述待执行的目标对象为若干个,将若干个待执行的目标对象对应模拟为若干个部件;其中,若干个部件基于部件通信策略互相通信。7.根据权利要求1或6所述的事件处理的模拟方法,其特征在于,所述部件通信策略包括:当第一部件和第二部件通信,所述第一部件中存在内部事件E0为所述第二部件的内部
事件E1的触发事件时;所述若干个部件包括第一部件和第二部件;所述内部事件E0触发所述内部事件E1对应的外部事件E2;其中,所述外部事件E2的时间戳T2和所述内部事件E0的时间戳T0要满足T2=T0;所述外部事件E2触发所述内部事件E1;所述外部事件E2的时间戳T2和所述内部事件E1的时间戳T1要满足T1=T2+P;其中,P为所述第二部件的时钟周期。8.根据权利要求6所述的事件处理的模拟方法,其特征在于,所述...
【专利技术属性】
技术研发人员:陈浩,梁晓峣,景乃锋,刘子钊,李钢,
申请(专利权)人:上海交通大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。