谈谈AISys架构师的基本素养

文摘   2024-07-20 18:20   浙江  

周末热, 非东京, 无娱乐, 宜扯淡.

过去一周计党/网党的争论在好几个头部公司(也包括国外那几家)内外都有很多讨论, 有一些问题也逐渐通过各种渠道反馈到渣这里, 故意开了一下车把这个事情讲清楚, 否则还会有更多无休止的争论,例如Eth-A, Eth+A, ... Eth-Z,Eth+Z一堆东西会被扯出来. 经常想还不如我来搞个Eth*的组织算了, 但是工作的部门边界的约束和个人的工作重心及兴趣早已不在这一块了.

争论背后的本质是新的计算范式的出现, 使得体系结构发生了更加紧耦合的重构,而组织结构的调整尚未跟上. 无论是NV内部NVLink党和Mellanox党的争论,还是其他很多企业都面临相同的问题, 计算/网络/存储/服务器/芯片等多个团队如何紧耦合, 更进一步的扩展到上层的算子/并行策略/算法等多个团队的协同.

而这些问题的本质还不是屁股决定的, 更多的是认知的不足. 解决问题的方法很多,但由于认知只想从自己的领域去解决一些不重要的问题, 被误认为屁股决定的,今天谈谈AISys架构师的一些基本素养.

中国大模型要赢, 并不一定需要很大的一个团队,更多的是能够充分融合协同的一个组织结构, 例如最近对幻方梁总的采访, 以及最近LMSYS的结果.

今天借着幻方量化的背景来穿插着讲一下一个真正合格的AISys架构师要有的基本知识结构. 以前写过一篇也可以参考一下

《算力受限下的大模型发展和AI基础设施建设》

1. 从量化交易开始扯个淡

DeepSeek的成功不是偶然, 因为量化交易才是AI皇冠上的明珠, 我一直说一个好的AI一定是一开始就能撸钱的. 而能直接撸钱的大概只有量化交易和搜广推的业务了,而它们的底层逻辑其实是相通的, 通过一系列行为预测而产生决策提供流动性撮合交易而带来的溢价.

搜广推相关的知识可以去看看以前写的一篇文章:

《谈谈AI落地容易的业务-搜广推》

而今天的重点是量化交易和高频交易. 先说说算法吧, 从最早期的各种基于时间序列分析的模型, 例如GARCH Model开始,再到一些LSTM相关的模型去预测订单簿, 再到更高维度的矩阵分析去构建对整个市场的风险测度等, 当然最近一些基于Transformer的时间序列分析的任务很多机构也在用了, 这里面的数学基础和工程能力, 所以这个圈子基本上都是一些数奥和信奥获奖的人. 从头开始从获取行情数据到清洗, 再到算法的构建,然后回测框架,再到上生产的优化等, 这一套流程由于算法保密的程度很高, 基本上都是几个人的一个小团队全栈处理完的.

然后就是交易的部分, 低延迟交易是必须要的, 例如RDMA技术, 我第一次接触它是在2014年给郑州商品期货交易所构建一个低延迟交易网络架构. 然后很长一段时间都在帮助国内的几乎所有的交易所构建低延迟交易系统,当然在帮很多券商和机构搞过一些高频交易系统. 感兴趣的同学可以去读一下几年前写的一篇文章

《低延迟交易系统设计》

前文是针对交易所的,而还有一些针对机构的低延迟网卡设计

《包处理的艺术(4)-低延迟智能网卡设计》

举一个在网计算真正有用的例子, 这是很多高频交易商做一些ETF套利算法的时候常见的处理方式. 当然还有更多的内容断人财路就不说了.

通过一些特殊的硬件结构来追求极低延迟, 超越Mellanox的方法很多, 可惜很多人跪太久了膝盖软的很,张嘴就来要参考xxx做xxx. 例如追求极致延迟的高频交易这一块压根就没Mellanox什么事. 大多数顶级的高频交易商都有自己的硬件团队, 例如Optiver. 真正优化的时候连MAC上的一拍都要扣掉, 例如Exablaze这类的网卡.

当然幻方并不是一个高频交易商, 当前很多政策上的误解和量化机构的谴责还是有一些偏激的. 当然也不得不说一些DMA相关的策略确实在市场急剧波动的时候带来了一些影响.

这里我想表达的一个观点是, 量化比起通用大模型的技术壁垒和全栈技术要求更高. 从算法到实现甚至到芯片层面需要全方位的去分析和优化. 因此出现DeepSeek这样领先的开源大模型某种意义上说就是降维打击.

那么其它通用大模型厂商AISys的架构师需要怎么做呢? 后面就来详细谈谈.

2. 算法

算法的问题和未来演进的趋势都需要整个AISys的架构师从上到下通盘的考虑. 例如很简单的一个问题, 现在这些模型的Tensor传输量来看, 尽量的做好Overlap和提升带宽就够了. 是否还要Load/Store. 如果稀疏模型是一条路,那么就一定要. 例如一个集群通过一些网络拓扑把Allreduce的问题解决干净了, MoE等其它结构一来,AlltoAll又不行了.

然后就是算法工程师本身也要了解这些分布式系统自身的瓶颈, 尽量在算法上提供更多的Locality的能力. 这是一个相互迭代的过程, 但是我们并没有那么多财力去一年建一个新的十万卡集群, 因此在芯片架构和算法架构上都需要有更长远的规划.

我一直以来的观点, 如果说AI是新的一场工业革命,它必须要有相应的数学基础. 当前的大模型技术在这里是严重不足的. 而这一次人工智能革命的数学基础是:范畴论/代数拓扑/代数几何这些二十世纪的数学第一登上商用计算的舞台。

因此我会慢慢的在下面这个专栏中补充一些资料

《大模型时代的数学基础》 

