解析十万卡集群建设:技术储备与必要性探讨
马斯克旗下xAI快速建成十万卡集群,凸显算力对AI发展的关键作用。百度智能云探讨了十万卡集群的技术创新与行业推动,客户主要包括大模型创业公司和互联网企业,需求集中在训练阶段。核心解决方案涵盖网络架构、系统稳定性、加速框架和资源利用率提升,通过混合调度与灵活队列机制优。
近期,马斯克旗下xAI公司仅用122天建成十万卡集群,这一事件再次凸显了算力集群对人工智能发展的关键作用。
行业普遍认为,服务器集群规模越大,训练出的人工智能模型表现往往越出色。在此趋势推动下,全球科技巨头纷纷加大投入,建设高性能AI计算集群,以提升算法效率与能力。谷歌推出的AI Platform依托多模态生成式模型Gemini,显著增强了其在文本、图像、音频及视频处理上的综合能力。微软的Azure AI Compute Cluster则整合了前沿AI技术,为开发者提供了从数据处理到模型训练的全链路支持。
在国内,百度作为最早发布大模型的企业之一,持续展现出深厚的创新实力。11月6日,百度智能云举办百舸媒体沙龙,深入探讨了“十万卡集群”背后的技术创新、落地实践及其对AI产业的推动意义。百度杰出系统架构师、AI计算部负责人王雁鹏在现场进行了分享与交流。
以下为沙龙对谈内容整理:
百舸AI计算平台的客户群体与行业案例
问:百舸主要服务于哪些客户?在重点行业是否有成功案例可供分享?
我们的客户主要分为两类。一类是大模型创业公司,其对算力的需求通常在万卡规模,因此对集群的快速交付与成本控制有极高要求。这类客户数量虽不多,但需求非常明确。
另一类是典型的互联网公司,需求规模多在千卡至五千卡之间,覆盖教育等多个行业。这些客户的核心诉求,是利用其海量自有数据进行后续训练,以适配具体场景、优化模型,从而构建数据飞轮。目前,训练需求仍是业务主力,推理需求相对较少。这也部分解释了为何业界对AI算力落地成效仍持观望态度。预计今明两年,算力需求仍将以训练为主,而推理与小规模微调的长尾客户将逐步增多,但其总体资源需求仍难以与头部客户相比。
客户核心痛点与百度智能云的解决方案
问:客户的主要需求与痛点是什么?我们是如何应对的?
各类客户的需求在底层有许多共通之处,我们可以分层来看。
首先是基础设施层。客户首先需要一个高性能的网络硬件互联架构。许多企业在尝试自建大规模集群时,往往在网络环节遇到瓶颈。我们的价值在于提供更优的网络互联方案,助力客户成功构建稳定的大规模计算集群。
其次是系统稳定性。缺乏经验的客户在自建系统时,常面临有效训练时间偏低的问题。稳定性是客户面临的第二大挑战,我们需要帮助其提升系统可靠性,保障训练效率。
第三是加速框架。我们通过提供优化后的并行策略来提升性能。更高效的框架能显著加快计算速度,直接解决客户的加速需求。
最后是资源利用率。客户采购大量资源后,如何高效利用是关键。他们可能同时承担推理与训练任务,初期为训练购置的资源,后续也需用于推理。我们通过任务混合部署技术,提升整体资源利用率,确保算力资源物尽其用。
跨地域网络能力的实际效果
问:您刚才详细阐述了跨地域网络问题,能否举例说明其实际效果?
跨网络问题主要涉及两方面:一是在进行十万卡级别部署时,确实需要跨地域能力的支撑;二是对我们云服务能力的考验。举例而言,我们可以在云端两个不同机房同时部署计算任务,但对客户来说,使用体验是完全无感知、一致的。例如,即使客户需要5000卡规模,我们将其资源分配在不同地域,客户的使用感受依然流畅统一,这正是我们的核心优势之一。
混合调度如何提升资源效率
问:面对1000卡到5000卡的不同规模需求,如何确保任务级混合调度实现效率提升?
在混合调度方面,我们进行了大量工作,其本质是通过混合集群来承载不同特征的工作负载。
例如,推理任务存在明显的波峰波谷,资源使用量随时间波动;而训练任务则需要固定数量的计算卡,比如1000卡,若只有990卡可用,任务就无法启动。
为解决这一矛盾,我们设计了一套高度灵活的队列机制。将业务视为虚拟队列,并配置优先级策略。这些队列可根据实际情况动态调整资源分配,当某个队列的资源暂时闲置时,可被其他队列的任务抢占,从而大幅提升资源利用率。此外,我们的框架还能自动重配并行策略。例如,一个需要1000卡的任务,当仅有900卡可用时,框架能自动调整策略使其继续运行,保障了任务的连续性与有效性。
Checkpoint策略的技术演进
问:请详细介绍一下Checkpoint环节。业界存在不同策略,有的效果显著,有的则影响训练效率与成本,我们的实践是怎样的?
传统的Checkpoint策略是定时创建,例如每隔固定时间存盘一次,故障后从最近一次Checkpoint恢复。但这种方法存在明显缺点:若每小时存一次,发生故障时,平均可能损失半小时的训练进度。因此,理想情况是Checkpoint越密集越好,但这又带来了新问题。
最初策略需要暂停训练,将数据写入存储,由于存储带宽有限,此过程可能需要数分钟,在频繁存盘时难以接受。
于是我们进行了第一阶段改进:异步Checkpoint。训练过程不再中断,而是先将数据复制到内存,再异步写入存储。这可将存盘间隔从两小时缩短至30分钟。但存储带宽仍是瓶颈。
第二阶段,我们引入了触发式Checkpoint。正常情况下不主动创建,仅在监测到可能发生故障时才触发。实际上,许多GPU故障并不会导致数据立即丢失,我们可在故障点及时保存状态并恢复。该方法在超过95%的情况下均有效,仅在极少数场景下需回退至传统模式,最大程度避免了计算资源的浪费。
