一种高性能嵌入式云计算平台架构*

2021-05-20 12:07
通信技术 2021年5期
关键词:计算资源执行器嵌入式

潘 灵

(中国西南电子技术研究所,四川 成都 610036)

0 引言

近年来,云计算、大数据、人工智能等技术高速发展,为社会带来了巨大的经济价值,并且深刻地改变改变着当今社会。然而,这些技术构建的底层硬件和操作系统是x86 等通用处理器或非实时操作系统,很难直接应用在对体积、功耗、高低温等极端环境下。军用武器电子装备,尤其是航空电子装备和航天载荷等,对环境适应性和处理实时性有非常高的要求,因此不得不大量基于现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)/信号处理(Digital Signal Process,DSP)等嵌入式处理器构建系统,而目前广泛采用的模块综合化集成方法,虽然能够获得较独立式装备更高的集成度和资源利用率,但集成难度大、复杂度高、周期长。为使武器电子装备适应下一代信息化战争的对抗需求,需要庞大的计算能力作为支撑,采用模块综合化的方式已经很难对超大规模计算系统进行集成,迫切需要提出一种新的系统架构。本文提出的高性能嵌入式云计算的处理平台架构就是诞生在这个技术背景下。

1 嵌入式资源虚拟化

采用二层资源调度的方式,将高速实时数据分析应用运行在容器虚拟机集群中。第1 层资源调度为通过容器虚拟机集群管理底层的嵌入式硬件资源,将计算资源和内存资源封装为容器虚拟机,在容器虚拟机中运行Node Manager 及Resource Manager,同时容器虚拟机占用的计算、内存等资源可弹性分配与设置[1];第2 层资源调度是通过资源管理调度高速实时数据分析分布式应用。在容器虚拟机集群中,可以运行多个资源调度集群,形成弹性可扩展的分布式计算集群,从而在容器虚拟机集群中部署专用加速应用,如图1所示。

图1 功能应用在容器虚拟机集群中部署框架

专用加速分布式应用需要通过云加速平面中的FPGA/DSP,实现实时专用加速算法。在通过容器虚拟机集群部署专用加速应用时,通用数据处理镜像直接运行在容器虚拟机上。各类专用算法镜像,在镜像运行到容器虚拟机上后,再将特定的加速算法,offload 到FPGA/DSP 加速资源上。加速算法之间通过实时高带宽低时延网络交互数据。

2 分布式计算框架设计

在总体方案设计过程中,首先对硬件组成进行逻辑上的分析,得出如图2 所示的硬件组成逻辑图。根据图计算的理论和方法[2],在总体方案设计上,将并行计算平台分为若干软件配置项,主要分为调度类的配置项与计算类的配置项,各配置项分别完成并行计算中与之相关的任务。

2.1 框架总体结构

并行计算框架主要包括通用调度域和实时计算域两个维度。通用调度域包含系统控制器(Master)、任务驱动器(Driver)、节点控制器(Agent)、执行器组管理器(WorkerMgr)几个功能模块,实时计算域中包含多个执行器,承担实质的实时计算任务,如图3 所示[3-4]。

图2 嵌入式并行计算硬件逻辑

图3 并行计算框架结构内部逻辑关系

2.2 多核DSP MapReduce 计算模型

DSP 的执行器框架包含:Ti systembios 操作系统、RapidIO 通信中间件、实时数据集管理等基本组成部分;并在此基础上,框架封装了基本的roundRobin、mergeto 等基本算子。用户自定义Map函数、Reduce 函数等功能,与框架进行集成,形成一个可运行在DSP 处理核上的算法,进入分布式框架的算法库进行管理[5]。算法产生过程如图4 所示。

2.3 实时计算图远程并行加载技术

实时计算图的运行过程就是计算图中多操作到硬件资源的部署过程,如图5 所示。大规模计算图或者多计算图并行运行时,这些图的运行需要将计算图中的多操作并行部署到计算域中通用的计算资源中去。

图4 DSP 执行器框架形成算法

图5 计算图中多操作到硬件资源的映射

计算图远程并行加载关键技术是一种基于远程过 程调用(Remote Procedure Call,RPC)网络远程调用框架。通过节点控制器和执行器组管理器分层部署策略,将计算图中的多个操作部署到硬件资源域中的大规模数量的计算核上的应用技术。该技术能够实现多DSP 核,甚至单核上多线程,以及多FPGA 分区等多种计算粒度的程序部署。

2.4 执行器Worker 高性能通信技术

执行器(Worker)可能部署于不同计算节点的计算核上,也可能部署于同一个计算节点的不同计算核上。为实现每个计算图中各个执行器(Worker)通信与位置无关,并满足执行器(Worker)间通信的高效性和实时性,执行器(Worker)之间采用统一的虚端口进行信息交互,突破了基于本地共享内存与SRIO 总线共享内存模型进行统一的内存映射通信技术,如图6 所示。

图6 核间通信Worker 通信

4 结语

本文针对当前军事电子装备中嵌入式计算资源与装备功能深度绑定,无法实现计算资源云化共享的问题,提出了轻量级计算资源云化方法,实现了高动态复杂任务的快速分解和跨平台灵活部署。针对商用并行计算系统难以满足实时性需求的问题,提出了分布式系统分域处理的理论和方法,将分布式系统分为通用调度域和实时计算域两个维度,计算资源和分布式任务的管理和维护部署到通用调度域,并行计算任务算法部署到实时计算域中,实现了调度平面与加速平面的协同运行,实时平面响应时间达到us 级。针对MapReduce、Spark 等大数据处理框架由于功能复杂、资源需求高,导致难以适应嵌入式计算资源的问题,提出了轻量级图计算实现方法,使平台具备支持大规模信号级并行计算的能力,支持计算节点数大于256,计算核大于1 024,并发任务数不低于128 个。

猜你喜欢
计算资源执行器嵌入式
多场下压电喷油器执行器电学特性试验研究
更正说明
自动驾驶汽车执行器故障冗余算法
Focal&Naim同框发布1000系列嵌入式扬声器及全新Uniti Atmos流媒体一体机
基于模糊规划理论的云计算资源调度研究
改进快速稀疏算法的云计算资源负载均衡
X-431实测篇2010年奔驰B200空调执行器电机学习
TS系列红外传感器在嵌入式控制系统中的应用
嵌入式PLC的设计与研究
基于Wi-Fi与Web的云计算资源调度算法研究