下一章 目录 设置
1、雪落在凌晨四点
匹 ...
-
匹兹堡入冬后的第一场雪,落在十一月中旬。
凌晨一点十七分,窗外的街已经被雪覆盖了薄薄一层。路灯下,细碎的雪粒斜斜地飘,落在对面教学楼灰白色的外墙上,很快又融化,留下一片颜色更深的潮湿痕迹。
计算机学院四楼还亮着三盏灯。
其中两盏属于走廊尽头的公共实验室,另一盏在四一七。
沈知夏坐在最靠里的工位,电脑屏幕的冷光落在她脸上。桌边放着半杯早已凉透的美式,杯壁上的水珠已经干了,留下几道浅褐色的痕迹。
屏幕中央是一行报错。
`CUDA out of memory.`
她盯了两秒,没有骂人,也没有叹气。
只是把椅子往前拉了一点,重新打开运行日志。
训练任务已经跑了七个小时。
按照原本的进度,再有四十分钟就能结束。导师明早九点要看实验结果,下午要开项目评审会,组里另外两个博士生负责的模块都已经完成,只有她这一部分还差最后一组消融实验。
显存溢出发生在第十九轮。
前十八轮的数据全在,但不能用。
知夏把训练曲线放大,看了一遍,又检查显存峰值。不是模型突然变大,也不是数据异常,而是验证阶段缓存没有及时释放。
她迅速定位到代码里的两行。
删掉,重写,重新计算显存占用。
再启动一次,最快也要到早上七点。
窗外的雪越来越大。
她看了眼时间,拿起手机,屏幕上有三条未读消息。
一条是同学在群里问明天的课还会不会照常。
一条是国内的朋友发来的照片,凌晨两点还在吃火锅。
最后一条来自她母亲。
“最近降温了,记得穿厚一点。你那边现在是不是该睡了?”
消息发送于两个小时前。
知夏没有点开聊天框。
她把手机扣回桌面,继续修改代码。
她并不是不想回复。
只是一旦回复,母亲就会接着问她在做什么,为什么还没睡,实验是否顺利,饭有没有吃。她不想撒谎,也没有精力解释。
在沈知夏看来,很多情绪只要说出口,就会自动变成别人的负担。
既然事情还没解决,那就没有说的必要。
凌晨一点四十七分,她重新提交了任务。
服务器队列前面还有六个进程。
知夏皱了下眉,打开集群面板。
今晚是课程大作业截止前夜,学院里一半的人都在抢卡。她申请的那台八卡机器排到了第七位,按平均速度估算,至少还要等两个小时。
她盯着队列看了十几秒,点开资源监控页。
另一组的服务器上,有一块卡的利用率只有百分之六。
不是空闲,只是利用率低。
她调出运行记录,发现那是一个占着整卡、实际只在做数据预处理的作业。
知夏没有直接杀掉任务。
她给任务所有者发了条消息。
“Hi, I noticed your job is occupying GPU 3, but utilization has stayed below 10% for the past hour. Is the GPU required for preprocessing? If not, could you switch the job to CPU? I have an experiment due for tomorrow morning.”
消息发出去,不到一分钟,对方回复。
“Sorry, I forgot to change the config. I’ll move it now.”
知夏回了句谢谢。
三分钟后,GPU空出来。
她重新提交任务。
这一次,队列显示第一位。
绿色的进度条亮起来时,她往后靠了靠。
直到这一刻,她才感觉到眼睛有些酸。
她闭眼休息了十秒,伸手去拿咖啡,喝了一口才发现已经冷得发苦。
实验室的门在这时被推开。
冷风顺着门缝钻进来,带着一点雪水和室外金属栏杆的气味。
知夏睁开眼。
进来的是个男人。
黑色羽绒服肩头落了一层雪,头发也有些湿。他手里拎着一只纸袋,另一只手夹着电脑,进门后先用鞋尖把门顶住,回身拍了拍肩上的雪。
知夏见过他。
江屿。
计算机系三年级博士生,做分布式学习和模型压缩。上个月学院报告会上,他讲过一篇关于异构集群训练优化的论文。报告不算花哨,但逻辑清楚,提问环节被教授追着问了十分钟,也没乱。
他们没有正式认识过。
知夏只知道他的名字。
江屿抬起头,也看见了她。
他似乎有些意外。
“还没走?”
知夏看回屏幕。
“你也没有。”
江屿笑了一声,没再问,走到离她两个工位远的位置,把电脑放下来。
他打开桌上的灯,又把纸袋放在中间。
很快,一股咖啡和烤面包的味道散开。
知夏原本并不饿。
可气味出现的那一刻,她的胃很轻地抽了一下。
她今天最后一次吃东西是在下午五点。那时候她从课上出来,在自动贩卖机买了包饼干,边走边吃,后来进实验室就没再出去。
江屿把羽绒服脱下来,搭在椅背上。
“咖啡?”
他没看她,只是从纸袋里拿出两杯。
知夏说:“不用。”
“热的。”
“不困。”
江屿这才抬眼。
“我也没问你困不困。”
知夏看了他一秒。
江屿把其中一杯推到两张桌子中间。
“买一送一。”
知夏低头看了眼杯子。
杯身上的标签写着拿铁,燕麦奶,不加糖。
她不喜欢甜咖啡。
这杯倒是正好。
“谢谢。”
她拿过来,却没有立刻喝。
江屿注意到她电脑上的训练面板。
“重新跑?”
“嗯。”
“内存溢出?”
知夏侧过脸。
“你怎么知道?”
“日志窗口还开着。”
他的视线落在她屏幕右侧。
知夏顺着看过去,才发现那行报错确实还没关。
“缓存没释放。”她说。
江屿点头。
“验证集?”
“嗯。”
“加了多卡同步?”
“没有必要。”知夏说,“数据量不大,多卡通信开销会更高。”
江屿拉开椅子坐下。
“你做的是多模态检索?”
“文档理解。”
“课程项目?”
“研究项目。”
他说:“罗森教授的?”
知夏没有回答。
江屿便知道自己猜对了。
学院里做文档理解的教授不多,能把硕士生留到凌晨一点跑实验的,更少。
“他明天要结果?”
“九点。”
江屿看了眼训练进度。
“照这个速度,七点左右。”
“六点四十。”
“你算过了?”
“每轮二十一分钟,二十轮,验证阶段额外增加百分之十七。”
她说得平静,甚至没有抬头。
江屿停了一下。
“那你还挺乐观。”
“这不是乐观,是估算。”
江屿笑了。
声音不大,在空荡的实验室里却显得很清晰。
知夏没理他,低头喝了口咖啡。
温度刚好。
窗外的雪落得更密,玻璃上映出实验室里的灯,桌椅和两个人的影子都被叠在雪夜里。
一时没人说话。
江屿打开电脑,开始处理自己的代码。知夏重新检查数据加载模块,顺便把明天汇报的图表框架搭好。
凌晨两点半,训练跑到第三轮。
凌晨三点零五分,第五轮结束。
凌晨三点二十,楼里的暖气忽然停了。
知夏最开始没有察觉,直到指尖开始发冷,敲键盘的速度慢下来。
她把袖口往下拉了一点。
江屿起身去看墙上的温控器。
“夜间节能模式。”
“几点恢复?”
“六点。”
知夏说:“没事。”
江屿回头看她。
“你是不是只会说没事?”
知夏的手停了一下。
“什么?”
“咖啡不用,饭不吃,暖气停了也没事。”他说,“你对生活的要求挺低。”
“我只是觉得没有必要抱怨。”
“抱怨和解决问题不冲突。”
“抱怨不能让暖气恢复。”
“但可以让你承认你冷。”
知夏看着他。
她不喜欢这种自以为是的分析,更不喜欢一个还算不上熟悉的人,试图替她定义什么。
“承认以后呢?”她问。
江屿像是没想到她会认真反问。
“什么?”
“承认我冷以后,暖气会开吗?”
“不会。”
“那没有意义。”
江屿沉默两秒,忽然把搭在椅背上的羽绒服拿起来,扔到她旁边的空椅子上。
“现在有了。”
知夏低头看那件羽绒服。
“我不穿别人的衣服。”
“我没让你穿。”
江屿说,“放腿上也行。”
“你不冷?”
“我刚从外面回来,没那么快冷。”
“那半小时以后呢?”
“半小时以后再解决。”
知夏抬头。
江屿已经坐回去,像是这件事到此为止。
她看了那件衣服一会儿,最终没有碰。
但过了十分钟,温度降得更低。
她的膝盖确实开始发凉。
知夏伸手,把羽绒服拉过来,盖在腿上。
衣服上还有一点室外的寒气,却比空气暖。领口处有很淡的木质香,不像香水,更像洗衣液。
江屿没有看她。
知夏也没有道谢。
凌晨三点四十分,江屿关掉电脑。
他处理完了。
知夏以为他会走。
可他只是站起来活动了一下肩膀,又坐回去,点开一篇论文。
“你不回去?”她问。
“外面雪太大。”
“校车还有。”
“凌晨四点的校车要等二十分钟。”
“所以?”
“所以看会儿论文。”
知夏没再问。
她知道他在撒谎。
刚才她在群里看见校车消息,因为降雪,夜间班次已经临时增加,每十分钟一班。江屿不可能不知道。
可她没有拆穿。
成年人之间有些善意不需要说得太明白。
凌晨四点零七分,训练跑到第八轮。
知夏的注意力开始下降。
她盯着同一行代码看了很久,忽然发现变量名写错了。不是程序错误,只是明天汇报时可能造成误解。
她把它改掉。
江屿的声音从旁边传来。
“你本科在哪儿?”
“国内。”
“我知道。”
“那你还问?”
“国内也有很多学校。”
知夏报了一个名字。
江屿的手停在触控板上。
“怪不得。”
“怪不得什么?”
“这么卷。”
知夏皱眉。
“我没有卷。”
“凌晨四点跑实验,觉得自己没卷。”
“实验需要跑完。”
“可以延期。”
“为什么要延期?”
“因为大多数研究结果,晚一天也不会改变世界。”
知夏看向他。
“可如果每次都觉得晚一天没关系,最后就会什么都晚。”
江屿没有立刻回答。
窗外的雪已经积了厚厚一层。对面楼顶的排风管被染成白色,远处山坡上的房子亮着零星的灯。
过了一会儿,他问:“你很怕来不及?”
知夏的神情淡下来。
“我只是讨厌没有完成的事情。”
“所有事情都必须完成?”
“开始了就应该完成。”
“感情也是?”
这句话问得突然。
知夏看了他一眼。
“我们在讨论实验。”
“我只是随便问。”
“那我不回答。”
江屿笑了笑。
“行。”
他没有继续。
这点倒让知夏有些意外。
很多人面对她时,总想得到答案。
课堂上教授问她为什么选择这个模型,同学问她怎么拿到研究机会,亲戚问她以后会不会留在美国,朋友问她为什么总是一个人。
所有人都觉得,只要开口问了,她就应该回答。
江屿没有。
他问了,被拒绝,就停下。
实验室再次安静下来。
凌晨四点三十二分,楼外忽然传来铲雪车的声音。
橙色的车灯在窗上划过,发动机发出低沉的轰鸣。知夏站起来,走到窗边。
从四楼看下去,整个校园像被埋进雪里。
路面几乎看不清,树枝压着雪,路灯的光被雪反射,亮得有些不真实。
她来美国三个月,第一次见这么大的雪。
刚开学时,很多人告诉她匹兹堡冬天很冷,天总是阴,雪会从十一月一直下到第二年三月。她当时没什么感觉。
冷也好,阴天也好,都只是环境变量。
她擅长适应。
江屿走到她旁边。
两个人隔着半步距离。
“第一次见?”他问。
“这么大的,第一次。”
“匹兹堡还没认真下。”
知夏望着窗外。
“还会更大?”
“会。”
“交通会停吗?”
“有时候。”
“学校呢?”
“不会。”
知夏点头。
“那就行。”
江屿偏过脸看她。
“你看到这么大的雪,第一反应是学校会不会停?”
“不然呢?”
“拍照。”
“照片拍不出真实效果。”
“发朋友圈。”
“没什么可发的。”
“感慨一下人生。”
知夏终于看了他一眼。
“你平时话很多吗?”
“不多。”
“那你今晚状态不好。”
江屿笑出声。
“可能是太困了。”
知夏没笑。
可她转回去时,嘴角很轻地动了一下。
江屿看见了。
他没有说。
凌晨五点,训练进行到第十轮。
江屿下楼买了两份早餐。
学校咖啡厅还没开,他从二十四小时便利店带回两只三明治和两盒牛奶。
知夏看着放到面前的食物。
“我不饿。”
“你胃刚才响了。”
“你听错了。”
“实验室只有两个人。”
“也可能是你的。”
“我吃过了。”
“那可能是暖气管道。”
江屿靠着桌边,抱起手臂。
“沈知夏。”
这是他第一次完整地叫她的名字。
知夏抬头。
“你知道我叫什么?”
“学院里敢在seminar上连续追问教授三个问题的人不多。”
“我只是对实验设计有疑问。”
“最后一个问题把他问住了。”
“因为他没有控制数据偏差。”
“所以我记住了。”
江屿把三明治往她面前推了推。
“吃饭不影响你做研究。”
知夏看了他一会儿,拆开包装。
三明治已经有点凉,里面是鸡蛋、芝士和火腿。
她把芝士拿出来,放到包装纸边上。
江屿问:“不吃?”
“太咸。”
“你要求还挺多。”
“你刚才说我对生活要求低。”
“我收回。”
知夏没有理他。
她吃东西很快,几乎不像在享受,更像完成一项必须的生理任务。
江屿看着她。
“你一直这样?”
“哪样?”
“吃饭像赶飞机。”
“节约时间。”
“省下来的时间干什么?”
“做更重要的事。”
“吃饭不重要?”
“重要,但不值得占太多时间。”
江屿想说什么,最后却只是低头喝了口牛奶。
凌晨五点四十,天边开始泛白。
雪还在下,却比夜里小了很多。
训练跑到第十二轮,损失曲线下降得很稳定。
知夏把羽绒服还给江屿。
“谢谢。”
江屿接过来。
“终于承认冷了?”
“暖气快恢复了。”
“所以不是承认,只是归还。”
“你可以这么理解。”
“沈知夏。”
“嗯?”
“你这样活着累不累?”
她看着屏幕。
“还好。”
“你看,又是还好。”
“因为确实还好。”
江屿靠在椅背上,侧脸被清晨微弱的光照亮。
“你是不是觉得,只要事情还能自己解决,就没有必要告诉任何人?”
知夏这一次没有立刻反驳。
江屿也没催。
过了很久,她说:“告诉别人也不会让问题消失。”
“有时候会。”
“比如?”
“比如刚才那件羽绒服。”
“那是你自己给的。”
“因为我看见了。”
知夏的手指停在键盘上。
江屿的语气很平常。
“可不是所有人都能看见。”
这句话轻得像雪落在玻璃上。
几乎没有声音。
知夏却忽然觉得,它在某个地方停住了。
她没有继续说。
早上六点,暖气重新启动。
风口发出轻微的震动声,温热的空气一点点吹进来。
江屿合上电脑。
“我要回去了。”
知夏点头。
“嗯。”
他穿上羽绒服,拿起桌上的纸袋,走到门口时又停下来。
“任务还顺利?”
“目前正常。”
“预计几点结束?”
“六点四十二。”
“你等到结束再走?”
“嗯。”
江屿看了一眼窗外。
“结束以后发我一条消息。”
知夏抬头。
“为什么?”
“确认服务器没再炸。”
“这是我的实验。”
“我知道。”
“那没有必要向你汇报。”
江屿握着门把手,似乎早就料到她会这么说。
“那就当我多管闲事。”
“你确实是。”
“所以发吗?”
知夏没回答。
江屿笑了一下,推门出去。
冷风从门外灌进来,很快又被关在走廊。
实验室重新只剩她一个人。
知夏看着门口,过了几秒,才收回视线。
早上六点四十一分,最后一轮训练结束。
没有报错。
知夏立刻保存模型,导出结果,生成图表。核心指标比基线提高了三点七个百分点,超过她预期的两点。
她重新检查了两遍。
六点五十七分,她把结果发给导师,又在邮件里简短说明了实验设置和下一步计划。
做完这一切,她才想起江屿临走前的话。
她拿起手机。
他们没有加过联系方式。
知夏停了一下,打开学校通讯软件,在搜索框输入他的名字。
江屿。
头像是一片看不出地点的海。
她点开对话框。
“实验结束了。结果正常。”
发出去以后,她觉得这句话有些多余。
正准备退出,屏幕上很快出现回复。
“收到。”
紧接着,又来了一条。
“辛苦了。”
知夏盯着那三个字。
她不喜欢别人说她辛苦。
辛苦意味着这件事超出了能力,意味着她需要被同情。她更愿意别人评价结果,而不是评价过程。
她没有回复。
江屿又发来一条。
“回去睡觉。”
知夏看了眼窗外。
天已经亮了。
校园被雪覆盖,远处有学生踩着新雪往教学楼走,留下两排歪歪斜斜的脚印。
她关掉电脑,收拾好桌面,穿上外套。
走出实验室前,手机再次震动。
江屿发来最后一条消息。
“晚安。”
早上七点零三分。
知夏站在空荡的走廊里,看着那两个字。
她觉得有些荒谬。
天都已经亮了,哪里还算晚安。
她原本不想回。
可走到电梯口时,她还是停下来,低头打字。
“早安。”
消息发送成功。
电梯门缓缓打开。
沈知夏走进去,没有看见几栋楼之外的公寓里,江屿刚脱下羽绒服,靠在窗边,看着她发来的那两个字,低头笑了一下。
那时他们都还不知道。
许多年后,他们会记得很多事。
记得那场大雪,记得凌晨四点停掉的暖气,记得一杯不加糖的燕麦拿铁,也记得实验室里没有说完的那句话。
可他们最难忘的,始终是那个清晨。
他对她说晚安。
她却回答了早安。
仿佛从一开始,他们就活在不同的时间里。
只是那时,谁也没有察觉。