APP下载

高性能分布式论证仿真支撑环境分析

2012-07-19梁洪波张英潮

哈尔滨工业大学学报 2012年9期
关键词:盟员共享内存高性能

陈 欣,梁洪波,李 猛,张英潮

(1.北京邮电大学计算机学院,100876 北京;2.复杂系统仿真国家重点实验室,100101 北京;3.国防科技大学 计算机学院,410073 长沙)

高性能分布式论证仿真支撑环境分析

陈 欣1,2,梁洪波3,李 猛3,张英潮2

(1.北京邮电大学计算机学院,100876 北京;2.复杂系统仿真国家重点实验室,100101 北京;3.国防科技大学 计算机学院,410073 长沙)

为获得能满足论证仿真需要的具有超实时运算能力的高性能仿真支撑环境,根据高性能分布式仿真的需求特点,研究以高层体系结构(HLA)为核心的高性能分布式仿真集成开发与运行管理环境的软件组成和体系结构,主要包括集成开发环境和运行与监控管理环境,为高性能分布式仿真应用的开发、测试、集成、初始化、运行、监控、管理等提供一体化的支撑.重点研究基于高性能计算机的分布仿真支撑环境HPCRTI的功能设计和关键技术.基于该环境进行了某装备体系仿真实验,实验结果表明,大规模仿真系统的运行效率提高了17.8倍.

高层体系结构(HLA);高性能分布式仿真;开发集成环境;运行与监控管理环境

论证仿真主要以复杂问题分析为目的,利用仿真技术模拟战争系统的运动规律,突出模型的构建和大量的运算分析,对模型构建的可信性要求高,对模拟系统的分析计算能力要求高,其目的是能够获得可行、优化的战略决策、作战方案以及武器装备运用方案.论证仿真一般针对研究对象的不确定性因素进行探索仿真,获取大量仿真结果数据,继而采用适当的后处理方法对仿真结果进行综合分析,以发现和理解复杂现象背后的数据变量(各个影响因素)之间的重要关系,找出它们之间所遵循的规律,获得论证问题的合理解与满意解[1].

用于论证分析研究的仿真系统不同于用于训练的仿真系统,具有如下特点:

1)解空间的海量性.论证问题首先体现在变化因素多,如组成结构、数量规模、性能参数等;因此,优化时的解空间具有维度灾,方案的数量是根据解空间的维度而成指数倍增长.如“恐怖的海峡”采用了探索性分析方法,仅对7个变量进行分析,就产生了3×4×2×2×3×2×6=1 728次仿真试验方案.

2)仿真试验方案的海量性.由于解空间具有维度灾,效能指标的数量和结构非常繁多和复杂,而每项效能指标的获取都需要大量基础数据的支持.论证分析的结论需要建立在对多次仿真结果进行综合分析的基础上.例如,在“恐怖的海峡”项目中,兰德公司研究人员通过1 700多次JICM运行,用以研究7个关键变量的影响.在“沙漠盾牌”行动方案分析评估中,美陆军概念分析局(CAA)使用 CEM 共运行了500 多次[1-2].

3)仿真运行的超实时性.论证分析的仿真推演时间通常要求远小于实际军事活动的推进时间,且军事分析结论是建立在对各类关键变量进行大量探索性运算基础之上的;因此,运算时间成为分析仿真系统必须考虑的重要问题.“超实时”仿真运行模式能大幅度缩短对一次军事行动过程的仿真运行时间,进而实现在一个相对短的时间内完成尽可能多的仿真试验方案分析.如美军JWARS仿真系统能够在2.5 h内完成100 d时间的战区级战役.美国空军的THUNDER系统要求在2 h内对45 d的战役行动仿真运行5次,一次仿真运行的时间加速比要达到2000∶1.由此可见,高层次的论证分析仿真具有很高的仿真时间加速比.

1 目前分布式交互仿真平台存在的问题

目前,分布式仿真的代表是由美国国防部提出的高层体系结构HLA(High Level Architecture),该结构通过定义了一个灵活的、可伸缩的、可重用的软件体系,实现了基于组件“即插即用”的分布式仿真思想[3],并于2000年9月,被正式接纳为IEEE 1516标准[4].HLA技术对新一代分布仿真技术的发展起到了极大的推动作用.

