上海天文台安涛团队参与完成的大型科学计算项目入围国际高性能计算领域“戈登·贝尔奖” 2020年度决赛

  上海天文台安涛研究员、劳保强工程师参与完成的研究工作“Processing Full-scale Square Kilometre Array Data on the Summit Supercomputer”【1】入围2020年国际高性能计算领域最高奖“戈登·贝尔奖”【2】的决赛名单(Finalist)。决赛结果将于11月19日(北京时间11月20日)在美国举行的国际超算大会上揭晓。 

  平方公里阵列(SKA)是人类有史以来建造的最大射电天文望远镜,由两千多面碟形天线、上百万对数周期天线、数百个致密孔径阵列组成,将开辟人类认识宇宙的又一新纪元。SKA将以其巨大的接收面积获得极高的灵敏度,以其数千公里的基线获得极高的空间分辨率,以纳秒级的采样获得精细的时间信号特征,以高达每秒1亿亿比特(10 Pbit/s)【3】的速率产生超越当前全球互联网总量的数据。SKA大数据的处理和分析是整个项目的关键瓶颈之一,也关系到SKA能否取得预期科学突破。 

  SKA将于2021年启动建设,工程的第一期(SKA1)预计2029年完成,SKA的数据处理系统也进入了关键的工程化验证和实施阶段。SKA建成后,其科学运行将采用端对端的工作流程,建于望远镜台址附近的两个超级计算机(每一个运算能力达到每秒13亿亿浮点运算次数(130 Pflops)【4】)负责完成数据的预处理,工作流程以实时数据流的方式进行,因此对工作流程的稳定性、可扩展性和能耗要求极高;完成预处理后的数据通过高速宽带国际互联网传送到几个分布在主要成员国的区域数据中心进行深度分析,科学家主要通过区域数据中心开展科学研究。在科技部、中国科学院和SKA中国办公室指导下,在武向平院士和叶叔华院士领导下,上海天文台牵头筹备中国SKA区域数据中心。 

  该团队利用当时世界上最快的超算Summit【5】模拟和处理SKA1低频望远镜的完整数据处理流程,包括观测数据产生、采集、相关、校准、成像的实时流水线,取得了超出预期的成功。该团队的这一工作成功地仿真了“端到端”SKA工作流程,展示了一个典型的SKA科学实验的流水线处理过程,并输出图像数据集。这是迄今天文领域最大规模的数据流,表明天文学家有能力完成未来SKA的科学数据处理任务,为科学家探索宇宙提供了强大的支持,增强了SKA社区建设数据处理系统的信心,在SKA社区引起积极反响。在此实验中取得的关键技术突破在其他大型科学计算领域也有强大的应用潜力。 

  据上海天文台的安涛研究员介绍,本次实验面向SKA核心科学项目“宇宙再电离时期探测”,采用观测数据与理论计算相结合获得的天空模型,配合SKA1低频望远镜阵列的设计构型(包括512个台站,每个台站有256个天线,因此总天线个数131072),仿真了6个小时的观测数据,数据量即达到2.6 PB,相当于SKA先导望远镜一个月产生的数据量。生产这些数据总使用了27648个GPU,占有Summit资源的99%。 

  

  图1:实验设计的艺术想象图。该团队选择SKA最高优先级的科学目标“宇宙再电离探测”,结合SKA第一阶段低频望远镜的阵列构型和望远镜参数设置,在Summit超算上仿真出6小时观测数据,使用了27000多个GPU和将近20万CPU核,数据总量达到2.6PB。图片版权:澳大利亚西澳大学、美国橡树岭国家实验室、中国科学院上海天文台

  射电天文干涉数据采用一种建立在CTDS系统上的表格数据记录格式。对于SKA规模的数据流【6】来说,数据输入/输出(I/O)是最关键的技术瓶颈。为了突破这一难题,该团队自研了两款软件(AdiosStMan和Adios2StMan)提升数据I/O的并行化性能,并参与重构CTDS使其支持大规模并行输入/输出,还对射电天文软件核心库做了很多架构上的优化以提升AdiosStMan的效率。在实验过程中,数据写速率最高达到每秒925 GB【3】,超过SKA1设计需求的1.5倍,比常规的工作流提高3个量级以上,表明类似SKA这种涉及大规模I/O的科学计算问题有了初步解决方案。 

  该团队还为SKA专门开发了数据流执行框架(DALiuGE)。中国科学家在研发DALiuGE过程中做出了重要贡献,名字中的‘Liu’就是中文‘流’的拼音。 DALiuGE 采用数据驱动运算处理的先进思想,不仅大大提高了扩展性和灵活度,而且还提高了运行效率,在容错方面也具有良好的弹性和适应性【7】,其智能化的资源调度方式能够大幅度降低整体工作流的能耗,对于超大型科学计算具有实际意义,DALiuGE不仅能够满足SKA的数据处理任务,而且具备在数据密集型科学计算领域内推广应用的潜在价值。 

  

  图2:SKA“端到端”数据处理流程的演示。该实验展示了SKA低频望远镜从数据产生、采集、相关、预校准、成图的完整过程。整个数据处理流程连续运行3个小时,平均运算速度65Pflops,峰值130Pflops,达到SKA1超算的设计指标。图片版权:澳大利亚西澳大学、美国橡树岭国家实验室、中国科学院上海天文台 

  

  图3:实验产生的图像立方体。高速数据流的管理和处理是SKA系统工程的关键瓶颈之一。团队自研了工作流执行框架DALiuGE、并行化数据I/O系统AdiosStMan(以及升级版Adios2StMan),成功解决了SKA数据读写难题,最高写速率达到925GB/s,是SKA1设计指标的1.5倍。实验最终产生100TB的图像数据,相当于25万亿个像素点。图片版权:澳大利亚西澳大学、美国橡树岭国家实验室、中国科学院上海天文台 

  团队其他成员来自美国橡树岭国家实验室、澳大利亚西澳大学和英国牛津大学。 

  科研成果在线链接: 

  1. "Processing Full-Scale Square Kilometre Array Data on the Summit Supercomputer," in 2020 SC20: International Conference for High Performance Computing, Networking, Storage and Analysis (SC), Atlanta, GA, US, 2020 pp. 11-22. doi: 10.1109/SC41405.2020.00006  

  2. “Processing Full-Scale Square Kilometre Array Data on the Summit Supercomputer” ACM Gordon Bell Finalist Awards Presentation,  https://sc20.supercomputing.org/presentation/?id=gb102&sess=sess303 

  3. “SKA shakes hands with Summit,” Science Bulletin, Volume 65, Issue 5, 2020, Pages 337-339, https://doi.org/10.1016/j.scib.2019.12.016.  

    

  【1】论文《Processing Full-Scale Square Kilometre Array Data on the Summit Supercomputer》描述了在Summit超算上完成的仿真数据处理流程,详细介绍了团队在执行框架、并行化输入输出(I/O)和规模化扩展等方面取得的突破。 

  【2】“戈登·贝尔奖”是国际上高性能计算应用领域的最高学术奖项,被誉为“超算领域的诺贝尔奖”,每年颁发一次,以表彰在高性能计算方面的杰出成就。该奖项特别强调奖励将高性能计算应用于科学、工程和大规模数据分析的创新,以及在重要的科学和工程问题上的峰值性能或在可扩展性和求解时间上取得的特殊成就。 

  【3】bit(比特)是信息的最小单位,1Mbit等于100万比特,1Gbit等于10亿比特,1Pbit等于1千万亿比特。平常网络上实时播放高清电影的数据流约为每秒2Mbit,每秒10 Pbit的数据流相当于同时播放50亿部高清电影的数据流量。  

  Byte(字节)常缩写为B,是数据存储的基础单位,1字节由8比特组成。1GB等于10亿字节。 

  【4】flops,floating point operations per second的缩写,意指每秒浮点运算次数,理解为计算次数,常用来评估计算机的执行效能。1Gflops等于10亿flops,1pflops等于1千万亿flops。现在家用的双核计算机通常都能达到每秒五十亿次运算左右的水平,130Pflops相当于上千万台台式机的运算能力。 

  【5】Summit是由IBM公司开发、美国橡树岭国家实验室运行的超算,在2018-2019年占据世界超算第一的宝座,能够达到最高200 Pflops的运算能力,与设计中的SKA1的超算能力相当,是验证SKA数据处理系统的最佳平台。 

  【6】射电天文干涉数据采用MeasurementSet数据记录格式,是一种建立在CTDS系统上的表格数据,每一个表格包含几十个文件。一个典型的SKA观测就能产生上百万个甚至上亿个文件,如此巨大数量的(小)文件对共享文件系统、元数据管理系统、数据归档系统等都带来了巨大的压力。以前的射电天文数据处理工作流大多数是基于单个计算机或者小规模集群设计开发的,最多读取几百个表格,输入/输出的压力并不显著,但是对于SKA规模的数据流来说,需要读取数十万甚至数千万表格,数据输入/输出成为最关键的技术瓶颈,必须作并行化处理。但是最初的CTDS是不支持并行处理的,因此该团队先后开发了AdiosStMan和Adios2StMan中间件,并参与重构CTDS使其支持大规模并行I/O,还对射电天文软件核心库做了很多架构上的优化以提升AdiosStMan的效率。 

  【7】数据流执行框架DALiuGE 采用数据驱动运算处理的思想,不仅大大提高了扩展性和灵活度,而且还提高了运行效率,在容错方面也具有良好的弹性和适应性,在少数节点出错或者数据丢包的情况下,整个任务流程仍可以继续处理其余绝大多数数据,并不对整体流程造成严重影响;DALiuGE将工作流映射为有向无环图,能有效地调度,其智能化的资源调度方式能够大幅度降低整体工作流的能耗,对于大型超算的高效运行具有实际意义,而且针对不同科研背景、不同工作性质的用户群,将工作流在不同阶段映射为逻辑图、物理图、执行图,为用户尤其是新用户提供了极大的便利。DALiuGE能够同时管理多达上千万个任务,能够执行高达Tb/s量级的数据流,对节点错误有高效的弹性,实验表明GPU节点的执行效率高达87%,这些能力使得DALiuGE不仅能够满足SKA的数据处理任务,而且具备在大型科学计算领域内推广应用的潜在价值。 

  


附件下载: