《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 设计应用 > AMS-02远程中心自动化生产系统的设计与实现
AMS-02远程中心自动化生产系统的设计与实现
2014年微型机与应用第21期
单雅辉
北京航空航天大学 数学与系统科学学院, 北京100191
摘要: AMS-02实验的目的是利用独特的太空环境来研究宇宙中的暗物质、反物质以及测量宇宙射线的来源和组成。由于该实验具有数据量大、生产过程复杂、计算中心分布广泛的特点,本文首先介绍了AMS-02实验的背景和数据需求,然后详细地分析了其数据类型以及处理流程,最后通过整合关键技术,为AMS-02实验远程计算中心设计并实现了一套基于脚本语言、轻量级、易移植的自动化生产管理系统,大幅度地提高了该实验中数据生产的效率。
Abstract:
Key words :

  摘 要AMS-02实验的目的是利用独特的太空环境来研究宇宙中的暗物质、反物质以及测量宇宙射线的来源和组成。由于该实验具有数据量大、生产过程复杂、计算中心分布广泛的特点,本文首先介绍了AMS-02实验的背景和数据需求,然后详细地分析了其数据类型以及处理流程,最后通过整合关键技术,为AMS-02实验远程计算中心设计并实现了一套基于脚本语言、轻量级、易移植的自动化生产管理系统,大幅度地提高了该实验中数据生产的效率。

  关键词: AMS-02实验;数据生产;自动化;轻量级

0 引言

  阿尔法磁谱仪实验(Alpha Magnetic Spectrometer)是由物理学家、诺贝尔奖获得者丁肇中教授领导的一个大规模国际物理实验。阿尔法磁谱仪是安装在国际空间站上的唯一大型高能粒子探测器,它于2011年5月搭载NASA奋进号航天飞机送至国际空间站并成功安装运行[1]。利用磁谱仪强大而特殊的磁场,探测器可以利用独特的太空环境进行基础物理研究,例如从宇宙中捕捉粒子并将这些信息以数据形式记录下来,然后从国际空间站上源源不断地将获得的数据传回欧洲核子中心(CERN)进行分析,进一步探索宇宙组成以及反物质、暗物质的存在。

  截止到2014年6月,探测器已经采集到约 500亿个太空粒子事件,从探测器传到地面的数据记录了探测采集的原始电信号,这些信号需要经过分类、重建与存档等过程才能将其转化为可供物理学家进行分析的物理数据;另一方面,为了检查探测器的性能以及为更深度的物理分析提供支持,实验中也使用蒙特卡罗方法模拟探测器产生仿真数据。物理学家在数据分析中同时参考这两种数据,可以将误差减小到最低以提高分析结果的精度。由此可见,AMS-02实验具有数据量大、类型多样并且数据处理过程复杂等特点。

  此外,AMS-02实验是跨地区合作的国际性科研项目,美、中、俄、意、德等16个国家的56所研究机构均参与其中。为了实现对现有资源的合理利用,其大部分数据生产任务由这些合作单位来承担并随之建立了远程计算中心。这种分布性也带来了一系列的问题,例如各个远程计算中心地域上的分散性、软硬件配置的差异性等,另外,部分中心不仅要对探测器采集到的原始数据进行数据重建,还要进行蒙特卡罗仿真并对仿真数据进行分析和存储。

  虽然另一大型物理实验ATLAS已经有一套完善的基于数据驱动的工作负载管理系统——PanDA,该系统不仅可以很好地实现ATLAS实验中的数据处理、仿真和分析等功能,而且能够满足迅速变化的物理需求[2]。但是,它是一个庞大的数据生产系统,需要大型开发团队的支持,同时ATLAS实验的计算中心较为集中、系统资源统一,便于集中管理[3],显然PanDA 的管理模式对于AMS-02实验并不适用。因此,为AMS-02实验设计和实现一套自动化生产管理系统是十分必要的。

1 AMS-02数据的文件类型及处理流程

  1.1 AMS-02数据的文件类型

  AMS-02实验数据生产中主要包括Raw文件和Root文件两种文件类型。Raw文件是指探测器在太空中收集到的电信号,这些参数需要经过仔细的重建、分类与存档才能够被物理学家用来分析;Root文件则是Raw文件经过数据重建过程所产生的,包括粒子的入射方向、轨迹、动量、质量、电荷、能谱等具体的物理量信息,可以直接用来做物理分析[4]。

  1.2 AMS-02实验数据处理流程

  AMS-02实验的数据处理与分析涉及到三方面的内容:蒙特卡罗仿真、数据重建和物理分析。AMS-02的数据生产与分析流程图如图1所示。

001.jpg

  (1) 蒙特卡罗仿真: Geant4软件使用蒙特卡罗方法模拟射入探测器的粒子以及其相互作用的过程,整个过程以AMS-02探测器模型作为基础,将Raw文件作为输出。

  (2) 数据重建: 将AMS-02探测器采集到的原始数据或者是蒙特卡罗模拟数据进行解压缩、校正、数字化等一系列处理,将电信号转化为物理学家可直接用于分析的数据(电荷、速度、能量等),整个过程以Raw文件的形式作为输入,以Root文件作为输出。

  (3) 物理分析: 根据物理学家提供的不同物理分析参数,实现与已存储的AMS仿真数据以及重建数据的动态绑定,进行相应的观察、分析,并给出相关结论和可视化图表 [5] 。