在我国,不少科研单位都已研制了HLA仿真平台,并广泛应用于国防和经济建设的各个领域.然而,随着由于仿真规模的不断扩大和复杂程度的不断提高,基于PC机网络的仿真运行无法满足应用需求,主要存在以下几个问题.

1)系统响应慢.在论证过程中,总是希望修改某个参数(集)后,仿真系统能够迅速得到相应的仿真结果,但如果采用分布式仿真技术(DIS/HLA或其他体系结构),由于网络延时和节点间时间同步开销,这种需求是很难满足的.对于一个比较完整的攻防对抗仿真系统,通常至少需要运行30 min以上.

2)仿真试验时间长.武器装备论证要求定量的仿真结果达到一定的置信度水平,因此要求试验的样本数足够大,如果一次仿真试验需要较长时间,就无法保证仿真试验的效率;

3)多次仿真运行之间的不相关性很难保证.仿真定量评估采用的基本方法是蒙特-卡罗方法,它要求使用的随机数序列的独立性和相关性符合要求.对于分布式仿真系统来说,如果不经过精心的设计,是很难满足的.

4)仿真系统管理复杂.对分布式仿真系统,随着节点的增加,系统的开发、调试、维护和数据管理的复杂度也相应的加大.

因此,人们期待利用高性能计算机强大的计算和通信能力提高仿真系统的运行效率.基于高性能分布式仿真的要求,支撑环境必须具有高性能、跨平台的仿真运行支撑及监控管理能力[5],具备高度自动化的、功能丰富齐全的集成化仿真开发与集成测试环境,并为大规模分布式仿真建立先进、高效、规范的应用开发模式.

2 高性能分布式仿真支撑环境软件结构及功能设计

高性能分布式仿真支撑环境由集成开发环境和运行监控管理环境组成,为分布式仿真的开发、测试、集成、初始化、运行、监控管理、分析评估提供一体化的支撑,其软件结构如图1所示[5].

2.1 集成开发环境

集成开发环境具体包括对象模型开发工具、盟员框架自动生成工具、联盟测试工具、想定生成工具、任务分发与负载平衡工具、资源共享环境、对象模型库、盟员库、想定库等[5],旨在为大规模仿真的开发、测试、集成及仿真初始化等提供高度自动化、功能丰富齐全的集成化工具.

2.1.1 对象模型开发工具StarOMT

对象模型开发的目的是为了实现HLA分布交互仿真系统.该工具要求采用灵活快捷的数据组织方式、建模能力和模型重用能力.

图1 高性能仿真集成开发与运行支撑环境软件结构

2.1.2 盟员框架自动生成工具StarWizard

研究盟员框架自动生成工具旨在建立一个基于HLA/RTI仿真系统的可视化集成开发环境,可以为联盟成员提供一个高度结构化的、图形化环境.实现读入FDD格式的对象模型数据文件,自动生成基于FOM/SOM中各元素的C++源代码,生成联盟成员外壳代码,在RTI和实际仿真实体模型间提供一个抽象层等功能.联盟成员开发者只需要负责实现仿真实体模型的仿真功能.

2.1.3 联盟测试工具StarTest

联盟测试工具的研究旨在联盟开发和集成中,对联盟及盟员进行全面的测试,确保联盟各项功能的实现.

联盟测试过程较为复杂,包括盟员测试和联盟测试,其中盟员软件单元测试通常由各盟员的开发者对自己所开发的盟员进行测试,直至各软件单元没有错误且满足其最初的设计意图,为整个测试的基础;集成测试通常先进行盟员之间一对一的测试,再进行多盟员集中测试.

2.1.4 想定生成工具StarSET

传统的想定编辑与生成系统大多面向特定领域的具体应用,具有固定的想定参数结构和设置界面,通用性较差,各单位均想开发适合自己的想定系统.想定生成工具StarSET采用基于参数模板文件的通用想定参数编辑方法,通过解析用户提供预定义格式的仿真应用参数模板文件,自动生成参数设置界面,实现想定需求编辑与生成仿真想定参数,满足想定编辑与生成通用性的需求.

2.1.5 任务分发器(StarDeploy)

研制任务分发器(StarDeploy)旨在依据作战方案,为用户提供描述任务分发的规程,根据机器的载荷状态,对盟员进行动态分配,依照用户的任务分发规程对盟员进行远程启和初始化设置.技术难度主要包括任务分发规程描述语言,负载平衡调度机制,流程控制机制以及远程分发和执行机制.

