如何规模和部署一个AI算力集群,需要准备哪些软硬件设备,这是一个网友的提问。下面说说这件事。
一个标准的AI算力集群主要由以下4部分组成:
1. 集群网络:RDMA网络。
2. 算力服务器:DGX/HGX、或者其它算力服务器。
3. 操作系统:Linux操作系统 / Laxcus分布式操作系统。
4. 应用软件:AI大模型、向量数据库、其它辅助软件。
以下是这些软硬件基础设施的选型和其它情况。
1. 集群网络
AI算力集群一定要选择RDMA网络。RDMA是Remote Direct Memory Access的缩写,这是一种高带宽低延迟的大规模通信网络,非常适合用在AI算力集群和大数据通信计算上。RDMA网络现在主要有两个分支:IB网络、RoCE网络。二者主要的区别在于前者的硬件设备价格贵,成本高,但是传输速率高通信效率好。RoCE网络的通信效果差一点,但是它的硬件设备价格会便宜一点。个人意见,如果是大规模生产型的AI算力集群,且不差钱的情况下,建议选择IB网络。如果是小型的或者实验室性质的AI算力集群,对时延没有太多要求,可以采用RoCE网络。
2. 算力服务器
由于现在AI计算完全依赖GPU,实际上现在的算力服务器等同于GPU服务器。目前在GPU领域,是英伟达一家独大,它的DGX服务器也是各大算力服务商、云服务商的首选设备,其次是HGX服务器。DGX和HGX的区别是:DGX是英伟达原厂出产的服务器,各方面的性能都是业内最好的,当然价格也最贵。HGX是其它服务器厂商使用英伟达算力卡OEM出来的服务器,性能相对会差一点,但是好在价格会便宜一点。还有一项区别是:DGX服务器使用了英伟达自家的NVLink协议实现机器内的GPU算力卡通信,HGX服务器则通常采用PCIe协议实现机器内GPU算力卡通信。目前英伟达的算力卡有A100、H100、L40S,今年还要再发布H200,性能又会提升一大截。不过由于禁售原因,这些算力卡在国内已经买不到,阉割版本的A800、H800也是处于缺货状态。目前国内算力卡厂商,包括华为、摩尔线程、壁仞等一票国内厂商也在加大力度投入研发,进入这个领域,实现基础算力硬件自主可控。但是不得不说,在实际性能上,国产算力卡和英伟达的算力卡还是有很多差距,希望未来能快点赶上吧。除此之外,更重要的区距在于应用生态,目前国内外的AI大模型基本都是英伟达算力卡上的开发,如果改用其它厂商的算力卡,软件迁移会是一个巨大的成本。考虑到去年国内冒出了200+大模型,很多公司都有抄近路,短平快上项目的习惯,有多少公司能够熬得住寂寞,肯为软件迁移付出时间和资金成本,目前值得商榷。
3. 操作系统:Linux/Laxcus
操作系统在AI算力集群起到承上启下的作用,对下它管理着包括CPU、GPU、内存、磁盘等硬件,对上为应用软件提供算力支撑。现在能够提供大规模算力的操作系统有两款:Linux/Laxcus。Linux咱们基本都知道,这里就不详细介绍了,但是Linux主要缺点并不是为AI和大规模算力集群准备的,所以咱们着重说说Laxcus分布式操作系统。与Linux不同,Laxcus是专门为大规模和分布式算力集群准备的操作系统。Laxcus和Linux区别是:Laxcus一个多机操作系统,Linux属于单机操作系统,Laxcus从系统内核和编程接口层面支持多机分布式并行计算,Linux不提供这个能力。也与一般分布式软件不同,Laxcus是从底层把海量的计算机资源聚合起来,形成一个逻辑统一的整体,再对外输出算力,而对于普通用户来说,无论你的计算机集群里有多少计算机,操作起来就象是一台计算机一样。Laxcus另外一个特点是完全兼容Linux,就是说Linux里面有的功能,Laxcus完全提供,而Laxcus提供的分布式相关功能,Linux却不具备。就是说如果Linux能够提供的功能是“1”,那么Laxcus能够提供的功能就是“2”。根据之前在IB网络的测试,Laxcus在单集群环境里,能够支持的节点规模超过10,000台。如果考虑GPU算力卡,以HGX服务器标准版的8卡计量,Laxcus通常能做到管理80,000至100,000片算力卡。这是一个非常庞大的规模,远远超过很多企业和算力服务商追求的万卡集群算力。如果再进一步延伸,让Laxcus实现二级集群管理机制(即叠加状态的计算机集群),Laxcus能够管理的算力集群节点规模将超过1,000,000台,算力卡规模会达到恐怖的8,000,000 – 10,000,000片,这已经远远超过OpenAI CEO山姆.奥特曼对AI算力集群的最大需求。
4. 应用软件
现在AI算力集群基本跑的就是三大样:AI大模型、向量数据库、其它相关软件(主要是管理维护软件)。这里就没有太多的介绍了,因为各家在部署AI算力集群时基本都有了自己的预案, 用户把它们部署上去就是了。