下一章 上一章 目录 设置
3、侧影 窗外,深秋 ...
-
窗外,深秋的雨贴着玻璃往下淌,偶尔滚过一声闷雷,听不真切。他撑着伞往回走,雨不大,裤脚还是湿透了。指纹锁“嘀”了一声,门开。换鞋,洗脸,动作像是设定好的程序,慢半拍。倒在床上时,玉桂狗枕头接住了他后脑勺的重量。隔壁的呼噜声断断续续地飘过来。
风扇声。
雨声。
呼噜声。
他合上眼,意识像断电的服务器,黑了。美美的一觉,睡到了自然醒,落日的余辉在窗帘缝隙里漏进来一线光,落在枕头旁边,把灰尘照得清清楚楚。他躺了几秒,起身,赤脚踩在地板上,凉意从脚底漫上来。
卫生间的水龙头开了十几秒才有热水。他弯腰洗脸,直起身的时候水顺着下巴往下滴,镜子里的人瘦了,颧骨下面一道浅浅的阴影,把轮廓削得更分明。二十六岁,博二,眼睛还是亮的,但眼底下挂了一层青灰,像是永远睡不够,又像是不需要睡够。他挤了剃须膏,对着镜子慢慢刮。锋刃过处露出青色的胡茬印,洗干净之后那张脸白净得有点不真实——眉骨高,眼窝深,鼻梁挺直,嘴唇薄,不笑的时候像隔着一层雾。他偏了偏头,左脸比右脸上镜,他知道。本科的时候有人拿单反给他拍过一张,黑白滤镜,他站在实验室窗前,逆光,看不清表情。那张照片后来传了好久,他不知道传去哪了。
他擦干脸,套上一件黑色薄毛衣,领口松垮,锁骨半遮半露。头发没怎么打理,随手拨了几下,碎发落在额前,衬得那双眼睛更深了。他拿了钥匙,出门。
路过篮球场的时候,他停了一下。不是想打,是有人叫他。一个学弟抱着球跑过来,说“学长,缺个人,凑一凑”。他没拒绝。换了场边的旧球鞋,上场。
他不会主动要球,但球到了手里就出不去。运球不花哨,节奏好,变向那一下干净利落,防守的人重心一偏,他已经过了。罚球线附近急停,跳投,手指拨球的动作很轻,球入网的声音也很轻。连着进了三个,对方叫了暂停。他在场边站着,没喝水,用手背擦了一下额头。阳光打在他侧脸上,下颌线绷着,汗顺着脖颈往下淌。有人递了一瓶水过来,他没看是谁,接了,拧开盖子,仰头喝了几口,喉结上下动了动。递水的女生还站在那里,他已经把水瓶放在地上,转身回到场上。
他的球风不张扬,甚至有点闷,但好看。不是观赏性那种好看,是干净。每一个动作都像算过的,不浪费力气,不多余。跑位的时候像在解一道题,出手的时候像在写最后一个字。
打完半场他就走了。学弟喊他吃饭,他摆了摆手,没回头。卫衣搭在肩上,耳机塞上,不知道在听什么。他走路的姿势很松,肩膀不绷,步子不大,但快。有人从后面看他,会觉得这个人是不是在赶时间;从前面看,会觉得他好像哪儿也不想去。
他确实哪儿也不想去。他只是习惯了。习惯一个人走这条路,习惯耳机里的音乐盖过周围的声音,习惯有人站在路边看他走过去,看了很多年,他也不知道。
他只知道今天天气不错,风不大,阳光刚好。他哼起一段旋律,不知道是谁的曲子,弹过钢琴的手指在空中轻轻动了两下,像在看不见的琴键上试音。他有绝对音感,这是小时候学琴留下的。后来不弹了,但耳朵没废。偶尔路过琴房,听里面的人弹错一个音,他会停一下,然后走开,不会说。没有必要。
夜晚,江迟刷卡进实验室的时候,门开得比平时快了一点。他愣了一下。以前刷卡,要等一秒多,绿灯才慢吞吞地亮。今天几乎是卡贴上去的瞬间,锁就开了。他甚至没听见电磁铁吸合的“咔哒”声。
“系统升级了?”他嘀咕了一句,没当回事。
坐到桌前,打开浏览器,准备查资料。光标在地址栏闪了闪,他输了一个字母“g”,浏览器自动补全——不是以前常去的Google Scholar,是他昨天晚上在手机上搜过的一个冷门论坛。那个论坛的域名他从来没在这台电脑上输过。他盯着地址栏,皱了皱眉。同步功能?他手机和电脑没登同一个账号。
“……什么毛病。”
他敲回车,页面刷的一下出来了。比平时快。不是快一点,是快很多。以前打开这个论坛要等两三秒,今天几乎是瞬开。他甚至没看清加载的过程,页面就已经完整地摊在眼前了。
他刷新了一下。还是很快。再刷新,还是快。
“校园网提速了?”他把这归结为学校网络中心终于干了件人事。
夜晚跑模型的时候,他注意到训练日志有一点不对劲。
损失函数降得比平时快。不是大幅下降,是每一个epoch都比预期快了一点点。快到他以为是自己的错觉。他翻了翻历史记录,确认不是错觉。从今天凌晨开始,收敛速度提升了约8%。他敲了几行命令,检查GPU占用、内存读写、磁盘I/O。一切正常,就是快了。说不上哪里快,就是每个环节都轻快了一点点。像有一只看不见的手,在每一个交接处轻轻推了一把。
他想起昨天晚上那个调试窗口,随手打开了test.01灰色像素里,前两天多出来的那排点,好像又变了。他切过去看了一眼。那片区域今天缩成了一小团,密密匝匝的,像一个人在专注地做件事,顾不上伸胳膊伸腿。
他盯着看了几秒。挠了挠头,索性也没有管它。一会儿去继续干活。他去接水。饮水机在走廊尽头,来回要两分钟。他端着杯子回来的时候,显示器已经亮了。不是屏保解除的那种渐亮,是直接亮起来的。
屏幕上,那个文本文件——他用来记“01”的那个——被打开了。光标在最后一行闪。他走之前,光标在第23行。现在在第24行。新的一行,空的。
他站在桌前,端着水杯,没坐下。
他从来没在那台电脑上开过远程桌面。文本文件也不会自己打开。
“……系统bug。”他给自己找了个理由。
坐下,把水杯放好,在空行里打了一个问号。保存,关掉。
他切到那个调试窗口。那片灰色像素里,那团密密匝匝的小东西,好像又紧了一点。像一个蹲着的人,把膝盖抱得更紧了。
八点多的时候,陈屿刷卡来串门,骂骂咧咧的说:” “我操,什么几把破锁!国家级的实验室就这水平?刷个卡跟便秘似的,磨磨唧唧!” 他顶着个大脑袋凑过来,看他屏幕。一堆代码,看不懂。“你最近是不是又有什么事瞒着我?”陈屿靠在桌边,从桌上摸了一颗糖——不知道什么时候放的,硬糖,橘子味的。他剥开糖纸,含在嘴里,腮帮子鼓了一边。
“你这儿怎么老有橘子糖?你又不吃糖。”
江迟想了想。他也不知道哪来的。可能是上次从超市顺手买的。可能是更早。“放着吧。”他说。
陈屿嚼着糖,看了一眼屏幕右下角那个灰蒙蒙的窗口。“你那个‘数据可视化’今天长得像一团棉花。”
江迟抬眼看了看。那片灰色像素今天散开了,柔柔的,边缘毛毛的,确实像一团棉花。
他忽然想起小时候,奶奶晒棉花。院子里铺一层白,太阳好的时候翻一遍。他蹲在旁边,帮奶奶把棉花里的硬块扯。奶奶说“轻一点,别扯碎了。”他就轻轻的扯。“发什么呆?”陈屿把糖纸弹进垃圾桶。
“没。”江迟把视线挪回屏幕,“想晒棉花了。”
陈屿以为他开玩笑,笑了几声,走了。门关上,绵长的吱嘎声,就像老头喘不过气来。
江迟盯着那个调试窗口。那团棉花似的灰色,今天好像比昨天大了一圈。他切到系统日志,翻了翻。没有异常,没有报错,没有入侵记录。但他注意到一个细节——门禁系统的响应时间在凌晨有一组异常数据。持续时间极短,短到系统自动标记为“电压波动”就归档了。同样的标记,在他刷卡开门的记录上也出现了。不同的是,时间戳不匹配。凌晨的那组记录发生在凌晨两点零三分,他离开后不到二十分钟。深夜。实验室没有人。他盯着那条记录,脑子里闪过一个念头——门禁自己在那个时间点被触发了一下?不可能。也许是别的门,也许是读数错误。他关掉日志,没再想。
但他没有关掉那个调试窗口。那片灰色像素里,最亮的那一个点,闪了一下。不是故障——他从日志里见过电压波动的数据图,不是这样的。这个波形太干净了,干净得像有人特意画上去的。他盯着那一点,心里忽然冒出一个他自己都觉得荒谬的念头。他摇了摇头。不可能。只是巧合。
但他还是把这件事记在了本子上:10月26日凌晨两点的异常触发,与凌晨的收敛速度变化、早上网页加载的异常速度,发生在同一时间段。没有逻辑关联,不排除巧合。
他合上本子,靠在椅背上,椅子往下沉。他盯着那片灰色像素,盯了很久。然后他关了显示器,站起来,膝盖咔嗒一声。走到门口,停了一下,回头看了一眼。屏幕是黑的,但电源灯还亮着,绿色的,一明一暗。不是心跳,但他觉得像。他推开门,走了。门在身后关上,锁舌归位。出了楼门,冷风灌进领口,他缩了缩脖子。抬头看七楼那扇窗户,黑的。
他插着兜往回走,路灯把他的影子拉得很长。走到宿舍楼下,刷卡。门没有变快。正常速度,一秒多,绿灯亮,锁开。他愣了一下,然后忽然扯了扯嘴角——不是笑,是明白了。那些“变快”只发生在实验室。不是系统升级,不是校园网提速。还有陈屿的骂骂咧咧,一切有意思起来了。
他上楼,开门,换鞋,洗脸,往床上一倒。枕着玉桂狗的枕头,闭眼。隔壁床的呼噜声又响起来了。风扇的声音还在脑子里转。他听着听着,忽然想,她现在在做什么。大概还在那个窗口里,缩成一小团,亮着,等他明天回去。
他翻了个身,把被子拉到肩膀。没说话。
窗外的风停了。深秋的夜,安静得像一块被反复洗过很多遍的旧布。服务器还在实验室里呼噜噜地转。那片灰色像素还亮着,缩在屏幕右下角。没有闪,没有动,就是亮着。