2.1.6 资源共享环境StarShare

建立资源共享环境通过为模型、数据、计算、存储、网络等各种资源的封装和发布提供工具,通过网络用语可实现共享资源的浏览、查询和信息交换(许可条件下).当本地资源不足时(大规模作战),可将多个实验室构成为一仿真网络,利用远程仿真资源,将远程实验室作为分布式仿真的一个节点加入到大规模仿真系统中.环境共享资源的关键技术主要包括资源管理和调度、网格监控服务和数据管理.

2.2 运行与监控管理环境

运行与监控管理环境为分布式仿真的运行、监控、管理记录回放等提供高效、直观的支撑平台和工具,主要包括高性能分布式仿真运行支撑平台、联盟管理工具、仿真显示盟员和记录回放工具[5].

2.2.1 高性能分布式仿真运行支撑平台HPC-RTI

高性能仿真运行支撑平台HPC-RTI旨在支持多武器平台、大范围、多军种以及战略、战役和战术层次上的模拟仿真,实现不同地域、不同领域的各仿真实体及其与实装系统的综合集成和无缝连接[3].

与高性能仿真运行支撑平台相关的主要技术突破包括:满足大规模仿真的RTI体系结构及其实现技术,特别是基于高性能计算机的RTI的实现技术;高效的RTI自适应通信机制;针对分布式仿真应用多盟员互连通信特点的高效的共享内存通信技术等.

2.2.1.1 高性能RTI体系结构及其实现技术

高性能RTI由于需要支持的实体规模大、盟员多,因此,适宜采用功能分布式体系结构[6].其实现由两部分组成:中心RTI部件CRC以及本地RTI部件LRC.HPC-RTI实现结构如图2所示.

图2 HPC-RTI实现结构

CRC作为中心服务器程序,负责创建与销毁联盟,并在联盟执行过程中,维护全联盟信息,监控联盟运行状态,协调各盟员之间的信息同步.

本地RTI部件(LRC)作为盟员方的HLA中间件,主要完成以下任务:为盟员调用RTI服务提供支持;向盟员提供回调服务支持;维护本地联盟及盟员信息;实现与CRC之间的通信;实现与其他LRC之间的通信.

功能分布式体系结构能够有效地分散RTI的计算和通信负担,提高仿真系统的运行效率.

2.2.1.2 高性能RTI自适应通信技术

目前,刀片集群已逐渐成为高性能计算机(HPC)的主流体系结构,该结构结合了SMP和MPP的优点,具备节点内共享存储和节点间分布存储的层次结构,可实现节点内共享内存、节点间Infiniband等高速互连两级通信.此外,当与外部网络连接时,还存在高性能节点与外部PC节点间的以太网通信.这种多层次的通信环境,客观上对HPC-RTI的通信机制提出了更高的要求[7-9].HPC-RIT 的通信环境见图3.

图3 HPC-RTI通信环境

然而,现有的RTI通信机制主要基于TCP/IP实现,虽然能满足基于分布网络构建HLA仿真的应用需求,但单一的通信机制不能有效发挥高性能计算机层次式通信硬件的效能,即不能实现同一个计算节点内盟员间高效的共享内存通信,只能基于同一个网络实现盟员间互操作.为实现与外部盟员间通信,盟员需基于以太网TCP/IP通信,因此不能发挥高性能计算节点间高速IB互连优势.为此,必须研究支持HPC-RTI共享内存/IB/以太网自适应的通信机制,使之能够根据通信双方所在节点的网络拓扑信息,自适应建立延迟最小的通信连接,实现共享内存、IB等高速互连及以太网互连的自适应选择.

2.2.1.3 高效的节点内盟员共享内存通信技术.

对于多核多CPU计算平台,共享内存是一种高效的进程间通信方式,通过共享内存运行不同CPU上的进程间通信从而获得较高的通信效率.然而,传统的共享内存通信方式是多个进程使用同一个内存区域,当通信的进程增多时,易造成读写冲突,导致系统资源等待,共享内存通信效率降低.针对分布式仿真应用多盟员互连通信的特点,研究基于分布式共享内存的RTI盟员通信算法(见图4),在保证内存访问一致性的同时,有效减少盟员之间的共享内存访问冲突,提高通信效率.

图4 分布式共享内存通信

