高性能计算与应用

2017-09-06 21:56袁国兴
民主与科学 2017年4期
关键词:氢弹高性能建模

袁国兴

假如没有计算机,很多事情就没有办法开展。高性能计算可以做许多特别困难的事情,提升研究能力,缩短研究进程,节约研究经费。

目前科研的一般做法是:首先用计算来模拟,然后才做必要的实验

关于高性能计算叫法很多,比如数值计算、数值模拟,它在不同的领域也有不同的叫法,例如在核武器领域叫虚拟试验,在工程领域叫仿真,实际上都是一回事。2005年,美国总统信息技术咨询委员会给布什总统的报告《计算科学:确保美国竞争力》中对计算科学有这样的提法:计算科学是利用先进的计算能力去理解和解决复杂问题。

高性能计算可以解决理论或实验难以解决的问题,特别是一些没有办法解决的科学问题。这里的“难”包括大型、复杂的工程,也包括微细、很难做的实验,甚至是一些不可重复和危险的事情。目前科研的一般做法是:首先用计算来模拟,然后才做必要的实验。

简单地说,高性能计算可以做许多特别困难的事情,提升研究能力,缩短研究进程,节约研究经费。

打仗既要靠人也要靠武器,搞科研同样也需要武器,科研的武器就是计算机

2011年日本发生大地震,海啸摧毁核电站事故发生之后,安全问题引起人们前所未有的关注。从高性能计算的角度来看,完全可以在事故发生前,利用数值模拟方法评估该核电站的运行是否正常,哪些地方可能会出问题。这样,通过预报可以提前把问题消灭掉,避免后续灾害的发生。

美国1945年7月16日爆炸第一颗原子弹,而后开展氢弹研究,直到1952年11月1日爆炸第一颗氢弹。从原子弹到氢弹,研发时间历时7年3个月,期间一共做了32次核爆试验。每一次试验的花费以亿美元计算,氢弹的研究成本可想而知。

中国的情况怎么样呢?中国1964年10月16日成功爆炸了第一颗原子弹,1967年6月17日成功爆炸了第一颗氢弹,从原子弹到氢弹,仅仅花了2年8个月的时间,只做了7次试验。中国人用的时间不足美国人的一半,其中重要原因之一是使用了计算机。打仗既要靠人也要靠武器,搞科研同样也需要武器,科研的武器就是计算机。

1952年诞生了世界上第一台计算机,那时候美国氢弹研究已近完成。但是我国的氢弹研究直接受益于计算机强大的计算能力。在氢弹的研发过程中前后有7台计算机投入使用,大大提高了计算速度,减少了现场实验次数,有效提高了研发进度,并大幅度降低了研究成本。如此,计算机对于科学研究的贡献可见一斑。

高性能计算已经与传统的理论研究和实验室实验共同成为“21世纪科学研究的三大支柱”

高性能计算始于1911年,当时英国气象学家为了研究气象预报提出使用计算的方法。经过一百多年的发展,高性能计算已经与传统的理论研究、实验室实验共同成为“21世纪科学研究的三大支柱”。总体来说,高性能计算对提升国家自主创新能力、增强国家竞争力、保障国家安全、促进国民经济建设发展、丰富精神文化生活、推动社会进步,都具有十分重要的现实意义。

如何实现高性能计算,需要两方面的支撑,一个是高性能计算机,俗称硬件,另外一个是高性能预言性软件。我国目前在硬件研发领域已经取得了好的成绩,例如实现了芯片的自主研发,搭建了“神威·太湖之光”,我国研制使用的计算机已连续8次蝉联全球超级计算机TOP500排行榜第1名。

虽然从大的角度来说这些设备都可以被称为高性能计算系统,但是在实际的使用过程中,针对不同的计算需求,国际上对高性能计算系统有不同的分类。这里简单举几个例子说明一下。

定制能力型(Capability) MPP超级计算机系统

