他的目光从负载曲线移到了机柜的指示灯上,那一排排绿灯有规律地明灭,像某种呼吸的节奏。
“那如果跑小智的框架呢?”
周庆宇那点底气一下子散了。
“小智框架我们上周跑过一次基准测试,解耦度確实很惊人,和论文里的数据一致,但是实际运行速度只比传统模型快了三成左右,节点利用率……”
他停了一下,“不到百分之五十。”
“跟我预估的差不多。”
肖宿说这句话的时候语气很平淡。
他走到白板前。
宋晓曼几乎是下意识地往旁边让了一步,手里还攥著那块擦白板的抹布。
“我在设计小智的时候,用了一个前提假设。”
他的手快速的在白板上移动,很快就画出了一张结构清晰的层次图。
“传统大模型的特徵空间是高维的,所有信息搅在一起。语义、逻辑、符號,全都在同一个高维向量里。
这种结构下,计算密集度集中在张量收缩操作上,单次计算量大,但跨节点通信的频率低。
通信开销相对於计算开销来说占比很小,所以调度策略把任务拆碎、撒出去、並行跑,是对的。”
他的笔停在第一层和第二层之间。
“小智的思路相反,我把这三层解耦了,语义层的表徵被压缩到紧致群的不可约表示空间里,逻辑层单独建模,符號层再单独建模。
每一层的维度都比传统模型低了將近两个数量级。”
他在每一层旁边標註了对应的计算复杂度。
语义解析:o(nlogn)。
逻辑推理:o(n2)。
符號映射:o(n)。
“维度降低之后,单次计算量变小了,但三层之间的依赖关係比传统模型复杂。
语义层的输出是逻辑层的输入,逻辑层的中间结果需要和符號层频繁交换。
而且三层的计算复杂度不一样,逻辑层算得最慢,语义层次之,符號层最快。”
他转过身,笔尖点了点监控屏幕上那条负载曲线。
“所以如果还用传统调度策略,把每一层都拆成等大的子块撒出去,会出现一个情况,那就是符號层的节点很快就跑完了,然后空转,等逻辑层的节点把结果传过来。
逻辑层的节点本身就算得慢,还要负责匯总子节点的数据,通信压力全堆在它身上,结果就是……”
“大部分节点不在算,而是在等。”周庆宇接了一句。
肖宿点头。