YHSIM多核并行化技术研究与实现
作者单位:国防科学技术大学
学位级别:硕士
导师姓名:时向泉
授予年度:2015年
学科分类:08[工学] 080203[工学-机械设计及理论] 0802[工学-机械工程]
主 题:YHSIM 多模型分块建模 实时仿真 多核并行 帧时间同步
摘 要:YHSIM是一个功能强大的实时半实物建模仿真软件平台。然而,目前基于YHSIM的模型解算只能在单核上运行,随着系统规模和复杂度的增加,在一个帧周期内要解算的模型越来越多、解算量越来越大,并且为提高仿真的精度,系统对帧时间的要求越来越短,这就使得单核运行的方式越来越难以满足模型实时解算的需求。另一方面,多核已经成为CPU发展的主流,多核并行可有效提高模型解算效率。因此,开展YHSIM多核并行化技术研究,对于减少模型解算时间,满足实时半实物仿真越来越短的帧周期需求具有十分重要的理论意义和实用价值。针对YHSIM模块化语言和模型解算的特点,结合多核计算平台的特征,在相关关键技术的指引下,深入分析与研究了YHSIM的建模框架、编译方法、线程创建和线程实时帧同步技术等相关技术,主要工作和创新包括:(1)模型拆分是实现YHSIM多核并行化的基础,要实现模型解算并行就需要将原本一个内核任务分解到多个内核上,而目前的YHSIM建模框架是将所有的模型封装于一个模型块(DYNAMIC)中,系统无法自行拆分实现并行。为此,提出了支持多核并行的YHSIM建模框架,该建模框架允许用户将可以并行执行的模型封装于不同的模型块中,系统自动将不同的模型块创建为不同的实时线程,从而实现基于多核的多模型解算并行,为YHSIM多核并行化打下了基础。(2)目前的YHSIM编译器不支持多模型块的编译和代码生成,而直接修改编译器工作量和难度大,为此,提出了基于现有YHSIM编译器的多模型联合编译方法,通过编译预处理按照传统YHSIM块结构特点将多模型块合并,然后采用YHSIM编译器统一编译生成代码,之后再根据各模型块参数组成等信息进行代码拆分,从而用最小的代价实现了多模型块的编译和可并行执行的代码生成,为多模型块的并行解算提供了支持。(3)为实现多模型解算的并行,确保多模型并行解算的实时性,提出了基于关联掩码信息的RTX实时线程动态创建方法和基于状态变量操作的实时帧同步技术,该技术通过RTX关联掩码信息获取实时内核分配情况并创建相应个数的线程,通过对实时线程状态变量的逻辑操作实现对各个模型解算线程的帧时间同步,从而有效实现了多模型实时并行解算。基于上述研究成果,设计实现了一个支持多核并行的YHSIM建模与实时仿真软件平台。测试表明,该软件能够有效地支持多模型分块建模和实时并行解算,典型用例测试表明,使用三核模式能够将模型解算时间从0.68ms降到0.255ms,效率提高2.67倍。目前,该软件已经在相关单位得到了应用。