2 AMS-02自动化系统设计分析

  2.1 数据生产类型的差异性

  对于AMS-02实验自动化生产系统来说,其数据生产既包括数据重建的过程,也包括蒙特卡罗仿真的过程,但这两个过程并不相同,其差异主要包括以下两点:

  (1) 并行程度的差异:数据重建一般需要16~24个线程处理,蒙特卡罗仿真过程则为单线程;

  (2) 运行时间差异:光子子数据流重建每个作业仅需要几十秒,标准数据重建需要几个小时,而蒙特卡罗模拟则需要几天。

  以上差异要求生产平台能够进行动态自适应,这样既可以保证作业提交效率,又能充分利用提交间隙进行其他作业管理操作。

  2.2 数据传输的设计分析

  基于AMS-02的实验需求, 其大部分数据重建和蒙特卡罗仿真过程需要在远程计算中心进行,当生产完成后,再将产生的文件传回欧洲核子中心进行统一的管理和存储。

  考虑到远程计算中心地域分布的广泛性,在进行系统设计时要求考虑到频繁的数据传输,同时要保证实验数据的可用性、传输速率以及网络的稳定性。

3 AMS-02自动化生产系统概述

  3.1 系统流程简介

  AMS-02自动化生产系统是基于该实验的数据需求而开发的一套完整的数据生产管理系统,整个处理过程包括作业申请、提取、提交、更新、验证、传输等。该系统具体的生产流程图如图2所示。

002.jpg

  (1) 作业请求:用户在Web端提交申请,完成后将作业模板压缩包自动发送到指定邮箱中;

  (2) 作业提取:Getmail自动读取邮件并使用Munpack工具提取附件,根据不同的作业类型配置适合的环境变量,并保存到特定路径;

  (3) 作业注册:读取压缩包中每个作业的详细信息并写入Sqlite数据库中;

  (4) 作业提交:将作业提交到作业调度系统 (例如LSF、PBS等) ,不同系统根据各自的调度策略执行作业,确保发挥最优的系统性能;

  (5) 状态更新:实时查询队列中作业状态并更新数据库信息;

  (6) 作业验证:对已完成的作业进行CRC验证,确定数据结果的有效性和可用性;

  (7) 作业传输:将作业的摘要文件和数据文件 (Raw、Root文件) 传回欧洲核子中心。

3.2 系统特性分析

  3.2.1 轻量级、可移植性

  该系统不依赖于任何第三方商业软件,也不需要管理权限和安装软件,且易于部署,例如采用轻型的SQLite数据库,它内置于大多数Linux发行版本中,使用方便,资源占用率低,处理速度快。因此,在系统部署时将所需的软件包转移到相应服务器上并进行参数化配置安装即可,同时在源代码进行移植时,根据不同计算中心的软硬件配置情况(例如作业调度系统、数据传输软件的差异),只需要对相关代码进行简单的修改就可以快速应用。

  3.2.2 自动化

  一方面,该系统设计了作业缓冲池机制,可以智能地控制向作业调度系统中提交的作业数量。通过实时更新状态来判断队列中是否有空闲空间,若有则从缓冲池中读取作业信息并提交,否则继续等待,这样既可以保证计算节点时刻满负荷运转,又可以高效合理地利用CPU资源。

  另一方面,为了提高该系统的生产效率,系统采用流水线的方式实现了整个生产过程的自动化管理:在系统设计时将各个子过程按照运行时间、资源占用率的不同,采用同步或者异步的策略进行作业提交。同时,为了避免相同程序同时运行所带来的问题,在系统执行前会检测是否存在相同的进程,若发现则自动退出。

  3.2.3 并行化

  根据不同批量作业系统的特点(如作业提交的反馈时间)以及作业运行时间采用同步或者异步的方式进行作业提交:以同步方式处理耗时短、轻量级的生产流程(例如作业提取、提交以及状态更新等),以批量作业的方式进行异步处理耗时长、CPU占用率高的生产步骤(例如作业验证),而对于运行时间长、CPU占用率低的作业传输过程来说,则采用独立多线程的运行方式。

  AMS-02实验的远程计算中心地域跨度大的特点对数据传输过程带来了一定的挑战。这里使用了IPv6和Bbftp/Lftp相结合的传输方式,其中Bbftp/Lftp是数据传输软件,支持多线程并发传输,特别对大文件传输比传统Ftp具有更高效率[6]。

  此外,对于数据库访问来说,采用了数据库操作类来封装数据库查询、增加、更改、删除等操作,这样只要调用接口就可以实现数据库操作,方便快捷,结构清晰,实现了Sqlite3数据库的多进程/线程的并发访问。

4 结论

  AMS-02自动化生产管理系统能够适应不同的批量作业处理平台、不同的生产类型,满足了实验的数据生产需求。该系统已经在德国Juropa、意大利Cnaf计算中心使用并且运行稳定。这不仅大幅度地提高了生产效率和资源使用率,而且保证了数据有效性。

  目前,该系统正在法国Lyon计算中心试运行,今后将进一步观察和调试,并根据其实际情况逐步完善系统性能。

参考文献

  [1] 杨民,陈国明. 国际空间站上的AMS实验[J]. 现代物理知识,2011,23(5):10-15.

  [2] Maeno T. PanDA: distributed production and distributed analysis system for ATLAS[J]. Journal of Physics: Conference Series 119,2008: 062036.

  [3] Nilsson P. Experience from a pilot based system for ATLAS[J]. Journal of Physics: Conference Series119,2008:062038.

  [4] 杨鹏. 阿尔法磁谱仪实验海量数据处理环境的研究[J]. 计算机科学, 2011,38(6):41-44.


此内容为AET网站原创,未经授权禁止转载。