张曦
摘 要:本文針对电子工程领域中黑盒子优化分析问题,提出一个基于River技术的动态面向服务优化计算框架(DSOCF),旨在分布式并行计算黑盒子,加快优化速度。首先分析优化算法中黑盒子的执行模式,然后遵循动态面向服务架构并围绕着River的服务发布和查找功能设计所需的核心服务并利用它们构建DSOCF,最后根据黑盒子在DSOCF中优化的实验数据证明该框架的有效性。
关键词:连续盒子;分析任务;代码基
1 引言
求解一次黑盒子问题[1]就要调用仿真度高的优化计算软件来进行非常耗时的计算,本文设计和实现了一个基于River[2]的动态面向服务的优化计算框架(Dynamic Service-oriented Optimization Computing Framework, DSOCF),该框架作为一个高效分布式并行计算框架在动态的网络环境中评价黑盒子,具有良好的可扩展性、可靠性和高效性。
2 DSOCF体系结构
DSOCF的物理网络结构如图1,门户(Portal)、HTTP、查询(LookUp)服务器以及计算服务器(Server i)组成了DSOCF的硬件基础设施。
门户服务作为DSCOF的门户验证用户身份,还利用一个队列保存所有的分析任务(AT)(AT代表黑盒子)。在接收用户优化算法发送来的一组AT后,门户服务将请求调度服务根据均衡负载算法派遣AT到合适的计算服务-壳服务,如图2所示。
壳服务能够被注册到底层中的查找服务中,以便请求者发现他们,并帮助AT调用安装在计算资源中所需的计算软件,如ANSYS、3DCS和ABACUS[3]。壳服务、信息收集服务和重注册服务都部署在异构的计算资源上。
壳服务作为服务供应方,创建服务代理并注册到查找服务中的注册列表中,信息收集服务收集本资源实时的硬件指标和软件配置信息,将其作为服务代理的属性,并在其注册成功后周期性地更新查找服务注册表中该服务代理的属性,重注册服务周期性的监视查找服务的状态。
调度服务负责调度AT和均衡负载,在AT集合与注册列表中的服务代理集合上完成最优映射,生成一个最佳调度策略,并将选中的所有服务代理传送回门户服务。门户服务执行服务代理完成与其对应壳服务通信链路的动态搭建,传递AT到壳服务进行本次计算。执行服务代理期间所需的类文件从Http服务下载。
3 实验分析
实验对象是一个在单个计算节点上运行一次大概0.82分钟的AT。调用优化算法分别在单个计算节点和DSOCF上迭代执行10次、30次、50次和70次,所需的执行时间如表1所示。最终在单个计算节点和DSOCF上的6次平均执行时间的平均值分别为52.71分钟和22.62分钟。这表明在DSOCF中执行的时间比单个计算节点少了大约57%。理论上来讲,这个值应该是66%,我们分析偏差的原因是由于框架内通信开销而造成的。
4 结语
本文提出的动态面向服务优化计算框架是一个新型分布式计算框架, 适应异构的计算机网络,这个框架易于部署在小型计算机网络上。它提供了对于多用户和不同任务优先级的可伸缩性支持,实验结果也证实了这个系统有效的加速了黑盒子优化过程。
参考文献
[1] SHAN, S, WANG, et al. Turning Black Box Into White Function [J]. ASME Transactions on Journal
of Mechanical Design, 2011.
[2] The Apache Software Foundation. Apache River News[EB/OL].[2013-05-18]. http://river.apache.org/
[3] Dimensional Control Systems, "DCS," 2014. [Online]. Available: http://3dcs.com/.