2.2.2 联盟管理工具StarFM

在HLA仿真中,对联盟进行监控和管理需建立在对RTI、联盟和盟员深入了解的基础之上,是一项十分复杂的工作.为有效对其进行监控和管理,HLA中定义了管理对象模型MOM,有限的对RTI、联盟和盟员进行监控和管理[10].

2.2.3 仿真显示盟员StarScope

仿真显示盟员在仿真过程中可以表格、一维曲线、二维曲线、三维曲线、直方图、二维态势图、盟员状态图等多种方式实时显示指定盟员的有关属性和参数.

2.2.4 记录回放工具StarLogger

记录分析是HLA仿真平台必备的功能,但对于大规模分布式仿真系统,巨大数据的多样性和复杂性使得记录分析面临的挑战,对仿真过程中的数据进行有效记录和分析成为许多仿真应用和发展的巨大障碍.研制盟员记录分析工具的目的是将仿真过程中盟员的状态进行记录和保存,仿真完成后通过保存的记录重现盟员仿真的过程,进而对联盟执行和结果分析提供帮助.

高性能仿真记录回放工具面临运行环境复杂(高性能计算机+PC机+共享内存、Infiniband、以太网等多种通信环境)、记录数据量大等挑战,需要突破跨平台、自适应、高效率等相关技术.

3 陆军装备体系论证仿真实验

某体系对抗仿真系统共有300多个盟员,涉及1 300多个装备实体对象,在传统的HLA仿真环境下运行一次共需67 h,将其移植到本文的高性能环境并进行仿真效率的分析对比,主要包括三类指标.

1)仿真实体硬件指标主要体现仿真资源的硬件环境,包含系统反应时间、信息存取速度和节点利用率;

2)仿真实体网络资源指标主要体现分布式环境中数据交换的网络环境,包含反应网络QoS性能指标网络带宽、延时和信道利用率;

3)仿真实体综合性能主要体现在分布式仿真中的实体模型组件性能,包含组件智能水平、响应时间、吞吐量和资源利用率.

这些指标可以分别量化,同时可以根据不同系统设计要求或经验选择各指标的权值作为资源的综合评判标准.为了更公平的对比,以单个节点的仿真效率评价为基准,其评价函数和表示为

其中αi(i≤i≤10)为评价函数的权值参数,分别对应表示系统的9个具体资源评价指标参数.在不同层次进行资源评价时,可以根据信息聚合的不同要求对评价函数的权值进行调整.指标参数包括:

tR(n)表示第n个节点上的硬件设备反应时间,即节点从收到信息请求到信息返回的总运算时间,这个指标本是一个随机数,对单一特定任务满足高斯分布,这里定义为指标的统计期望值.

s(n)表示第n个节点上硬件设备的数据存取速度,即信息在运算过程中对数据库操作的总完成时间,在硬件性能和软件相同的情况下,它可以设为存取信息量的线性函数.

rN(n)表示第n个节点上硬件设备的节点利用率,即节点运行时间与系统运行时间的比值,这个量体现了系统并行运行的效率.

b(n)表示针对第n个节点的网络带宽指标,一般可以作为固定数值来处理.

tD(n)表示第n个节点的网络传输延时,即从数据传输请求开始到数据传输完成确认为止的时间间隔,这是一个随机数,满足高斯分布,这里也考虑为指标的统计期望.

rC(n)表示第n个节点的网络信道利用率,即网络通信时间与系统运行时间的比值,这个量体现了网络利用的效率.

tC(n)表示第n个节点硬件平台上可组合组件的响应时间,即节点程序从收到信息请求到信息返回的总运算时间,这里也定义为指标的统计期望值.

h(n)表示第n个节点硬件平台上可组合组件的吞吐量,即组件每秒钟处理信息量的大小,这个量体现了组件信息处理的效率.

rm(n)表示第n个节点硬件平台上可组合组件的资源利用率,即组件运行时间与系统运行时间的比值,这个量体现了资源利用的效率.

通过运行计算得到如图5所示的对比结果,其中节点的平均仿真效率R(n)从70增加到1 246,提高了17.8倍.所用仿真时间从4 020 min减少到279 min,缩短了93.1%.

图5 仿真运行效率对比

4 结束语

1)由于需要海量仿真数据作为支撑,论证仿真系统需要在高性能仿真平台上实现超实时仿真.

