前年写的一篇科幻短文,当年中秋发的。玉宇淡悠悠,金波彻夜流。正好今天又是中秋,同步过来。大家节日快乐!
「一月普现一切水,一切水月一月摄。」
「一月普现一切水,一切水月一月摄。」
「一月普现一切水,一切水月一月摄。」
无论多少次站在 270° 胶囊电梯里升上天空来到这个巨型多面体,王博士都在心里默念这句话。他有的时候有一种感觉:只要心里默念了什么,或者做了什么特定的动作,事情就能按照他预想的方向发展。王博士有些轻微的恐高,所以站在胶囊电梯里上升时,他总是要默念这句话来消除紧张。即使是量子计算的博士,在面对生理性恐惧的时候也免不了一点微小的迷信。
这句话是他第一次到达这个悬浮在天空中的巨型多面体时想到的。
这个多面体有名字:北海一号国家级量子计算中心。设计算力为 5000 量子比特的巨型处理器。第一期建设完成于 2044 年。还不到一个季度,就满足了全北京市对算力的需求。三年内,整个华北地区几乎所有数码产品的算力都将由它来提供。而在 2050 年之前,全国将会建立起六个一样的计算中心。陈博士经常对朋友说:这是我们这个年代的阿波罗计划。
王博士是随着北海一号完工同时驻场开始工作的。他特别喜欢北海一号这个名字,取自《庄子秋水》:天下之水,莫大于海,万川归之。他仿佛能感受到对无数计算设备算力的需求如同奔涌的河流涌入北海一号,而它永远不会被需求填满。王博士想,要是要是有一天出现了连北海一号都无法满足的计算需求,那他一定理解不了。那就是他老了的象征,可不会是今天。
王博士还记得第一次见到北海一号的震撼,也许他永远也忘不了:在正式开启计算前一周的傍晚,他坐着 eVTOL 飞到了里北海一号最近的一个停机坪。然后坐着车开向北海一号:任何大型航空器都不能靠近北海一号一百公里之内,小型航空器最近可以抵达距北海一号 50 公里处。五十到一百公里之间也有一个梯形逐渐升高的禁飞高度。在禁飞高度里慢慢下降时,王博士认为这就是折腾,可当他第一眼看到北海一号的时候,一切抱怨都烟消云散了:人类就应该用这种方式见到它,否则无法领略第一眼的悸动。
从停机坪开出来后,车笔直地行驶在树林之间。为了避免信号干扰和人为影响,北海一号修在缺乏人类痕迹的华北平原上。在距离差不多有十公里左右的时候,王博士已经隐约能看到一个银色的建筑屹立在大地上。随着越来越接近,银色建筑开始逐渐露出了真面目:这是北海一号的底座,仿佛一朵向天开的喇叭花。从与地面的交汇处开始,先是一个柱子,随着高度的上升,柱子逐渐展开表面。到最上方变成一个巨大的圆盘。
「百尺莲开。」
王博士和朋友这么形容对北海一号底座的第一印象。不过他感觉,除非亲自来过,否则很难真正感受到其带来的震撼。王博士说随着车慢慢接近,它就像是一朵逐渐绽放在空中的花。他的朋友说那不是烟花吗?王博士感觉夏虫不可语冰。
而从「花朵」中间的花蕊处,一根细长的支柱从中伸出冲向更高的天空。而这细细的柱子,将硕大的北海一号本体支在天上——本体是一个十六面体,一角稳稳的立在这根支柱的顶端。在王博士看来,就像是一个针尖立在一个麦芒上。北海一号分成了两部分,下半部分是异常精密的机械机构,王博士感觉有点像以前人们会用机械表的机芯一样——这也是能让它像杂耍一样立在这的原因:这是一个三阶倒立摆。这些机械的作用就是让这个十六面体可以立在这里。不论发生任何地质灾害,还是强风吹拂,都不会破坏北海一号。
把车停在北海一号脚下,王博士才注意到北海一号的底座上绘制着古代官服下摆常见的「海水江崖纹」。底座接地处是象征的海浪的水脚,一座仙山从中而出,山巅是海水拍岸所激发的江牙。虽然是最现代的技术,但在审美上依旧是中国传统的美学。王博士有时候感觉技术本身就足够美了,其他设计不过是画蛇添足。可站在北海一号的边上,他不由自主地意识到这是非常中国的创造。这不是一台美国的量子计算机、也不是欧洲的,它就是中国自己的创造物。
王博士在底部坐上胶囊电梯——它真的很像胶囊。被「发射」上北海一号的本体。在胶囊电梯里的他意识到这个底座不光像喇叭花,更像一个漏斗。此刻他正在从漏斗的嘴管里往上升。这个过程中嘴管壁逐渐变成曲面向外展开,在胶囊电梯彻底从管中窜出来的一刻,王博士见到了此生最漂亮的人造物:
一个巨大的圆盘从底座逐渐展开在半空中,圆盘表面如同镜子一般光洁。月亮的倒影映在圆盘上,正如映在最清澈的水中一般。而圆盘的内侧,北海一号的倒影和月光交相辉映。北海一号下半部分的机械结构就像星辰,在其中运动。这个圆盘其实是无数新型的光伏面板拼接而成,白天它们会立起随着太阳的角度进行变换。来保证北海一号机械结构的供电。晚上它们静静地映射的月光。
「月映万川。」
王博士脑中第一时间想到了这四个字。这是他上学的时候读到朱熹写的。不论是哪里的水,都映的是同一片月亮。圆盘把自己变成了映月的水。他回过神来的时候,突然有一些恐高。他第一次做胶囊电梯的时候,不知道是不是有什么东西还没完善,他隐约听到了一些异响。于是开始想一些有的没的来转移自己的注意力。
「月映万川还有句话咋说来的?」他想到「哦对了,『一月普现一切水,一切水月一月摄』」并且一边想一边默念然后抬头看上面的北海一号。
在机械结构的上面,是一个几乎纯木构的结构。为了减少信号干扰,北海一号需要尽可能减少对金属的使用。这个研究还是王博士同实验室的师兄发的 paper。王博士听说,也许是为了炫技,也许是出于审美的形象考虑——抑或都有,北海一号的这个木构多边形是找了一位古建筑学者设计的。毕竟说到木构建筑,中国古代可是应有尽有。王博士和朋友们原以为北海一号会被设计成盖着一个大屋顶的故宫风格建筑,结果这位专家从独孤信印那找到了灵感——独孤信印是一个由煤精制成的二十六面体。煤精一般用来做砚台,做印章太少见了。所以独孤信印又被称作「煤精印」。王博士知道这个故事后,总是不自觉的管北海一号叫煤球。
但和印章不同,北海一号除去下半部分的机械结构外,每一面都像是一个有抽屉的柜子。抽屉的前板也是那位古建筑学者按照一个宋代的佛经柜设计的,从两边向中间微微隆起。据说某一块前板的木头上真的镶嵌了一块宋代的木头。北海一号每一面都有数量不同的「抽屉」——这是不同的计算单元。每个计算单元都要负责一片特定区域的计算工作。安装的时候他们就像是一个抽屉一样的被滑进北海一号。这种模块化的设计有助于防灾隔离和升级。
这就是王博士的博士研究方向:量子计算的准确性与安全性保障。严格来说准确性和安全性是两件事,可导师和他说现在缺人手,能多研究点是点。他就稀里糊涂做了两个方面的研究。可拜其所赐,他成为了北海一号的运维负责人。准确来说,也是唯一的工作人员。
北海一号的几乎所有软件运作都是自动化运维的。即使是硬件,也基本依靠机器人来操作。北海一号除了保安,日常常驻的只有几名工作人员负责机械结构的检修。量子计算机的维护,只需要王博士一个人就够。所以王博士的工作在他看来和看门大爷没啥区别——他不认为北海一号会出现任何需要他维护的问题。他甚至开始思考如何申请去参加北海二号在东北的建设。量子计算在极寒天气下的运作是他想研究的下一个课题。可这都是他「原以为」——从上周开始,陆续有北海一号的测试用户发现计算数据出错的情况。比如发给家人的消息会出现「锟斤拷」的乱码,沉浸式 VR 的建模突然会出现模型贴图错乱;走在路上的 AR 导航会失去导航信息。最开始只有海淀区西二旗的测试用户出了这个问题。王博士想会不会是传输过程丢包了,但再三检测后信号都没有任何问题。接着在西二旗斜对角朝阳区国贸的测试用户也出现了类似的问题。在今天白天,丰台区角门西的测试用户也开始报错。这三个地区在两个不同的计算单元里,这代表这个问题出现了某种传染性。
王博士急忙从市区赶来北海一号,他前天刚从北海一号赶回来测试信号。在胶囊电梯里,他一般默念每次来都背的句子,一边思考问题究竟出在哪里:
「如果只有一个模块出问题,那可能是这个模块出问题了。但如果两个模块都出了问题,要么就是北海一号的底层设计有 Bug 我们没测出来;要么就是某种病毒,它甚至能突破物理隔离。不对,不可能是病毒。要是病毒我他妈博士学位不要了。我们在病毒防护上做得足够好,任何计算都在沙盒内运行,绝不可能影响整个系统。更何况彼此还有物理隔离。」王博士还没想完,电梯就到了。
他踏上北海一号的内部,脚下的木头发出了一丝咯吱的声音。虽然他来过很多次了,可脚踩在木头上的感觉真是不会腻。再来北海一号之前,他进入纯木构建筑的体验还是上学的时候学校待着去参观应县木塔,也是个北宋年间的建筑。当他知道北海一号上也嵌了一块宋代木头的时候,他没来由的感觉北海一号和木塔之间可能有什么联系。
他打开入口处的存储柜,拿出了一台电脑。因为检测问题的时候担心会被量子计算机的内部问题影响,检修都要有自己有计算能力的设备。这年头像王博士这样的技术从业者,自己家里基本都把电脑这种原始的甚至还需要自己有计算能力的设备淘汰了。不过出于安全原因,就算他自己还有电脑也不会被允许带过来。
「服了!」他刚打开电脑一条邮件就弹出来了,通知他西二旗边上的马连洼也出类似问题了。虽然和最开始出问题的地方物理上不远,但因为网络拓扑结构,属于不同的计算单元负责。这下好了,三个计算单元出问题了。
他快速走到离电梯最近的 03 计算单元 D03-A06 区域,找到出现问题的第一个页片——这是量子计算机的最小计算单元。他之前来检查过好几次,一直没有发现问题。他抽出半透明的片区,并且向所有关联用户发送因服务维护,可能需要备用页片分流会导致有一定速度延迟——从 0.01ms 降低到 0.015ms。几乎无法察觉,除非是电竞选手。
在 A06 几百平米的空间里,机器们有序的闪烁着绿色的呼吸光——这代表在自查中这些机器都没有发现问题。王博士一个人站在这些幽光里。一个人在半空中的封闭空间里,会让很多人害怕。不过王博士从来不在乎:他说即使有鬼,见到量子比特该跪也要跪。相反他很享受这个时光,不需要和人打交道,只需要和讲道理的计算机对话。
和之前一样,多年前王博士和同事们就开始为此准备的代码没有任何问题。一点也没有。甚至连注释都写得无比优雅。
他接着坐着带有扫地功能的电动小车去了 01 计算单元的 D01-B16 区域。这就是刚刚出问题页片所在的地方。可能因为 01 计算单元在多面体的最顶部,风吹的木头有些咯吱咯吱的响声。顺着个咯吱咯吱的响声听,他似乎都能感受到风的流向。
如他所料,同样没有问题;不如他所料,这里应该有问题。
「这他妈到底是为啥?真想造大炮把这问题给轰了」王博士开始有些烦躁,他就算在博士延毕边缘都没碰到过这么棘手的问题。
他最后来到了 18 计算单元 D16-@02 区域。这个区域有些特殊,它的下面就是维持平衡的机械装置。换句话说,这是北海一号本体的最底层。因为在最底层,所以要直接和主干网络进行连接。运算好的数据会通过光纤集束和外面的主干网连接。因为还要负责传输数据的运算,所以这层负责的用户数相对较少。
可这么少的用户数也能出问题。而且还是一样,检测不出来。王博士实在不知道该怎么办了,他感觉距离秃顶似乎也不是那么遥远。可能是头发发出了不甘的怒吼,他灵光一闪,直接从抽出来的页片后面链接了对接主干网的光纤集束。想看看页片发出去的包是不是正常的。
读出去来一切正常。
「啊,果然不应该是传输的问题。」
不过他在断开连接前,将过去五分钟的数据存了下载,这也是他能电脑硬盘存储空间的上限。然后他把存下来的数据和页片里的数据做了批量 MD5 校验。MD5 由哈希算法生成,任何一组数据只要有最细微的不同都会导致 MD5 的变化。
问题终于出现了:有两个数据包的 MD5 不同。
王博士忽然感觉身体微颤,可能是兴奋导致的:终于把这个问题复现了!他想到:
「如果是页片到主干网之间这短短一节出现问题,那就明白为什么查不出来了。量子计算机和主干网本身都和我们设计的一样,的确没有问题。博士学位不用退回去了。因为数据量太大了,每次来这检查页片到主干网的私域传输不一定能捕捉到有问题的数据。这五分钟、五分钟的存,这次能发现也是运气好。那么问题出现在页片和主干网之间的私域传输上。可为什么会出问题呢?」他一时还想不明白,只能在里面一边溜达一面思考,顺便检查另外出问题的两个片页和主干网之间的私域链接有没有出问题。
因为另外两个页片不直接对接主干网,所以私域连接都在地板下面。必须拜托地面的保安把专用的开板工具送上来。
「得,修 Bug 最后也要和人打交道。」
不过功夫没白费,另外两个页片的问题一样在私域链接中。
王博士因为发现问题不在他设计的系统中,自信又重新建立了起来,大脑的思维速度又提升上来了:
「私域链接的设计太简单了,只需要让流量单方面流出就行。几乎不可能有 Bug,人类都用这技术小一百年了。」他开始啃指甲。
「难道是光纤集束硬件出了问题?不应该啊,这玩意设计的时候为了防止出问题,一旦里面一条光纤断了,整体会直接变色。难拿到真的是......病毒?」想到这个可能性,他不禁出了一身冷汗:
「shit 如果是病毒的话,那就代表这个病毒不光能突破层层防护进入量子计算机中,还非常聪明的掩护自己,直到自己被输出到私域链接的时候才发作。可私域链接没有计算功能啊,对程序来说和主干网也没有区别,它怎么知道什么时候该发作?」王博士只能推导出一个结论:如果这是病毒,也一定是一种他前所未见且远超他和其他顶尖研究人员水平的病毒。他甚至想不出来这个病毒如何在数学上做到这一点:「不会是 AQ 的人做的吧?」
AQ 是反量子计算的黑客去中心化组织(DAO) Anti-Quantum。参与者都是区块链的狂热信徒,他们作为一个黑客组织也没有领导,全靠链上的合约进行运作。他们认为量子计算是政府的阴谋,为的是对区块链网络进行 51% 攻击。虽然现在的计算力还没办法达到 51% 的水平,可根据预估到这一天不远了。他们希望通过攻击量子计算机来证明这种中心化计算架构没办法满足人们日常所需的可靠性,来逼迫政府和大企业放弃这种想法。不过从某种程度上来说,王博士也理解 AQ 的担忧:法定货币一直是加密货币的宿敌。可这宿敌都打了三十多年了,也没个结果。相信加密货币的人一直信,不信的一直不信。
如果是 AQ 的话,那北海一号的确是他们最好的目标。而王博士感觉 AQ 打到了他的七寸:如果是病毒原因导致的问题,那北海一号的可靠性会受到极大的怀疑。目前他们对测试用户说的都是传输信号还没建立完善。而这件事知道的人越少越好,不能声张,所以只能靠他和另外一位同事白天晚上轮流来看。
「看来这帮人是不想让我睡觉了,那咱们就比划两下看谁厉害」可以说,AQ 是王博士的一生之敌。在王博士看来,担忧 51% 攻击就是扯淡,因为区块链本身的计算难度也在随着运算速度增加,51% 也许永远不会到来。而且普通人享有以前超算才有的算力后,L5 自动驾驶、家庭机器人和对各种疾病的微型机器人靶向消除才能实现。不能因为一伙人的私欲,就让人类停留在以 CPU 为核心的传统架构上。这个架构出来快一百年了,也该被淘汰了。
他回到 D01-B16,也就是最新出现错误的地方。希望找到病毒在刚刚发作时留下的痕迹:既然有效果,那必定留痕迹。
并没有痕迹。咯吱咯吱的声音越来越大,吵得王博士想把风神的嘴给封赏——如果有这么一位可怜之神的话。
他是在束手无策了,甚至感觉即使是他的教授们集体来这开会,也不可能想明白问题。他甚至想让保安看看监控,是不是有人在这搞破坏——物理破坏才是最致命的破坏。不过他很快止住了念头,毕竟摄像头里的识别算法和每个工作人员携带的电子标签不可能漏过任何一名不速之客。找保安只会让更多人知道这件事——保安们都以为他在做简单的例行维护而已。
一封邮件弹出,又有测试用户报错了。这次就在旁边,D01-B17。
「幸好没把工具还回去」他一边想一边打开地板:「这什么东西!」
他看到一个黑影从地板下闪过,难道是破坏机器人吗?任何金属物进门的时候都会出发提示。全树脂机器人?总不能是木质的吧?
他急忙打开更多的地板,终于被他抓到了:
一只小老鼠。
修个计算机竟然还要和大自然斗智斗勇。
王博士终于明白了,刚刚的咯吱声并不是风吹过的声音,而是老鼠在地板里穿行后木头发出的声音。老鼠是怎么导致的破坏?也没看见任何硬件又被啃过的痕迹呀。他又仔细观察了一下,果然在木头上发现了老鼠的啃咬痕迹:「它还挺会挑」。
他只好钻进地板下面,一点点检查。幸好扫地机器人已经足够给力了,地面一点灰都没有,非常不华北。在他检查私域链接的时候,终于发现了问题:
原来老鼠从里面跑过来,可能会让私域链接的接头处有一些松动。这样有数据会传小概率传不到主干网。从量子计算机输出到私域链接的数据并不会做二次校验,所以没发现问题。也从来没人想过,高悬在华北平原的北海一号,地板下面竟然还能有老鼠。王博士学的防灾课上,有防火、防台风甚至连防核弹都有过一课时讲解(老师说基本防不住),却没学过防鼠。
王博士想了想,感觉自己得出答案了:出问题的 03 计算单元,就在电梯边上,应该是老鼠坐着胶囊电梯就上来了。而 01 和 18 计算单元,恰好是 03 的上下层。物理防御的确被突破了——只不过谁能想到突破它的不是人,是老鼠?
王博士把老鼠装进电脑包里,准备带下去放了。这只老鼠不知道,自己差点就阻碍了人类科技的进程。王博士松了口气,终于解决了。此刻他就感觉,运维工作清闲如看门老大爷也没啥不好。
在下降的胶囊电梯里,他看着光伏面板里的月亮:今夜月色还是如此美丽。
这月亮也曾照过那块宋代的木头。一如在未来它也将继续映照着万川。
题图去年十月拍摄于呼伦湖。
对了,朋友你订阅《山有虎》了嘛?
指出一个小小的错误:孤独信印应是独孤信印)