[发明专利]基于内存池的事件状态管理方法、系统及存储介质有效
申请号: | 202110607541.0 | 申请日: | 2021-06-01 |
公开(公告)号: | CN113051081B | 公开(公告)日: | 2021-10-29 |
发明(设计)人: | 欧阳建生;卢华;蔡磊;严克剑;黄宗慧 | 申请(专利权)人: | 广东省新一代通信与网络创新研究院 |
主分类号: | G06F9/50 | 分类号: | G06F9/50 |
代理公司: | 深圳市世纪恒程知识产权代理事务所 44287 | 代理人: | 陈小娟 |
地址: | 510656 广*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 内存 事件 状态 管理 方法 系统 存储 介质 | ||
本申请公开了一种基于内存池的事件状态管理方法、系统及存储介质,该方法的步骤包括:侦测到逻辑过程单元启动后,确定逻辑过程单元对应的内存池,并确定逻辑过程单元在运行过程中所产生的执行事件;确定执行事件对应的事件状态,基于内存池对事件状态进行管理。本申请通过内存池对网络并行仿真的事件状态进行了统一管理,解决了内存块碎片化、事件状态分散化和多级引用的问题,从而提高了网络并行仿真的并行性能。
技术领域
本申请涉及网络仿真领域,尤其涉及一种基于内存池的事件状态管理方法、系统及存储介质。
背景技术
目前网络并行仿真主流的并行仿真算法是乐观算法,乐观算法放松了对事件执行顺序的严格约束,允许程序在执行多个事件过程中存在一定的因果序违规。当检测到因果序违规时,采用恢复和修复机制将仿真状态回到一个可用的状态,并重新按当前时戳顺序处理事件。但是,由于乐观算法在检测到事件违法因果关系时,需要通过回滚方式将仿真状态恢复到上一个正确的状态,因此,需要在每个事件执行时保存事件状态,当执行的事件过多时就会消耗大量的存储资源。同时,在进行事件回滚操作时,当回滚的事件过多时也会进行大量的计算,导致并行性能显著下降。
发明内容
本申请的主要目的在于提供一种基于内存池的事件状态管理方法、系统及存储介质,旨在提高网络并行仿真的并行性能。
为实现上述目的,本申请提供一种基于内存池的事件状态管理方法,所述事件状态包括网络并行仿真的事件状态,所述基于内存池的事件状态管理方法包括步骤:
侦测到逻辑过程单元启动后,确定所述逻辑过程单元对应的内存池,并确定所述逻辑过程单元在运行过程中所产生的执行事件;
确定所述执行事件对应的事件状态,基于所述内存池对所述事件状态进行管理。
可选地,所述基于所述内存池对所述事件状态进行管理的步骤包括:
若所述事件状态为内存分配状态,则确定所述执行事件对应的待分配内存大小、第一事件身份标识码ID和事件状态数据;
在所述内存池的可分配内存中查询,是否存在与所述待分配内存大小匹配的内存链表;
若存在所述内存链表,则在所述内存链表的链表尾部确定对应的内存块,并确定所述内存块的内存大小是否与所述待分配内存大小匹配;
若确定所述内存块的内存大小与所述待分配内存大小匹配,则将所述第一事件ID和所述事件状态数据填充至所述内存块,并根据填充好的内存块返回对应的内存块地址。
可选地,所述确定所述内存块的内存大小是否与所述待分配内存大小匹配的步骤之后,还包括:
若确定所述内存块的内存大小与所述待分配内存大小不匹配,则根据所述待分配内存大小对所述内存块进行切分,得到对应的第一目标内存块,并将切分后多余的内存块返回至所述内存池的可用内存列表中;
将所述第一事件ID和所述事件状态数据填充至所述第一目标内存块,并根据填充好的第一目标内存块返回对应的内存块地址。
可选地,所述基于所述内存池对所述事件状态进行管理的步骤包括:
若所述事件状态为内存修改状态,则确定所述执行事件对应的待修改内存基地址、待修改事件状态数据、偏移值和第二事件ID;
在所述内存池中查询,是否存在与所述待修改内存基地址对应的第二目标内存块;
若存在所述第二目标内存块,则为所述第二目标内存块分配新的内存块,并将所述第二目标内存块中的原始事件状态数据拷贝至所述新的内存块;
通过所述待修改事件状态数据更新所述原始事件状态数据,并将所述第二事件ID和所述偏移值填充至数据更新后的第二目标内存块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东省新一代通信与网络创新研究院,未经广东省新一代通信与网络创新研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110607541.0/2.html,转载请声明来源钻瓜专利网。