第四百一十四章 算力调度 (第1/2页)
苏念念出门没多久,韩路一又把发来的资料仔细看了一遍,随后给刘彧拨了个内线电话。
“帮我问一下,江松然现在在不在。”
几分钟后,刘彧回了过来:“韩总,江松然总在办公室,要我让他过来吗?”
“不用,我们过去找他。”
韩路一说完便起身出门。
他眼下关心的是算力的实时情况,并没有让江松然提前准备;去江松然那边调数据更方便,真把人叫过来汇报反而耽误时间。
到了江松然办公室门口,江松然已经等在那里。
“韩总。”
“走,进去聊。”韩路一说完率先推门进去,也没落座,直接问,“你从京城回来后一直忙算力的事,现在进展如何?”
江松然早猜到韩路一会问这个——这既是公司战略,也是他最近的工作重心——所以提前做了点准备。
他走到电脑前,调出实时监控数据面板:“韩总您看,这是正在运行的推理和训练集群。”
韩路一简单扫过,随即问出最关心的问题。
“CJ590和龙腾2000大概能做到多少效率?”
听到这话,江松然表情有点尴尬。
韩总看问题真准,一问就问到现在最不好看的数据。
“从上次跑的基准看,CJ590能到理论算力的80%,龙腾2000只有63%。”江松然说。
只有这么低吗?
韩路一思索起来。
现在看,他最初设想的、用中间层来聚合国产算力联盟的方向没有错,在推理方向也已经踏出坚实的第一步——同意接入这套推理框架的国产厂家已有好几家。但问题在于,这套中间层原生适配的是当初硅明L100的底层硬件;工程团队做抽象化时已尽量做到硬件无感知,可有些底层实现没有就是没有,其他厂商的设计在接入中间层时会产生性能损失。当然,这不能说明中间层路线错了:若让各厂商自己实现,他们连跑通都还没跑通,接入中间层是省时省力的做法,只是必须接受性能损失。鱼和熊掌不可兼得。
韩路一忽然问:“龙门半导体那边,是你带团队去适配的?”
“是他们带人过来,在4楼实验室和我们一起做的适配。”
韩路一挑了挑眉。他和龙门半导体的张总只谈了用优先购买权换适配合作,其余都由团队自行对接;他倒没想到,适配工作是在起源大厦里完成的。
摊子大了,果然不可能面面俱到。
“适配效率再往上提,还要多久?”
江松然摇头:“我们只是紧急完成了初期适配,让这些卡尽快上线派上用场;现在再配合龙门继续提效率,性价比不高,不如让团队去对接其他厂商。”
道理确实如此,只是这样一来,不同类型计算卡集群之间的算力差距似乎有点大。
“可以混合调用吗?”韩路一问。
“这是我们团队正在研究的方向,但中间还有几个技术挑战没克服。”江松然答。
韩路一拉开椅子坐下来:“展开说说。”
江松然愣了一下,问:“多展开?”
韩路一说:“你就假设我是个5岁孩子,尽量把这个问题讲明白。”
江松然心想,韩总还真会突发奇想。
怎么突然用起了费曼方法?
如果你不能把一个专业知识给5岁孩子讲明白,就说明你还没完全弄懂它。
“我试试吧。”江松然说,“现在3种不同类型的推理卡,就像3种不同容量的卡车;不同的推理任务,则像要搬运的不同大小的货物。有些任务长而复杂,只能在L100上运行;有些比较简单直接,算力消耗也小,放在CJ590甚至龙腾2000上也能跑。”
“我们现在的问题是:一个任务进来之前,甚至作为长程任务的一部分在运行中,我们都不知道它到底是简单任务还是难任务。”
韩路一在心里摇头:江松然讲着讲着又绕回去了。
卡车和货物的比喻,只用了一句。
江松然还在解释:“因为不知道任务是大是小,调度逻辑就不好写,有时只能硬试。”
听到这里,韩路一问:“所以你们现在的方向是什么?”
“我们在考虑,能不能把任务切得再小一些。这样就不用考虑盛不盛得下,用哪张卡都盛得下。”
韩路一坐在原处看了他一眼。
“按这个思路,能做的任务复杂程度会受到限制吧?”
这相当于自废武功:太复杂的任务直接放弃,让L100也只能跑龙腾2000能跑的那类任务。
江松然说:“确实有这个缺陷,所以我们也还在探索。”
江松然和韩路一都是系统工程出身,都知道很多时候,一个东西在实验室里实现了,并不意味着现实中也能做出来。
从实验室到大规模应用,中间隔着的就是工程能力。
韩路一又想了一会儿,说:“现在的技术挑战都在任务编排上——这个编排规则必须提前写死吗?”
江松然闻言一惊。
韩路一接着说:“之前做电力任务时,就是让汤圆做调度中枢的。任务分配的调度,能不能也让汤圆来做?”
江松然仔细琢磨了一下。
动态调度确实是他们探索的另一个方向,但直接让汤圆参与可能并不成熟。AI眼下的一个问题就是速度慢、并发量上不去;而随着汤圆模型调用量越来越大,调度判断可能达到每秒几万甚至几十万次。
“韩总,调度逻辑比较复杂,直接交给模型来做,并发可能上不去。”江松然回答。
韩路一看着屏幕上的实时数据说:“我不是算力基础设施方面的专家,说错了你可以纠正我。现在的问题是任务复杂程度不好提前判断,对吧?那如果不把调度权交给汤圆,只让它判断任务复杂度呢?”
对啊!
江松然之前钻了牛角尖:写死规则的调度层性能好,却不够智能;完全交给汤圆来做,性能又不好。
但是,如果不是直接让汤圆做调度逻辑呢?
如果把判断任务难度作为调用链的起点呢?
江松然思路一开,新想法忽然都涌了出来。
(本章未完,请点击下一页继续阅读)