大模型是不是能够稀疏化? 从物理和能量密度/信息密度的角度来看, 似乎是可以的. 但是从范畴论的角度, 特别是预层范畴的角度来看待,Dense的Foundation Model训练是必须要做的, 因为只有在相对Dense的模型结构上才能更好的捕获所有的态射. 另一方面对于多模态的数学解释, ilya点赞了一篇柏拉图表征假说的论文:

如果你有足够丰富的数学知识背景, 你会发现本质上这些内容在数学上早就有了定义, 那就是TOPOS理论.

然后进一步来看对于模型Post-Training相关的SFT/RLHF这些工作, 在一个Dense模型的基础上引入GNN, 例如我前几个月在研究的Composable SAE-GNN, 通过对原有的Dense大模型架构基础上, 进行Sparse-Auto-Encoder分析, 然后在Sparse潜空间去构造一些RL-GNN算法. 这也是漆远教授谈到的“灰盒模型”

图神经网络和复杂网络理论相关的算法是我一直研究了很多年的内容, 另外举个例子代数拓扑在高阶复杂网络中的一些应用非常有趣, 用它们来做一些二级市场的风险测度效果非常好.

这里也有另一个AI4Science的专题刚开了一个头,从偏微分方程数值解讲起, 然后到PINN/FNO,再到一些DFT相关的计算和Ab-inito的分子动力学, 后面也会慢慢的去补充

《科学智能AI4Science算法》

大模型的计算需求本质上不应该由一些做互联的团队来拍板, 更多的是要对应用和算法的深入理解,对物理约束的深刻认知,再从体系结构上慢慢取舍平衡得出的结果.

3. 算力

作为一个AISys的架构师,对于GPU的架构及其演进也是需要了解的非常清楚的, 前些年总结了一个专题, 从80年代起的图形处理到NV逐代架构的分析基本上都涵盖了.

《GPU架构演化史》 

当然不光只有英伟达这样的GPGPU架构, SIMT体系架构,其它家的例如TPU/Tenstorrent/华为AScend等, 每个架构师都是绝顶聪明的人,看清楚他们的取舍非常重要, 因此在谈论ScaleOut和ScaleUP这些互联之前, 对于这些GPGPU的架构和workload的变化需要有更多的了解, 然后对它片上互联结构的缺陷需要更加深入的了解. 例如今年早些时候对某个系统进行调优的时候, 就通过推测一些芯片架构找到了问题并精确的对它进行了定量的分析, 兄弟团队开发出了新的算法拿到了收益.

另一方面就是并行策略, 通信/访存/计算的Overlap等视角来提升MFU,算子融合相关的内容,通信库相关优化的内容, 这些也是一个AISys架构师必须要考虑的, 并且他站的视角需要在算法/互联架构和芯片三个维度来权衡利弊, 是一个非常难的工作.

渣最近一段时间还在卷Cutlass,后续几周还会再写一个和Cutlass相关的专题, 并且从芯片架构上以及算法两个维度来进行一些分析, 为什么这些Overlap难做,为什么有些时候Overlap了以后性能反而更差, 如何设计更有效的体系结构.

4. 系统

系统这一词很腐败, 包的内容太多. 例如从系统架构上来看, 简单的来说可能很多人一开始就要想到计算资源的池化, 内存池化等,而抛开实际的业务不谈. 谈到互联系统的时候, 通常喜欢根据自己的一些喜好或者为了解决某个特殊的拥塞问题去构建特殊的非对称拓扑,反而对整个集群工作负载的普适性和长期演进能力带来的干扰.

其实前段时间计党和网党之争本质上也是这个问题.各自为了解决自己域内的问题在系统的边界带来的争议, 各自的出发点又不尽相同. 这一点上也希望这两个域的架构师能够去互相了解对方在说的什么. 同时向上生长, 知道算法和算力层面哪些问题可以解决, 并且向下扎根, 知道哪些架构在芯片演进路径上很快就会遇到瓶颈.

例如在网计算, 为什么开启在网计算的交换机一定要打开PFC?不开行不行? RDMA是传输层还是语义层导致的系统瓶颈?未来演进到102T/204T会遇到什么难题. 开启PFC后在ScaleUP域对其它正在并行执行的算子有什么影响?

5. 尾声

梁总有一段话特别有意义

梁文锋:我们认为随着经济发展,中国也要逐步成为贡献者,而不是一直搭便车。过去三十多年IT浪潮里,我们基本没有参与到真正的技术创新里。我们已经习惯摩尔定律从天而降,躺在家里18个月就会出来更好的硬件和软件。Scaling Law也在被如此对待。

但其实,这是西方主导的技术社区一代代孜孜不倦创造出来的,只因为之前我们没有参与这个过程,以至于忽视了它的存在。

梁文锋:我们每个人对于卡和人的调动是不设上限的。如果有想法,每个人随时可以调用训练集群的卡无需审批。同时因为不存在层级和跨部门,也可以灵活调用所有人,只要对方也有兴趣。

梁文锋:我们选人的标准一直都是热爱和好奇心,所以很多人会有一些奇特的经历,很有意思。很多人对做研究的渴望,远超对钱的在意。

当我们看待这一场变革的时候, 技术面前, 多一份好奇. 部门之间, 多一份协同. 算力不够, 多一分豁达. 名利面前, 多一分宽容. 算法面前, 多一份谦卑.

在一个组织里不去触碰别的部门的边界是一个人的本分, 但要积极的去了解别的部门的知识结构, 特别是在这个时代算法和基础设施紧密耦合的时候, 各个域的架构师都需要去扩展自己的知识体系, 才是消除争议的最佳方式, 理解对方在说什么和有什么难处才是最好的沟通方式.


zartbot
随便记录点有趣的东西
 最新文章