第241章 【平凡】(2 / 2)
请关闭浏览器的阅读/畅读/小说模式并且关闭广告屏蔽过滤功能,避免出现内容无法显示或者段落错乱。
“林砚,肖宿的助手。”林砚咧嘴一笑,自觉地把自已定位得很清楚。
周庆宇把他们引到会议区,宋晓曼已经沏好了茶。
肖宿没有坐,目光越过所有人,直接落在了那三排机柜上。
黑色的机柜靠墙排列,指示灯像繁星一样明灭闪烁。
散热风扇的嗡鸣声低沉而持续,像某种巨大生物的呼吸。
透过玻璃柜门,可以看到里面插满了一块块计算卡,线缆整齐地捆扎成束,沿着走线架延伸到天花板上的桥架里。
这是京大高性能计算中心的家底。
三台管理节点,四十八个计算节点,每个节点八张GPU加速卡,总共三百八十四张卡。另外还有两组专门做数据存储的磁盘阵列,和一个从去年才开始搭建的液冷实验集群。
这些设备加在一起,峰值算力大约是两点八个PFlos。
这个数字放在国内高校里算得上第一梯队,但跟深度求索那种动辄上万张H100的商业公司比起来,差了一个数量级。
不过肖宿今天来,关心的不是算力总量。
他关心的是算力被使用的方式。
周庆宇站在机柜旁边,开始介绍情况。
“我们目前的调度系统用的是Sr框架,搭配自主研发的能耗管理模块。调度策略上,我们采用的是改进后的加权公平队列算法,结合动态电压频率调节来平衡负载,具体的资源分配逻辑是……”
他说了大概三分钟。
肖宿一直没说话,只是安静地听着,目光在机柜的指示灯和旁边监控屏幕上的实时负载曲线之间来回移动。
等周庆宇说完,肖宿才缓缓开口。。
“你们现在的调度策略,是针对高维特征空间设计的吧?”
周庆宇愣了一下,随即点头:
“对,目前主流的AI训练任务,特征维度都很高,所以我们默认按照高维张量运算的负载模型来分配资源。
这个策略是我们去年在SC会议上发表的,核心思想是把高维张量拆分成多个低维子块,然后分配到不同节点上做并行计算。
业内评价还不错,有几个学校还专门来我们这儿取过经。”
肖宿站在监控屏幕前,目光落在那条负载曲线上,看了一会儿。
实验室里的人都没有出声。
周庆宇站在他侧后方,手里还攥着刚才介绍系统时用来指屏幕的笔,笔帽不知道什么时候被他在指尖转松了,发出细微的咔咔声。
他自已都没注意到。
所有人的注意力都在肖宿身上。
“周老师,你们的调度器在处理通用AI训练任务的时候,节点利用率大概是多少?”
周庆宇微微松了口气,这个问题他答得上来。
“通用任务的话,GPU平均利用率在百分之七十五到八十五之间,峰值能到九十以上。”
他说这话的时候语气里带着一点不明显的底气。
这个数字在国内高校的算力中心里确实算漂亮的,去年SC会议的论文里专门有一段就是分析这个利用率数据的。
肖宿点了点头,没有评价这个数字是高还是低。
他的目光从负载曲线移到了机柜的指示灯上,那一排排绿灯有规律地明灭,像某种呼吸的节奏。
“拿如果跑小智的框架呢?”
周庆宇那点底气一下子散了。
“小智框架我们上周跑过一次基准测试,解耦度确实很惊人,和论文里的数据一致,但是实际运行速度只比传统模型快了三成左右,节点利用率……”
他停了一下,“不到百分之五十。”
“跟我预估的差不多。”
肖宿说这句话的时候语气很平淡。
他走到白板前。
宋晓曼几乎是下意识地往旁边让了一步,手里还攥着那块擦白板的抹布。
“我在设计小智的时候,用了一个前提假设。”
他的手快速的在白板上移动,很快就画出了一张结构清晰的层次图。
“传统大模型的特征空间是高维的,所有信息搅在一起。语义、逻辑、符号,全都在同一个高维向量里。
这种结构下,计算密集度集中在张量收缩操作上,单次计算量大,但跨节点通信的频率低。
通信开销相对于计算开销来说占比很小,所以调度策略把任务拆碎、撒出去、并行跑,是对的。”
他的笔停在第一层和第二层之间。
“小智的思路相反,我把这三层解耦了,语义层的表征被压缩到紧致群的不可约表示空间里,逻辑层单独建模,符号层再单独建模。
每一层的维度都比传统模型低了将近两个数量级。”
他在每一层旁边标注了对应的计算复杂度。
语义解析:O(nlogn)。
逻辑推理:O(n2)。
符号映射:O(n)。
“维度降低之后,单次计算量变小了,但三层之间的依赖关系比传统模型复杂。
语义层的输出是逻辑层的输入,逻辑层的中间结果需要和符号层频繁交换。
而且三层的计算复杂度不一样,逻辑层算得最慢,语义层次之,符号层最快。”
他转过身,笔尖点了点监控屏幕上那条负载曲线。
“所以如果还用传统调度策略,把每一层都拆成等大的子块撒出去,会出现一个情况,那就是符号层的节点很快就跑完了,然后空转,等逻辑层的节点把结果传过来。
逻辑层的节点本身就算得慢,还要负责汇总子节点的数据,通信压力全堆在它身上,结果就是……”
“大部分节点不在算,而是在等。”周庆宇接了一句。
肖宿点头。