四川在线记者 唐泽文
9月27日,成都理工大学行星科学中心办公室里,副教授周游的电脑显示屏上,两个球体碰撞在一起。碰撞、融合、分裂……剧烈碰撞之后,再重新逐步形成两个新的球体。
周游说,每次看到这个过程心中都很感叹,宇宙万物似乎都遵从着一些基本规律,从毁坏到重生,先“破”后“立”。
而这个看似简单的过程却并不简单——碰撞的过程,由2000万个粒子模拟构成。
提升分辨率靠算力,3个月模拟完成2000万粒子碰撞
这是一场月球形成过程的数字化模拟。
业界对月球形成的一个主流说法是:约46亿年前,一颗与火星大小类似的星体,与地球发生碰撞,碰撞形成的大量熔岩碎片飘散在地球轨道之内,经过长时间聚集,逐步形成了我们看到的月亮。
月亮(资料图)
周游所研究的,就是通过数字化手段去还原这个推断。但这并不是一件容易的事。早在2001年,国外就有科研工作者对这个假说进行了探索,但受制于当时的算力水平,整个模拟过程只使用了6万个粒子。
“要知道,碰撞过程中产生的各种尘埃、碎片远不止这个数,当时的模拟只能看个‘大概’,而且这个‘大概’还很粗糙。”
怎么才能看得更精细准确,提升模拟过程中的粒子数是关键。“这个数量就像是图片的分辨率,粒子数越多,分辨率越高,我们看得越清楚,模拟得更精确。”周游说。
提升“分辨率”却是一件极难的事。“每增加一个粒子,它自身的热量、大小、状态的状况,都会对其自身及周边的其他粒子造成不同影响,这就形成了多个变量元素,对算力增加更多负担。”这意味着,粒子数的增多,算力要求将呈指数级增长。
“这样说吧,如果将粒子数提升到百万级,用现在最先进的工作站模拟一次碰撞过程,时间需要以年为单位计算。”而周游在最新碰撞模拟中“搞”了一件大事情——把粒子数提升到了2000万。
这个看似不可能的算力任务,仅耗时3个月就完成了。距离周游办公室40公里外的天府新区兴隆湖畔,成都超算中心主体机房内,800个算力核心为他完成了这次计算服务,而这只动用了超算中心的极小一部分算力。
突破瓶颈靠软件,希望在成都补齐短板更好探索星空
不仅是月球形成的推拟,周游还有多个星体运动的项目都正在超算中心中进行模型推拟。
他介绍,这些项目在软件和硬件适配的过程中,成都理工大学的团队与超算中心的工程师们面对面碰头调整了数十次。“很难想象,如果就近没有这样强大的一个算力体,我的工作进展将受到怎样的制约。”
当下,周游需要突破的一个关键瓶颈,是天体运动模拟的软件。“2000万个粒子数能不能再突破,限制不在算力硬件,而在软件上。”目前使用的软件为自主研发,2000万粒子体量已是其承载极限。
但即便到了2000万,每个粒子的大小仍相当于一个街道,还有细化空间。“尤其是体积更容易膨胀的气体,更高的分辨率才能防止它们的数据丢失。”
周游说,在行星科学研究领域,国外的模拟软件体系要成熟很多。甚至在某些具体课题上,国外一所名校的软件水平比我们全国所有课题组加起来都高。
“如果把超算中心比作高速公路,软件跟不上,就像是在高速公路上跑拖拉机,速度还是提不起来。”而行星科学领域的一套成熟软件,往往需要5到6年的迭代才能逐步成型,这是一个比基础科学还“冷”的“冷板凳”。
而跟超算中心的合作,也让周游团队的这套软件得到了升级——开始软件承载量并不能达到2000万,这是跟对方工程师一起多次优化后的结果。
“我们要想在这个领域走在全球前列,就必须补齐软件短板。成都在这方面优势明显,希望能和合作伙伴联手解决这个难题。我们一起更清楚地探索星空。”周游说。