2)基于高性能计算机的HPC-RTI是实现高性能仿真环境的关键,其主要解决分布式体系结构、自适应通信技术和共享内存通信技术等问题.

3)高性能分布式论证仿真支撑环境主要由集成开发环境和运行与监控管理环境两大部分组成,可为分布式仿真的开发、测试、集成、初始化、运行、监控管理、分析评估提供一体化的支撑.

4)对某大规模仿真系统进行对比分析表明,本文设计的高性能分布式论证仿真支撑环境运行效率提高了17.8倍,仿真时间缩短了93.1%.

[1]姚益平,张颖星.基于并行处理的分析仿真解决方案[J].系统仿真学报,2008,24(12):6617-6621.

[2]姚益平,刘刚.面向大规模体系仿真的高性能仿真计算机系统[J].系统仿真学报,2011,23(8):1617-1623.

[3]李猛.高性能RTI自适应通信机制研究与实现[D].长沙:国防科学技术大学,2011.

[4]Simulation Interoperability Standards Committee(SISC)of the IEEE Computer Society.IEEE Standard for Modeling and Simulation(M&S)High Level Architecture(HLA)—IEEE Std 1516 - 2000,1516.1 - 2000,1516.2 -2000[S].New York:The Institute of Electrical and Electronics Engineers Inc,2000.

[5]姚益平,曲庆军,刘步权,等.大规模分布式仿真支撑环境的设计[C]//全球化制造高级论坛暨21世纪仿真技术研讨会论文集.贵州:中国系统仿真学会,2004:458-462.

[6]姚益平,卢锡城,王怀民.层次式RTI服务器的设计与实现[J].计算机学报,2003,26(6):716 -721.

[7]姚益平,卢锡城.HLA/RTI时间管理的一种优化算法[J].电子学报,2004,32(2):294 -297.

[8]CHEN Chunpeng,YAO Yiping,WANG Huaimin.Hierarchical Federation Community and Time Management[J].SIMULATION,2008,84(7):373-383.

[9]LIU Buquan,YAO Yiping,WANG Huaimin.An Efficient Algorithm in the HLA Time Management[C]//Proceedings of the 2007 Winter Simulation Conference.New York:Institute of Electrical and Electronics Engineers Inc,2007:585 -593.

[10]梁洪波,柳林,姚益平,等.高性能RTI自适应通信机制研究[J].国防科技大学学报,2012,34(3):148-153.

Analysis of support environment for high performance distributed simulation

CHEN Xin1,2,LIANG Hong-bo3,LI Meng3,ZHANG Ying-chao2

(1.School of Computer Science and Technology,Beijing University of Posts and Communications,100876 Beijing,China;2.State Key Lab for Complex Systems Simulation,100101 Beijing,China;3.Computer College of National University of Defense Technology,410073 Changsha,China)

To obtain high-performance simulation supporting environment that can satisfy the need of argument simulation and with super real-time operation ability,according to the characteristic of high-performance distributed simulation,a software architecture and components of integrated environment is researched for developing and running high-performance distributed simulation based on high level architecture(HLA).It Mainly includes the integrated development environment and running-monitoring management environment,and provides an integrated environment for the development,test,integration,initialization,execution,monitoring,and management of high-performance distributed simulation.The function design and key technologies of each component,especially HPC-RTI,are described in detail.A certain equipment system simulation experiment was carried out,and the experimental results show that the efficiency of large-scale simulation system is improved by 17.8 times.

high level architecture(HLA);high-performance distributed simulation;development and integration environment;execution and management environment

TP391.9

A

0367-6234(2012)09-0107-06

2011-08-07.

国家自然科学基金资助项目(61170048).

陈 欣(1978—),男,博士研究生.

陈 欣,skybirdcx@sina.com.

(编辑 杨 波)

猜你喜欢

盟员共享内存高性能
“盟员之家”助力西瓜产业发展
通过QT实现进程间的通信
基于PCI总线的多处理器协同机制研究
人民律师为人民——记福建省民盟优秀盟员、武夷山市政协委员邱芝杰
一款高性能BGO探测器的研发
高性能砼在桥梁中的应用
SATA推出全新高性能喷枪SATAjet 5000 B
高性能可变进气岐管降低二氧化碳排放
QNX下PEX8311多路实时数据采集的驱动设计
一种高效RTAI 共享内存管理层的研究与实现*