这一类计算机的应用领域为纳米技术、燃烧模拟、核聚变、气候模拟、空间物理等。它们的特点是数据往返交换多、计算量大、计算时间长,对应的数据具有精度高、分辨率高的特点,因此需要通过高主频CPU和定制或特制网络满足计算要求。这种计算的任务要求计算机具有非常高的稳定性、可靠性、易用性。这种计算机是用来解决科研、国家建设、国防安全中最具挑战性的问题。设备的特点是:建造困难、研制周期长、造价高;数量有限,国家专项投资、研制。为了逐步满足高端计算不断提出的对计算机系统性能的要求,它的研制能驱动计算技术的全面提升,也能推动普适性计算机(如集群)技术的提高。国际上一些进行重大科学问题研究的科研院所使用这种类型的计算机。

容量型(Capacity)计算机系统

这一类计算机的应用领域主要是社会计算和信息处理、数据处理,如石油、天气预报和气候预测、生物医药、电讯、物流、金融、高端制造,数字媒体与动漫渲染等。这类设备的特点是所有的构件均是商品化的标准器件,如处理器、互联网、标准的Linux系统、管理软件等,可以满足很多人同时使用。由于采用标准化构件,因此建造周期相对较短,建造成本更便宜,与定制能力型计算机相比相差数倍。这种计算机由于使用的CPU、存储和网络的不同,差异很大。多核处理器和加速部件构成的混合异构型系统,也是这种类型的计算机,公用云计算中心、数据中心,大都安装这类计算机系统。

软件研发包括:物理建模,数学模型的离散,离散模型的程序设计

从软件研发的流程来分,可以分为三个环节,首先是物理建模,然后是数学模型的离散,最后是离散模型的程序设计。

物理建模的过程是一个将现实的物理问题对应为数学表达的过程,换言之就是用数学方程来描述实际的物理问题,如问题适用的环境、各个物理事件之间涉及的空間、时间次序、彼此之间存在的交叉耦合等。在现实条件下,是不可能把研究对象的所有相关因素都考虑进去,这时就需要根据情况做出假设和简化,它可以决定模型的成败,也可以影响模型的复杂程度。一个好的假设或简化,可以使问题突出,也可以节约很多计算量,同时取得很好的结果。

数学模型的离散过程说起来比较抽象。整个过程中需要将描述物理问题的偏微分方程/方程组变成离散模型,即将涉及到的方程从时间和空间上离散,将初始条件和边界条件离散,同时将待解区域和边界离散。离散之后微积分问题换成了算术问题,即不同条件下加减乘除等的算术运算。算术问题才是计算机语言可以处理的问题。

离散模型的程序设计直接结果是将现实的物理问题“搬”到计算中。通过模块化的设计,用户只需要输入一定的初始信息,就可以通过软件的计算预知结果,从而体现它的预言性。当然,预言结果的准确性需要通过实验验证,而一个好的程序的评价标准也就可想而知,同样,软件的预言作用或意义也就不言自明。

在软件的研发过程中,如果一个人同时具备建模、离散和编程的能力,则可以独立完成一个软件的研发工作。但现实中,一个大的软件往往是很多人共同完成的,分别完成建模、离散和编程的工作,但彼此之间相互合作,每一环都很重要。大科学应用软件的研发过程是一个非常复杂的工程,往往需要十几年或者更长时间,需要从事物理、数学、计算机等多方面的科研人员的共同努力。长期以来,我国在软件开发方面的积累较少,加之很多客观原因,因此软件研发能力一直相对较弱,只能大量使用进口商业软件和开源软件。进口软件既经费支出巨大,又受制于外国,因此我国的软件研发工作,依然任重道远。

将硬件的发展与软件相结合,二者相互促进是我国高性能计算发展的最佳出路。坚持高性能计算应用软件和高性能计算机系统的统筹规划、均衡投资、协调发展,是高性能计算与应用发展的关键。但是发展过程中一定要注重有计划的发展。高性能集群的使用寿命一般是五年左右,所以一定要进行调研、分析,合理估算应用需求。

猜你喜欢
氢弹高性能建模
物理建模在教与学实践中的应用
在经历中发现在探究中建模
思维建模在连续型随机变量中的应用
飞行员杨国祥投掷氢弹失败,放弃逃生机会与氢弹共存亡
高性能混凝土不同配合比下的性能研究
求距求值方程建模
高性能混凝土开裂成因及控制要点
金正恩视察“可搭载在洲际弹道导弹上的氢弹”
氢弹,不过如此
中国E级高性能计算机原型系统正式进入研制阶段