HPC:让风云变幻不再莫测

  9月3日,北京气象部门向首都国庆60周年筹委会发出9月5日演练期间有明显降雨的预报,筹委会因此将预定的演练时间推迟至9月6日。5日夜间,一场小雨如期而至。

  在高性能计算机(HPC,HighPerformanceComputer)的推动下,天气预报越来越精确。随着人们对全球气候变化研究持续走向深入,气象领域对HPC也提出了更节能、更易用、更稳定、而成本也要更低的要求。

  对于9月5日的天气预报,其实气象部门承受着巨大压力。如果5日夜间不下雨,推迟这一涉及京城十余万人的演练将毫无意义。不过事实证明,气象部门的预报是准确的。5日21时30分起,北京下起毛毛雨。随着时间的推移,雨越下越大,截至6日2时,降雨量已经达到2毫米。如果演练不推迟,雨水最为密集的时段正是演练队伍集结和演练的时段。

  国庆60周年活动筹委会并不是首个依据气象预报结果调整活动安排的组织,近些年来,在奥运会、国庆庆典等大型活动的安排中,天气预报成为最重要的考虑因素之一。而其背后的一个重要原因就是,气象部门的预报结果越来越准确,6小时内的天气预报,准确率已经达到90%以上。而之所以越来越准确,除了人们对气象规律的认识越来越透彻和全面外,来自IT技术的支持,特别是计算能力越来越强大的高性能计算机的应用功不可没。

  天气预报

  考虑计算能力

  多年来,天气预报一直沿用了统计预报、天气学方法和数值天气预报三种方法。其中,统计预报基于多年积累下来的气象观测数据进行统计分析然后做出预报,一般用于做中长期(10天以上)的预报,准确性较差;而中期(3~10天)、短期(12小时~3天)以及短时(12小时以内)的天气预报主要采用后两种,特别是数值天气预报,成为提高气象预报准确性最为倚重的手段。

  所谓数值天气预报是运用大气运动中的物理规律来描述天气状态及其变化,这是一种用数值方法近似求解大气变化趋势而得到预报结果的预报方法。通俗地理解,数值天气预报就是用数学方法构建一组方程,然后把各种气象数据以及一些边界条件等参数带入这些方程中进行求解,从而预测大气变化过程以及未来状态。由于它们反映了大气内在的本质规律,已经成为各个气象局(台)进行气象预报的主要参考依据。但是,数值预报的计算过程是一个非常复杂的迭代过程,涉及数据量非常大,因此对计算机的计算能力要求非常高。可以说,没有HPC,根本就不可能进行准确的数值天气预报。

  “数值天气预报高度依赖计算能力,也是高性能计算机在气象领域应用的最主要推动力。”北京市气象信息中心主任刘旭林教授介绍说。

  数值天气预报对高性能计算的需求推动了HPC在气象领域的普及,这一点也可以从北京市气象局和中国气象局HPC的装备过程得以佐证。据刘旭林介绍,北京市气象局的第一台HPC始于2000年左右,在近10年中先后用过清华同方、SGI、曙光等多家厂商生产的高性能计算机。

  而目前承担着最主要的计算任务的则是2007年为提供奥运气象保障服务而购进的IBMSystemp575,这一台有着1280个CPU的高性能计算机峰值浮点计算能力达到每秒9.8万亿次(TFlops),是此前北京市气象局使用的设备的20倍。

  在中国气象领域,这台HPC并不是计算能力最强的,位于这台HPC之前的还有中国国家气象局部署的高性能计算机IBMCluster1600,这是一台拥有3200个CPU的HPC,其峰值计算能力达到每秒21万亿次(TFlops),在2005年6月份的全球高性能计算TOP500中曾位列第26位,直到2008年11月份才跌出TOP500榜单。

  据中国气象局国家气象信息中心教授级高级工程师洪文董教授介绍,HPC在中国气象局的应用历史更长。从上个世纪70年代还无法从欧美进口HPC时,中国气象局就已经开始使用国产的小型机进行数值分析预报。从20世纪70年代开始,国外的封锁陆续解除,中国气象局先后购进了神威、银河等国产HPC和日立、富士通、Cray、IBM等国外厂商生产的HPC。

  实际上,不止在中国,在全球范围内,气象预报及其相关研究都一直是HPC最主要的应用领域,也是应用得最成功的领域。比如,在HPC领域具有很高知名度的“地球模拟器(EarthSimulator)”就主要从事气候变暖、台风等方面的研究,日本海洋科学技术中心横浜研究所拥有的这台HPC曾在TOP500榜单中夺得榜首的位置。

  气象数据是基础

  在气象预报中需要HPC帮助完成的首先是气象数据的收集与预处理。气象数据的收集是气象预报的基础,中国气象局在各个地区部署了众多气象观测站,有人工职守的也有自动的,这些站点通常会记录观测点的温度、湿度、风速和风向、降雨、气压等数据,而且每天会记录4次以上。把各个观测站点的这些数据收集并整理本身就是一个非常艰巨的工作。

  “在全国范围内至少有2500多个气象观测站点,每天常规观测是4次,分别是凌晨2点、上午8点、下午2点、晚8点。这些观测数据会先发给县级站,然后经过省气象局、区域中心最后汇总到中国气象局。近年来,在全国还建立了25000个区域自助站。”洪文董教授说,这些数据是按照一定格式发送来的,国家气象信息中心拿到这些数据之后,需要把其中的各种信息(如温度、湿度等)解读出来。

  来自气象观测站的数据仅仅是需要HPC处理的数据的一部分,除此之外,还有航空观测数据、海洋观测数据、雷达监测数据、卫星观测数据(如风云卫星)以及通过放飞气球取得的数据等。

  “在这种探测系统中,卫星云图与雷达的数据量都是非常大的。卫星云图一般每半小时一次,一张高分辨率云图就有几兆字节,雷达每6分钟进行一次扫描,一次扫描的数据量就达12兆字节。”刘旭林介绍说。

  国家卫星气象中心数据服务室副处长罗敬宁曾经向记者介绍,中国第二代极轨气象卫星——风云三号A星,每天会对全球扫描2次,每次扫描宽度为2900公里,其上携带着多达11种有效载荷和90多种探测通道,可以不分白天黑夜,对任何气象环境进行探测。风云三号A星每天到达的数据量接近1TB,为了完成从卫星提取数据,处理和数据分发的任务,国家卫星气象中心在2008年部署了拥有1280个英特尔Itanium2处理器、4TB共享内存的HPC。

  计算需求无止境

  数据的预处理对HPC来说还只是牛刀小试,而HPC的更重要的作用还是进行方程组的求解以及对气象规律的研究,包括对正在使用的方程组进行改进和计算模型进行优化。

  据了解,目前数值天气预报普遍采用的是MM5、WRF预报模型,中国气象局、北京市气象局等中国绝大部分气象局都采用这种中尺度预报模型,除此之外,各地还有一些自己研发的辅助预报模型。例如中国气象局还运行T639、自主研发的GRAPES全球预报模型。无论哪种预报模型其共同点都是计算量非常大。比如,中央电视台每晚新闻联播之后的天气预报,其数值天气预报部分要运行多个模式,其中的一个模式的计算过程大约需要两个小时。“而有些气候预测模式在HPC上的运行时间可能长达几个月。”洪文董表示。这些在HPC上的运行的模式大都是并行程序,就是说一个程序同时使用几百、上千个CPU是常有的事。程序并行度越高,即同时使用CPU数越多,计算时间越短。现在国际上,气候研究已经使用千万亿次HPC。

  值得一提的,HPC的运算结果并不一定就是最后的天气预报。天气预报是一个非常复杂的过程,数值天气预报只是其中的一种,除此之外,天气预报的专家还会运用天气学、统计学以及个人经验,还可能会考虑周边地区做出的预报等,最后综合所有信息做出结论,这才是我们在电视、报纸上看到的天气预报结果。因此,天气预报的准确与否,HPC的计算能力大小只是其中一个因素,而更为主要的是预报模型是否科学,说到底还是人们对气象规律是否充分掌握。但是,这丝毫也动摇不了HPC在天气预报中的作用,特别是在正在努力提高天气预报准确率的今天,HPC是一个基本保证。

  据了解,在奥运期间,来自多国气象领域的专家就围绕奥运场馆的天气预报悄悄展开了另一场比拼,他们用各自的预报模型对场馆进行预报,借此检验自己模型的准确性。而在这场比拼中,北京市气象局交上了一份满意的答卷,特别是开闭幕式的天气预报,都准确地预报出来当时天气,为开闭幕式的顺利进行奠定了基础。

  “目前,天气预报的难题是定时、定点、定量的精细化预报,也就是准确预报出何时、何地有多大雨量、风速多大,这对于像奥运会、国庆等重大活动非常重要,而这些问题的解决都必须提高模拟大气方程中的分辨率,也就是必须具有强大计算能力的HPC的支持。”刘旭林介绍说,为了提高预报的准确性,目前的发展趋势就是增加资料同化种类和提高时空分辨率,而这样做的必然结果就是计算量呈指数级增加,比如计算分辨率从10公里提升到5公里,则计算量可能增加10倍以上。

  链接

  需要更节能更高效的HPC

  随着HPC在气象预报和气象研究中的应用和普及,其问题也日益凸显出来。其中最大的问题是HPC的耗电问题,在采访中,刘旭林和洪文董都谈到了这个问题,他们都表示,非常希望生产商能提供更节能的HPC。

  刘旭林对记者说:“HPC是一个相当费钱的计算机,不只是采购成本高昂,其占地大,维护成本也很高,包括用电都是一笔很大的开支。”

  据了解,为支持北京奥运会而采购的这台IBMp575仅仅是每年的电能消耗就达近300万元,再加上日常的维护成本,其每年投入不是小数。而计算能力更强大的国家气象信息中心的那台21亿万次的HPC,其功率近1兆瓦,这就意味着一昼夜就要消耗两万多度电。另外,据国外媒体的报道,占地四个网球场大小的日本“地球模拟器”仅每年的电费就达1亿日元,已经让其拥有者不堪重负。因此,与普通计算机相比,HPC的节能需求更为明显。

  提高HPC的利用率也是目前HPC的用户共同面对的问题。HPC通常都具有几十个甚至上百个节点、数千个CPU,要充分发挥这台机器的计算能力本身就非常复杂,它不止是考验管理员的调度能力,同时也是对应用软件开发者的考验,软件开发者需要开发出高度并行的软件,而并行软件的开发也是当前软件领域的一个难题,而且也是在考验作业调度软件的调度能力和系统管理员的管理能力。目前,即使用得比较好的北京市气象局和国家气象信息中心的HPC利用率也不超过80%。

  人才队伍的建设也是HPC应用中面临的一个问题,这里所说的人才不仅要懂HPC,还要懂气象知识,只有同时具有这两方面知识的人才能更好地优化计算模型、更好地发挥HPC的效能,而这样的人才是目前大多数HPC用户所缺乏的。

  谈到HPC的未来发展,洪文董表示:“除了常规的天气预报之外,最近几年HPC在气候研究方面的价值也开始显现出来。比如,随着全球气候变暖趋势明显,越来越多的国家投入巨资进行这一课题的研究。而在这一课题的研究方面,没有HPC是根本不可能的,这也可以说是HPC对整个人类社会的贡献之一。”

  ■本报记者邹大斌
……
关注读览天下微信, 100万篇深度好文, 等你来看……
阅读完整内容请先登录:
帐户:
密码: