会议室里安静了几秒。
老张靠在墙角,盯着白板上那张层次图,眉头拧成一个疙瘩。
他之前一直以为小智跑得慢是框架本身的计算复杂度问题,还琢磨着要不要从底层算子做优化。
现在肖宿把三层结构一画出来,他忽然意识到自已连问题出在哪里都没找对。
肖宿没有在这个结论上停留太久。
他转过身,在白板的空白处继续。
“小智从设计之初就注定和传统调度策略不匹配。”
他在层次图旁边画了一个新的模块,标注为“任务分解粒度调整器”。
“要适配小智这种低维解耦结构,调度策略需要改三个地方。
第一个是任务分解的粒度。
传统调度器按数据量等大拆分,因为高维空间里数据量和计算量是近似线性的,低维解耦空间里这条线就不成立了。
语义层数据量大但计算量中等,逻辑层数据量中等但计算量最大,符号层数据量最小计算量也最小,所以拆分粒度不能一样。”
而分配的逻辑应该是这样的:
语义层用大块,减少拆分次数,省通信开销。
逻辑层用中块,避免单节点计算时间过长拖慢整体。
符号层用小块,充分利用并行度。
“第二个就是通信拓扑,传统调度器用树形归约,叶节点汇总到父节点,一层一层往上,高维空间里通信量小,树形的瓶颈不明显,低维空间里通信量大增,根节点会被堵死。”
他很快画出了一个环形结构。
“而改成环形拓扑,每个节点只和相邻节点通信,数据在环上流动而不是汇聚,总通信量一样,但没有单点瓶颈,平均延迟反而更低了。”
“第三个是任务亲和性,语义层对延迟不敏感,它的输出是一次性的,早一点晚一点差别不大,但逻辑层和符号层之间需要频繁交换中间结果,对延迟是极度敏感的。
调度器需要能识别这种差异,把延迟敏感的任务放在同一个物理节点上,或者至少放在同一台交换机下。”
他放下笔,退后半步。
白板上清楚地铺着一张图。
层次结构,粒度分配表,环形拓扑示意图,亲和性标注……
每一部分的位置都是经过安排的,连箭头都没有多余的交叉。
宋晓曼盯着那张图看了半天,忽然发现自已不知道什么时候已经把抹布攥成了一个球。
周庆宇站在白板前,把肖宿写的每一个字从头到尾看了一遍,又看了一遍。
他明白肖宿的意思了。
肖宿画的这张图,本质上是在说一件事:
调度策略的底层逻辑,需要从“通用计算优先”切换到“结构感知优先”。
传统调度器把任务当成黑箱,只关心计算量和数据量。
肖宿的调度器把任务拆开,知道每一层在算什么,知道每一层对什么敏感,然后针对性地分配资源。
这个思路他不是没想过。
事实上,去年他就思考过能不能让调度器感知神经网络的不同层,但是想要实现的复杂度实在太高了,最后他还是放下了,做会了传统的负载均衡优化。
而现在,肖宿画出的这张图,甚至连每一个模块的输入输出、计算复杂度、延迟敏感度都标得清清楚楚。
思考问题的深度简直难以想象。
越看,他的脸上越是激动,心底也不禁掀起了惊涛骇浪,因为他已经意识到了这个方法的应用前景。
要知道,现在全球的算力中心跑的都是通用调度器,Sr、Kuberes、还有各家自研的变种,所有人的优化方向都是怎么把高维张量算得更快。
低维解耦空间是一个全新的战场,而且目前这个战场上几乎没有人。
不是大家不想进来,而是从前从来没有能跑在低维解耦空间里的框架。
没有框架,调度器就是无源之水。
而现在,肖宿做出来了
而开启一个全新世界的钥匙现在就在他们面前。
周庆宇攥紧了手指,心底快速思索起来:恒科的小智一号已经在适配小智了,他们目前用的肯定是通用调度方案,等产品量产后,必然会遇到和他们一样的通信瓶颈。
以恒科的实力,自已组团队攻克这个问题,最少也需要半年到一年。
如果按照肖宿的方法,抢在恒科之前,把适配小智框架的调度器做出来,恒科一定会主动找上门来合作!
到时候,这可就不是普通的校企合作了。
以往合作都是企业看中高校的算力和人力,主动权在企业。
可要是他们手里有这套独家调度算法,局面就会彻底反转,不是他们求着恒科,而是恒科离不开他们的技术。
到时候他们拥有真正的议价权,算力研究中心也能彻底打开产业落地的口子了。
“我觉得可以干。”老张开口了,“肖宿同学已经把骨架画出来了,我们来做血肉。
环形通信拓扑我在早年的一个项目里接触过,当时是因为树形归约在跨机房场景下延迟太高,我们改成了环形的变种,套代码我还能找出来。”
宋晓曼犹豫了一下,举起手。
“周老师,任务亲和性感知那个模块,我可以试着做,我之前做过一个Lux进程调度器的小项目,关于NUMA架构下的内存亲和性优化,思路应该和肖宿说的任务亲和性有相通的地方,不过……”
她看了一眼白板上肖宿写的那几行标注,“复杂度可能比我那个项目高一个量级,我需要再仔细看一下肖宿论文里关于弗洛尔同调模块和符号映射模块的交互逻辑。”
“我跟你一起。”黑框眼镜男生从门口走进来几步,“API那层我来对接。”
周庆宇看着自已的团队,一个接一个地主动领任务。
每个人都知道这件事有多难,但没有一个人犹豫。
“好。”
周庆宇点了点头,转向肖宿,“肖宿同学,我们实验室正式立项,方向就是低维解耦空间的自适应算力调度。
你刚才说的三条,我们来做实现,过程中遇到算法层面的问题,可能还需要麻烦你帮我们把关。”
肖宿“嗯”了一声,这正和他意。
之后,他也没再多说什么,和林砚交代了几句,便转身离开了算力研究室。
他今天来算力研究室的目的是把自已脑子里那张图落到实处,确认自已的判断和实际系统之间没有偏差。
现在图已经画出来了,周庆宇的团队也接住了,剩下的是工程实现。
工程实现需要时间,不是他坐在这里一下午就能加速的。