最新网址:www.shizizw.com
物理院地下实验室的走廊很长,顶上的白炽灯发出微弱的电流声。陈拙顺着楼梯走下来,推开了走廊尽头那扇隔音门。
迎面扑来一股很浓的烟味,夹杂着机箱散热孔吹出来的热气。
张渊坐在中间那台电脑前,双手胡乱抓了一把本就乱糟糟的头发,他眼底的红血丝很重,嘴唇乾得起了皮。
林芳坐在另一侧的桌子前,手里拿着一沓厚厚的列印纸,正拿着红笔在上面一行行地核对数据,她擡手揉了揉眉心,端起桌上的搪瓷茶缸喝了一口,眉头微微皱了一下,水显然已经凉透了。
听到推门声,两人同时回过头。
「师兄,师姐。」
陈拙随手带上门,把肩上的双肩包拿下来放在旁边的空桌子上。
张渊像是抓到了救命稻草,马上站了起来,把自己的转椅往後推了推,腾出位置。
「你可算来了,坐。」
张渊指着屏幕。
陈拙走过去,没急着坐下,先看了一眼屏幕上的画面。
那是一个用无数密集网格拼出来的列车车头三维模型。
线条多得挤在一起,在屏幕上糊成了一片刺眼的绿色,旁边跑着几个黑色命令行窗口,光标停在原地,半天跳不出一个新数据。
「卡死了?」陈拙问。
「卡了三个小时了。」
张渊从桌上摸出烟盒,抽出一根咬在嘴里,摸了半天没找到打火机,索性把烟拿下来扔在一边。
「内存跑满了,CPU占用率一直是百分之百,这破机器再这麽转下去,我怕主板要烧。」
陈拙拉过一把椅子坐下,手搭在滑鼠上,轻轻滑了两下,画面卡顿得很厉害,拖动模型的时候会有明显的延迟。
「铁道部那边有新的要求了?」陈拙看着屏幕问。
林芳放下纸杯,点了点头。
「下个月初,第二轮接触,西门子和川崎的团队已经到了京城。」
「对方不肯给气动数据?」
「一点不漏。」
张渊冷笑了一声,手掌在桌面上重重拍了一下。
「不仅不给数据,还在报价上卡我们,他们吃准了我们国内的高速风洞现阶段跑不出全尺寸的跨音速数据。」
林芳靠在椅背上,看着天花板上的白炽灯。
「他们的代表在会上说得很难听,意思是国内的隧道截面积跟他们不一样,如果不带他们的原厂气动数据,自己胡乱把车头装上去跑,进隧道的时候就会出人命,微气压波的问题,他们说我们十年内自己算不明白。」
陈拙没说话,目光在屏幕右侧那一长串复杂的偏微分方程上停留。
传统的纳维—斯托克斯方程。
在三维空间下,边界条件多得让人头皮发麻。
「老路走不通了。」
张渊指着那些方程。
「连续流体力学方程在三维跨音速状态下,非线性项直接爆炸,我们实验室这几台机子,连一个初始边界都推不开。」
陈拙松开滑鼠,转头看着张渊。
「你想让我怎麽做?」
张渊咽了口唾沫,眼神里透着一点希冀。
「去年你不是帮我们做过一个降维的算法吗?」
张渊比划了一下。
「就是那个离散代数矩阵,你当时把时间切片里的无穷大给砍掉了,算出了0
.01秒的气压突变。」
林芳也坐直了身子。
「陈拙,我们商量过了,既然连续方程算不动,我们能不能故技重施?把你那套离散矩阵套进这个三维模型里去。」
「把整个三维车头切成离散的网格点。」张渊接着说。
「我们不去解连续方程了,我们去算矩阵,你那套算法的误差控制得很好,只要网格切得够细,我们就能拿出一份精度足够高的底牌去谈判桌上砸他们的脸。」
陈拙安静地听完。
他看着张渊和林芳布满血丝的眼睛。
他很清楚,把二维平面的离散矩阵强行推广到三维全尺寸模型,在数学逻辑上会遇到什麽。
「我那套离散矩阵的底层逻辑,师兄你还有保留吗?」陈拙问。
「有!全都在底库里。」
张渊赶紧在键盘上敲了几下,调出一个全是代码的文档。
陈拙凑近屏幕,看了一会儿。
「如果要套进三维模型,矩阵的维度要扩充,原来的雅可比矩阵不适用了,得加非线性补偿。」
陈拙语气很平和。
「能改吗?」张渊问。
「拿纸笔。」
张渊立刻转身,从旁边的印表机纸盒里抽出一沓A4纸,连同一支笔递给陈拙。
陈拙把纸垫在桌面上,拔掉笔帽。
他写得不快,每一行矩阵的扩充都要考虑三维空间下的坐标系转换。
张渊和林芳站在他身後,大气都不敢出。
写了两页纸。
陈拙停下笔,把第二页推到张渊面前。
「我把维度升上去了。」
陈拙指着上面的一组公式。
「网格划分的逻辑也改了,你把这几段代码替换到底层程序里,重新构建一下网格。」
张渊拿起纸,拉开陈拙旁边的另一台电脑,双手在键盘上飞快地敲击起来。
林芳站在两人中间,看着张渊一行行把陈拙的数学公式转译成计算机语言。
半个多小时後。
张渊敲下最後一个回车键。
「转译完了,无语法错误。」
张渊看着屏幕上的提示符。
陈拙点点头。
「导入模型数据吧,让机子跑跑看。」
张渊深吸了一口气,手心在裤腿上擦了擦汗,移动滑鼠,点击了运行。
四个黑色机箱里的风扇声音瞬间拔高了一个八度,像是有什麽东西在里面咆哮。
屏幕上的画面闪烁了一下。
原本卡死的命令行窗口开始刷新,一行行绿色的数据流快速滚过。
「动了!」
林芳眼睛一亮,双手不自觉地握紧了。
张渊也长出了一口气,靠在椅背上。
「我就说行得通,降维打击还得看离散矩阵,只要机子能动,就有希望。」
陈拙没有出声,他看着屏幕右下角的一个很小的进度条框。
那里显示着「1%」。
「今晚得熬夜了。」
张渊搓了搓脸。
「林芳,你帮我买几包烟,再弄点浓茶过来,这机子估计得跑一阵子。」
「好,我去。」
林芳拿起桌上的钥匙,快步走出了实验室。
陈拙靠在摺叠椅上,看着那条几乎不动的进度条。
「师兄,先别高兴得太早。」陈拙说。
张渊转过头。
「怎麽了?」
「二维切片和三维模型的网格数量,不是简单的加法。」
陈拙指了指屏幕上那个密密麻麻的车头模型。
「是指数级的乘法,你刚才导入模型的时候,看网格总数了吗?」
张渊愣了一下,他刚才急着运行,确实没细看参数。
他赶紧调出一个後台监控窗口,看了一眼上面的统计数据。
张渊的脸色僵住了。
「四千两百万个网格节点?」
张渊声音有些发紧。
去年的那个二维模型,网格数量满打满算也就十几万个。
「嗯。」
陈拙点点头。
「为了保证三维曲面的流体精度,网格只能往细了切,四千多万个节点,每一个节点还要进行高阶矩阵的乘法运算。」
张渊看着旁边那四台嗡嗡作响的伺服器,突然觉得这声音没那麽悦耳了。
「能......能跑完吧?」
张渊不太确定地问。
「看这几台机子的命了。」陈拙说。
林芳买回了烟和茶。
三个人开始在地下实验室里等。
头几个小时,气氛还算轻松,张渊甚至有心情跟陈拙聊了两句游戏。
但随着时间推移,空气里的焦糊味越来越重。
到了晚上十一点,进度条依然死死地卡在「1%」。
屏幕上的绿色数据流滚动得越来越慢,就像是陷入了某种泥潭。
「不应该啊。」
张渊把菸头撼灭。
「四个小时了,怎麽连百分之一都没过?」
「内存快爆了。」
陈拙指着监控窗口。
内存占用率已经到了98%,页面文件正在疯狂读写硬碟,硬碟灯狂闪。
「重启一下监控程序,只留主进程。」
张渊敲键盘的手指有些用力。
这一夜,没人合眼。
第二天早上。
林芳去食堂打了三份早饭回来,包子和豆浆放在桌子上,渐渐没了热气。
进度条依然是「1%」。
张渊站起身,绕着机柜走了两圈,他伸手摸了一下其中一台伺服器的铁皮外壳,马上缩回了手。
「好烫。」
张渊皱着眉头。
「空调开到最大。」
林芳去拿遥控器把空调温度调到了最低,出风口吹出冷风,但压不住机器散发出来的热量。
陈拙坐在椅子上,吃了一个冷掉的包子。
他看着屏幕,知道这已经是强弩之末。
「还在算。」
张渊盯着命令行窗口,每隔十几秒钟,屏幕上还会跳出一行新的数据。
「虽然慢,但只要不报错死机,算一个月我们也等。」
第三天。
实验室里的味道已经很难闻了。
张渊的双眼肿得像桃子,林芳裹着一件军大衣靠在椅子上打盹。
陈拙依然坐在那把摺叠椅上,他没有回宿舍,这三天里偶尔趴在桌子上睡一会儿,大部分时间都在观察数据的变化规律。
下午两点。
机柜方向突然传来滴的一声长鸣。
紧接着,像是有默契一样,另外三台伺服器也发出了刺耳的警报声。
张渊猛地从椅子上弹起来。
林芳也惊醒了,大衣滑落到地上。
中间那台电脑上的画面停滞了。
命令行窗口不再滚动,光标消失。
随後,整个屏幕闪烁了一下,变成了一片令人绝望的纯蓝色。
一串白色的英文字符在蓝底屏幕上显现出来。
Fatal Error: Out of Memory.
紧接着,四台伺服器的风扇声逐渐减弱,硬碟灯彻底熄灭。
死机了。
张渊呆呆地站在屏幕前,嘴唇动了动,没发出声音。
他伸出手,在键盘上疯狂地按着回车键和退格键,键盘发出里啪啦的杂乱声响。
屏幕依然是蓝底白字,没有一点反应。
「重启。」
张渊声音乾涩,伸手就要去按主机上的电源键。
「别按了,师兄。」
陈拙站起身,伸手拉住了张渊的胳膊。
张渊转过头看着陈拙,眼眶红得吓人。
「重启接着算啊!从断点继续跑!」
「没有断点,内存溢出,这三天的数据全成了垃圾碎片,没有保存。」
陈拙松开张渊的胳膊。
林芳在一旁捂住了脸。
三天三夜的苦熬,满负荷的运转,最後换来的是四个字:内存不足。
张渊慢慢收回手,後背撞在办公桌的边缘上,顺着桌子滑下来,一屁股坐在摺叠椅上。
他从桌上摸出烟盒,用力抖了一下,里面已经空了,他把烟盒捏成一团,狠狠地砸在墙上。
「这就结束了?」
张渊低着头,声音里带着浓浓的挫败。
「四千多万个网格,连机子都撑不住,我们拿什麽去跟别人谈判?」
地下实验室里一片死寂。
空调的冷风吹着,四台机子静静地停在那儿。
陈拙走到机柜前,伸手贴在黑色的金属外壳上。
很烫。
烫得掌心发疼。
这是硬体在极限状态下挣紮过的痕迹。
陈拙收回手,转过身,看着颓然坐在那里的张渊和林芳。
陈拙走到办公桌前,把之前写矩阵公式的那两张A4纸拿起来,看了一眼,然後慢慢撕碎,扔进了垃圾桶。
纸片落下去的声音在安静的实验室里很清晰。
「师兄。」陈拙开了口。
张渊没擡头。
「旧工具没用了。」
陈拙看着张渊的头顶,语气平缓。
张渊擡起头,眼睛里布满血丝。
「你说什麽?」
「我说,离散矩阵,没用了。」
陈拙指了一下蓝屏的显示器。
「我们用二维的思路去切三维的几何,网格的数量呈指数级爆炸,就算把全校的机房都串联起来并网,也算不完四千万个节点的复杂乘法。」
林芳站起身,走到陈拙旁边。
「陈拙,你的意思是,这条路彻底走到头了?」
「对。」
陈拙看着他们俩。
「只要我们还在用切割的思路去面对一个连续的三维流形,算力永远是个填不满的无底洞。」
他顿了顿。
「这就是现实的问题,机器不会骗人,它跑不动就是跑不动。」
张渊咬着牙。
「那我们就这样认了?拿着这堆烂摊子去告诉上面,我们算不出来,让他们随便开价?」
「我没说认了。
"
陈拙转过身,看着那块写满方程式的白板。
「我得换个思路,让我想想。」
陈拙走回自己的双肩包前,把拉链拉上,背在肩膀上。
他回头看了张渊和林芳一眼,嘴角突然往上勾了一下。
那是一个很淡的笑容,在此时压抑的实验室里,透出一种不合时宜的轻松。
「往好处想,起码主板没烧,去睡一觉吧,师兄,这破机子也得歇两天了。」
说完,陈拙推开门,走了出去。
>
最新网址:www.shizizw.com