离子和电子在极端的磁场约束下翻滚、碰撞、聚合、分裂。
每一个微单元的行为都受到周围所有微单元的影响。
而每一个微单元对周围微单元的影响,又会被它们再次反馈回来,形成一个极其复杂的、非线性的、混沌的系统。
这就是湍流。
爱因斯坦临终前都没有搞明白的东西。
费曼称之为“经典物理学最后一个公开的难题“。
而陈林构建的这个数学模型,试图做到的事情。
是用数学公式精确地描述这个混沌系统的行为,预测它的演化,控制它的走向。
这本身就是一件听起来就不可能的事情。
但模型确实在运行着,数千亿个湍流微单元在超算的支持下迅速演化,组成了无数组的运算规则。
模拟着可控核聚变反应堆中等离子体的流动,不断验证着提前准备好的实验数据。
控制室里的气氛变得安静了。
所有人都在盯着屏幕。
看着那些不断滚动的日志和跳动的数据。
.....
最开始的十分钟,一切看起来还算正常。
CPU利用率迅速攀升到了95%以上,这在预料之中。
毕竟这是全力运转的状态。
内存占用也在快速增长。
但还在可控范围内。
“运行状态正常。“
小李报告了一下。
“第一批实验数据参数已经输入。“
“模型正在计算中。“
宋羽点了点头,眼睛死死地盯着屏幕上的数据输出窗口,那里会显示模型计算的中间结果。
如果一切顺利的话,每计算完一组实验数据,屏幕上就会输出一个对应的预测值。
然后和实际的实验测量值进行比较。
两者之间的偏差越小,说明模型的精度越高。
第一个结果出来了,误差率:1.52%。
宋羽的眉毛微微一挑,这个精度相当高了。
要知道。
在等离子体湍流这种极端复杂的系统里,能做到10%以内的误差就已经算是非常优秀了。
1.52%?
如果这个数据是准确的话。
那简直就是不可思议。
第二个结果出来了,误差率:1.38%。
第三个,1.61%。
第四个、第五个.......
宋羽深吸了一口气。
前五组数据的平均误差率大约在1.5%左右。
这个精度相当吓人,控制室里开始有人忍不住低声讨论起来。
“卧……1.5%的误差?“
“这不可能吧……是不是计算有bug?“
“不是,你看日志,运算过程完全正常,没有任何异常。“
“那这个精度也太离谱了……“
“湍流模型能做到这种精度,我今天回去就把那堆教材全烧了。以前学的都白学了。“
宋羽没有参与讨论。他只是安静地看着屏幕。看着一组又一组的实验数据被模型吞进去。然后吐出一个又一个令人震惊的预测值。
但渐渐地。他的眉头皱了起来。
因为他注意到了一个问题。速度在变慢。
最开始。模型计算一组实验数据大约需要三到四分钟。
但随着验证的推进。
每组数据的计算时间在逐渐增长。
第十组数据用了五分钟。
第十五组用了七分钟。
第二十组用了将近十分钟。
小周也注意到了这个变化。他快步走到了小李的工作站旁边。
弯下腰。盯着屏幕上的性能监控面板看了一会儿。
然后他的脸色变了。
“宋院。“
小周的声音有些发紧:
“模型的计算复杂度在动态增长。“
宋羽转过头看着他:
“什么意思?“
小周指着屏幕上的一组数据:
“您看这里。“
他用手指在屏幕上画了一条线:
“随着模拟的时间步推进,湍流微单元之间的相互作用变得越来越复杂。“
他解释道:
“因为模型里面不仅仅是简单的流体模拟。“
“它还包含了唯象能量爆发模拟、碰撞模拟、磁约束等各种子模块。这些子模块之间会互相耦合。随着模拟时间的推进,耦合的程度会不断加深。“
他咽了口唾沫:
“计算量是呈指数增长的。“
宋羽听到这里。
表情变得凝重了起来。
“能跑完吗?“
他问。
这个问题他其实已经隐隐猜到了答案。但还是想确认一下。
小周看了一眼性能监控面板上的各项指标。
然后转过头。脸上的表情很无奈。
“能跑。“
他说。
“但是……“
他指着屏幕上的CPU利用率曲线:
“您看,CPU利用率已经到99%了。“
“内存也快满了。“
“就算不崩掉,按照现在这个速度……“
他心算了一下:
“把所有准备好的实验数据都跑完。“
“大概需要……“
他的声音越来越小:
“两个多月。“
控制室里安静了。
所有人都听到了这个数字。
两个多月,如果是一般的科研项目,这个时间倒也不是不能接受。
但问题是这个模型的最终目的不是算一次就完事的,它要被用在可控核聚变反应堆的实时控制系统里。
所谓“实时控制“,意思是反应堆在运行的过程中,模型需要实时接收等离子体的状态数据。
然后在极短的时间内——通常是毫秒级——计算出下一步等离子体可能的行为,并给出对应的控制指令。
如果模型连一组实验数据都要算十分钟的话,那“实时控制“就是一句空话。
等你算出结果的时候,反应堆都不知道炸了几回了。
宋羽在心里叹了口气。
他转过身,看着整个控制室。
十几个科研人员的脸上都写着类似的表情:既为模型本身的精度感到震撼和兴奋,又为带不动模型这个现实感到无奈。
“先继续跑。“
宋羽做出了决定:
“跑到什么程度算什么程度。“
他看了一眼小李:
“把每一组计算结果都完整记录下来。“
“不管花多长时间。“
然后他的目光扫过所有人:
“至少先证明这个模型在精度上是可靠的。“
“算力不够的问题……“
他顿了顿:
“我会向上面汇报。“
小李点了点头。
“明白。“
控制室里重新恢复了运转的节奏。
……
……
“所以情况就是这样。“
电话里。
宋羽把整个验证过程从头到尾讲了一遍。
包括模型的精度表现、计算速度的递减趋势、以及目前超算面临的算力瓶颈。
他的语气尽量保持着平稳。
但陈林还是从中听出了一丝无奈。
陈林靠在沙发上。
手指无意识地敲着扶手。
脑子里在消化宋羽说的那些信息。
当初在燕北大学韦北辰的办公室里现场编写代码的时候。
韦北辰就提醒过他。
超高温等离子体湍流涉及的变量数量是天文级的。
温度、密度、速度、磁场强度……
每一个变量在毫秒级别都在剧烈变化。
要精确模拟这种系统。
所需要的计算量是惊人的。
但陈林当时乐观地觉得。
华夏的超算性能应该够用。
毕竟是国家级的设施。
现在看来,是他低估了自己模型的复杂度。
或者说是【小小数学家】帮他构建出了一个超出当前算力水平的模型。
模型太好了,但是现有的硬件跟不上。
这个问题,陈林一时间还真不太确定该怎么解决。
他对超算硬件方面的东西了解得不多。
虽然用【自动学习】学过一些计算机基础。
但那主要集中在软件和算法层面。
硬件架构、芯片性能、集群调度这些东西,虽然教科书有涉及,但不是重点,所以陈林也只是有所掌握,但不是很精通。