|
SKA 科学计算的挑战
与传统望远镜相比,SKA 更像是一个“软件”望远镜,它不仅集成了当代信息计算技术的最新成就,而且提出了新的问题。以 SKA-low 为例,其旨在探测微弱宇宙信号,这些低频阵列以 10 Pb/s 速度产生出世界上最大规模的数据流,远远超出了全世界互联网的流量。按照 SKA 的数据流规模,估计在建设的第一阶段每年需要输送到区域数据中心进行深度分析的科学数据就达到了每年 300 PB,随着望远镜的全面运行,这个数据量必然会逐步增加。到了 SKA2 阶段,从 SKA 天文台产生的预处理数据的规模将扩展到 SKA 先导项目的 100 倍以上,达到 EB 量级。SKA 两个最重要的科学方向——宇宙再电离和黑暗时期探测、用脉冲星计时阵精确测量引力,需要积累未校准的原始数据;如果考虑到保存一定时间的原始数据,那么 SKA 天文台的数据存储需求将提高至少一个量级。
以 SKA 先导项目 MWA 为例,经过 4 年的运行,MWA 积累了 24 PB 的科学存档数据。其中一个科学目标是 GLEAM 巡天任务,第一期巡天已经包含了 30 多万颗星系,存档数据量达到 1 PB 以上。第二期巡天已经开始,灵敏度提高了 4 倍以上,数据量预期高达 6.5 PB。而 MWA 只占到 SKA-low 规模的 1%,SKA 数据量由此可见一斑。据初步估计,SKA1 阶段的科学数据处理器所需要的计算能力为 260 PFlops(即每秒 260 千万亿次浮点运算),相当于我国超级计算机“天河二号”的 8 倍,“神威·太湖之光”的 3 倍。SKA 巨大的计算需求必然对现有科学计算的架构和方式形成巨大冲击,对 SKA 数据处理问题的解决有助于带动和提升相关产业的发展,甚至引发革命性变化。
SKA将对除天文学以外的其他众多学科诸如计算机科学、信息学、电子学等领域带来极大的促进作用。TB 量级的高速数字化采样、高速实时数字信号处理对电子行业带来新的挑战。长期工作在野外恶劣环境下射频信号长距离光纤传输的频率同步是孔径阵列急需解决的技术挑战之一。大数据长距离的高速宽带洲际传输对目前的科研网络基础设施、拓扑结构、通信协议、传输端软件等提出了严苛的要求——满足超高速流式数据处理设计的互联网络不是简单通过增加节点的互联网口数量和增加节点间的互联总带宽能实现的,对这个问题的有效解决也必将促进国内百 GB 甚至 TB 级基础网络的布局和建设。
以数据密集型科学计算为特点的 SKA 数据处理对我国的电子、计算机、信号处理行业提出了更高的要求。SKA 科学数据处理应用面临着“存储墙”问题,即 I/O 问题,传输带宽是主要的系统瓶颈之一。即使“天河二号”这样的超算对于 SKA 这类大数据的处理资源也会有不足,同时不便进行突发事件的观测分析,因此亟待研究适应数据密集型科学计算的新型架构体系。前面讲到,SKA 高速海量的输入数据必须通过实时处理降低后续流程的压力,海量数据实时处理对软硬件体系都有特殊设计要求,整个系统的架构设计和集成安装、超算中心的执行框架和配套软件算法、数据中心的健康监控、机柜冷却、总控管理等都会面临诸多挑战;而且在建设经费封顶的情况下,既要达到预定的运算能力和实时性要求,还要从运行成本上考虑满足低功耗的要求。此外海量数据的存储、归档、检索、运算对超级计算机的完整生态链提出了极高的要求。尽管国产 CPU 芯片已经部署在国内大型超算中心,国内科研单位也研发了用于人工智能领域的深度学习处理器芯片;但不容乐观的是,目前主流的操作系统、存储系统等软件生态基本全部来自于国外,最关键的软件生态环境依然远远落后国际水平,尚不具备竞争力,“卡脖子”问题依然严重,自给自足的能力还不够。SKA 项目为相关产业的发展提出了强烈的需求驱动。
除了硬件方面的问题,天文应用软件的目前研发水平也远远无法达到SKA的要求。SKA科学数据处理的关键算法存在大量对共享资源包括共享文件系统的操作,传统固定多核的计算机系统在多任务、多并发、多线程并行执行时经常出现资源竞争;如果数据流执行框架不能有效地妥善解决资源调度和分配,严重的情况下将导致数据处理流水线停顿。实际上,这一问题在 SKA 先导望远镜数据处理中心并不罕见。为此,澳大利亚 ICRAR 研究所和中国科学院上海天文台针对 SKA 项目联合研发了名为 Data Activated 流(Liu)Graph Engine(DALiuGE)的数据流执行框架,其采用了“数据驱动”的先进设计理念,比传统的 HPC“计算驱动”的设计更适合 SKA 科学计算。此外,SKA 科学计算的实际运算效率小于原计划的 10%,因此其原定理论峰值性能 260 PFlops 无法完成科学数据处理的实际需求。增加超算资源的简单做法并不切实可行,更加可行的途径是提高软件执行效率——效率从 10% 提高到 20%,可以节约 50% 的计算资源以及大幅度降低运行成本。天文学家与计算机专家合作优化代码,可以数倍地提高算法和程序的运行速度。当务之急是培养既懂天文又懂计算的复合型人才。另一个现实的问题,天文数据处理的软件也亟待更新换代以满足未来的需求。目前主要使用的天文软件大部分在 20 世纪 70—80 年代研发,考虑到天文应用对高速、实时、并行的大数据处理需求,天文学家已经开始使用更先进、更模块化、支持并行的开发语言,如 C++ 或者 Python。使用 C++ 开发的 AIPS 软件的替代版本 CASA 软件将成为下一代主流射电天文软件;涉及机器学习、人工智能的程序将以 Python 为优先选型。天文数据处理软件的研发与天文研究一样,已经从单打独斗模式升级为全球化合作集体作战,比如发现引力波的 LIGO 团队由 1 000 多位科学家组成,广泛应用于射电天文处理软件的 CASA 核心库也有来自全球近百位人员贡献代码及算法;航空母舰式的联合研究团队,大兵团作战模式将成为解决重大科学问题的标准资质。
科学传播比任何时候都得到重视,“科技创新、科学普及是实现创新发展的两翼”。未来 SKA 的天文大数据将不仅仅服务于天文学家,也将提供面向公众的接口。以 SKA 为依托,宣传科研成果、交流学术思想、普及科技知识、弘扬科学精神,大力推广基础科学在公众间的认知度,提高科研在公众的普及度。SKA 区域中心将通过虚拟天文台和“云”的方式让老百姓以更加便捷的方式接触科学,在公众中普及天文学。