论文部分内容阅读
网络化测试以独特的分布式架构在武器装备测试、核爆炸试验、航空航天测试,钢铁、化工、石油等工厂自动化中有着广泛的应用。实时性是网络化测试系统的主要问题之一。除了采用高性能测试仪器和高速通信网络外,测试数据的处理是影响系统实时性的关键。针对目前使用较多的集中式数据处理方式下可能存在的网络传输延迟、数据处理时效性差的问题,本文提出了一种适于网络化测试系统的并行数据处理架构,存在着进一步提高系统实时性的可能。该研究可看作是并行计算、集群计算在测试领域的拓展。在深入分析了多种计算模式、计算平台构建方案及隔离技术的基础上,结合网络化测试系统结构特点,设计了一种双层资源管理调度模型:通过PBS在系统层进行局域网络仪器资源的管理,用户通过系统的中心——主控计算机进行包含了资源需求和如何使用这些资源的命令作业脚本的提交,并配置作业调度策略,使系统给出物理节点的运行建议。在仪器节点上,针对嵌入式节点多核、多内存节点的应用环境,基于Linux系统的Cgroups内核特性构建了资源容器,即计算任务可以以特定的CPU时间比率和内存限制,在特定的CPU、内存节点上进行运行。构建了适合仪器环境的并行运算平台,选取适于高性能计算的消息传递模型MPI,使用其开源实现MPICH配合并行进程管理器Hydra,在网络一系列网络配置的基础上,构建并行程序的调试、运行环境。分析并行算法的一般开发策略,按照数据分解的方式,以串行FFT算法为基础实现了FFT算法的并行化。在并行FFT算法的基础上,利用MPI标准提供的通信支持,开发了并行FFT数据处理应用程序。实验结果表明,可成功实现从顶层作业脚本编写、提交,系统给出运行仪器节点建议,并行FFT程序在建议节点上运行,并将计算进程纳入资源容器进行执行等功能。性能参数分析表明,通信开销是影响并行数据处理性能的主要因素,是进一步提高系统实时性的关键。