第八十九章 所以我来了 1978:从婴儿开始增加智商
工作人员探进头来:“周教授,陆沉同学,下一轮赛程安排出来了,团体赛的题目明天早上公布,各国代表队已经开始准备了。”
周教授点头:“知道了。”
他转向陆沉:“走吧,今天好好休息。明天的团体赛,才是真正的硬仗。”
陆沉站起身,走到门口时忽然停住。
“周老师。”
“嗯?”
“图兰定理的证明,只是第一步。”陆沉说,“扩展形式解决了存在性问题,但构造性问题还没有完全打开,如果能找到turán极图的显式构造算法,应用面会更广。”
周教授愣住了。
“你想————继续做?”
“已经开始做了。”陆沉说,“大概需要两个月。”
他想了想,又补充了一句:“如果计算机够用的话。”
然后他推门出去,留下周教授一个人站在休息室里,半天没回过神来。
两个月。
解决图兰定理的构造性问题。
那是埃尔德什在1977年提出、悬赏500美元的问题。
这孩子说的是————顺手。
走廊里,陆沉边走边在脑中整理思路。
图兰定理扩展形式的证明,確实只是第一步。他的真正目標,是构建一套完整的极值组合与拓扑方法之间的对偶框架。
这套框架如果建成,影响的就不仅仅是图论。
密码学、编码理论、算法设计—都会受到衝击。
而这一切的前提是:
他需要一台能用的计算机。
长城286的性能,远远不够。
他需要更强大的算力。
或者—
更聪明的算法。
回到房间时,室友林枫正坐在床边看书。
见他进来,林枫抬起头,眼神有些复杂。
“你今天把苏联人镇住了。”他说,“我听队里其他人说的。”
陆沉在床边坐下:“只是做了一道题。”
“那不是一道题。”林枫放下书,“那是图兰定理。我在省队的时候就听说过,有人说这道题十年內没人能解。”
他停顿了一下:“你解了。在莫斯科。当著全苏联数学界的面。”
陆沉看著他:“你在担心什么?”
林枫沉默了一会儿。
“我在想。”他说,“我们真的是同一种生物吗?”
陆沉没有笑。
他认真地说:“是,我们共享99.9%的基因序列。”
林枫愣了一瞬,然后忍不住笑了出来。
“你他妈————”他摇头,“行吧,我收回刚才那句话,你还是个正常人。”
他重新拿起书,翻到刚才那页。
过了一会儿,又开口了。
“陆沉。”
“嗯?
”
“明天的团体赛,有一个模块是算法设计。”林枫说,“据说是苏联科学院计算中心出的题。会用他们那台besm—6跑实测。”
besm—6。苏联1968年投入使用的电晶体计算机,每秒运算约80万次。在这个时代,已经算是不错的机器了。
但在陆沉的认知里,这台机器的算力,还比不上前世的一台计算器。
“有什么问题?”他问。
“besm—6的指令集和长城286不一样。”林枫说,“我们在国內练的都是长城机,临时换平台,很多人可能不適应。”
陆沉点头。
虽然自己是个列外,但这对队员来说確实是个问题。
適应新的机器指令集需要时间。
而团体赛的时间,通常不会太充裕。
“你打算怎么办?”他问。
林枫犹豫了一下。
“我下午去计算中心熟悉一下环境。”他说,“你要不要一起?”
陆沉想了想。
“好。”
莫斯科大学的计算中心在主楼东翼,穿过一条长长的走廊,经过两道岗哨,才能进入机房。
带队老师办好手续后,陆沉和林枫被允许进入。
机房很大,besm—6的主机占据了大半个房间,磁带机嗡嗡作响,空调全力运转,依然能闻到一股淡淡的电子元件发热的气味。
几个苏联学生正在一台终端前操作,看到他们进来,目光有些微妙。
林枫走到一台空著的终端前坐下,开始查看指令手册。
陆沉没有急著上手。
他站在besm—6的主机前,目光从控制面板上一一扫过。
寄存器。运算器。內存单元。
他的大脑开始构建这台机器的完整模型。
besm—6的体系结构属於堆栈型架构,指令集包含约50条基本指令,字长48位,內存寻址范围————
他在脑海中逐条拆解指令集,分析每一条指令的时钟周期和微码执行流程。
这个过程用了大约四十分钟。
在这四十分钟里,他完成了对besm—6指令集的完整逆向。
不是通过阅读手册那只能知道表面的语法规则。
他需要的是更深层的理解:指令流水线的衝突模式,cache缺失的惩罚周期,乘除法指令的微码循环次数。
这些信息,手册上不会写。
但他可以通过对硬体结构的观察,结合指令执行的时序规律,反推出来。
就像看到一只表的外壳,就能推算出內部齿轮的咬合关係。
“陆沉。”林枫的声音传来,“你来看这个。”
他走过去。
林枫指著终端屏幕:“指令手册里说,乘除法运算需要调用子程序库,硬体没有直接支持。”
陆沉看了一眼。
besm—6的早期型號確实没有硬体乘除法单元,需要通过软体模擬。
“效率很低。”林枫说,“做数值计算的话,大量时间都耗在乘除法上了。”
“有办法优化。”陆沉说。
林枫转头看他。
“乘除法的子程序库是开放的。”陆沉说,“可以改写。用移位和加法模擬乘法的时候,有更优的调度顺序。另外——
”
他指向屏幕上的另一段:“浮点运算也有空间。besm—6的浮点格式是40位尾数加8位阶码,但它的规格化处理有冗余步骤。如果绕过標准库,直接操作寄存器,可以压缩大约30%的时钟周期。”
林枫听得有些发愣。
“你————”他问,“你怎么知道的?”
陆沉没有回答这个问题。
他只是说:“明天比赛前,我写一个优化版的数学库。”
林枫沉默了很久。
最后他说:“你知道吗,有时候我真的怀疑你不是这个世界的人。”
陆沉的手指在键盘上停了一瞬。
然后他说:“可能只是看得比较仔细。”
那天晚上,中国队开了赛前准备会。
领队周教授把团体赛的规则详细讲了一遍:总共四个模块,数学建模、算法设计、物理实验、协同解题。每个模块限时,团队总分决定最终排名。
“今年的算法设计模块,用的是苏联科学院计算中心的题库。”周教授说,“据说难度比往年高。大家做好心理准备。”
队员们的表情都有些凝重。
这届中国队,除了陆沉,其他都是按正常途径选拔上来的尖子生。放在国內,个个都是天之骄子。但到了国际赛场,面对苏联和东欧的传统强队,压力並不小。
“別有包袱。”周教授说,“这次出来,主要目的是学习和交流。名次不是第一位的。”
这话说得很体面。
但在场的每一个人都知道,不是这样的。
距离中国刚刚恢復高考才不过十年。
科学的春天刚刚开始。
每一枚奖牌,每一次突破,都会被放大成某种象徵。
他们背负的,不只是自己的成绩。
陆沉安静地坐在角落里。
他在脑海中过了一遍明天的比赛流程。
算法设计模块,限时四个小时。一台besm—6,一个终端,一道题。
他不知道题目会是什么。
但他知道,无论题目是什么,最终比的都是效率。
用最少的指令,最短的时钟周期,完成计算任务。
这就是算法竞赛的本质。
而他已经把besm—6的每一个时钟周期都刻进了脑子里。
散会后,周教授把他单独留下。
“今天下午,苏联科学院那边又来了人。”周教授说,“想邀请你赛后在莫斯科多留几天,参加一个学术討论会。”
陆沉看著他。
“我回绝了。”周教授说,“理由是需要向国內请示。”
“不过。”周教授压低声音,“这件事我已经通过渠道报回国內了。怎么决定,要看上面的意思。”
他顿了顿,又说:“孩子,你心里要有数————你现在做的事情,已经超出了学生竞赛的范畴。接下来会怎么样,我也说不准。
但有一件事我可以告诉你。”
“什么事?”
周教授看著他,一字一顿:“国家需要你,非常需要。”
陆沉没有说话。
他看著窗外的莫斯科夜色,想起了很多事。
前世的实验室。
通宵改论文的夜晚。
被拒稿的邮件。
那些拼尽全力却差一步的时刻。
然后他收回目光。
“我知道。”他说,“所以我来了。