当前位置: 首页 » 资讯 » 新科技 » 正文

ByteDance这套AI调度系统,让数万张GPU像管弦乐团一样协调工作

IP属地 中国·北京 编辑:苏婉清 科技行者 时间:2025-09-03 20:22:32


这项由ByteDance Seed团队和新加坡国立大学合作完成的研究发表于2025年8月,论文题为《Taming the Chaos: Coordinated Autoscaling for Heterogeneous and Disaggregated LLM Inference》。感兴趣的读者可以通过arXiv:2508.19559v1访问完整论文。研究团队开发了一套名为HeteroScale的智能调度系统,专门解决大规模AI服务中GPU资源自动分配的复杂难题。

现在的大语言模型服务就像一个巨大的餐厅,需要处理海量的顾客点餐需求。传统的做法是让厨师既负责准备食材(预处理阶段),又负责烹饪出餐(生成回答),这种一条龙服务虽然简单,但效率不高。新的方法是把这两个步骤分开:专门的师傅负责准备食材,另一批师傅专门负责烹饪。这种分工叫做Prefill-Decode(P/D)分离架构,能大大提高整体效率。

但这种分工带来了三个头疼的问题。首先是设备不匹配的问题,就像准备食材需要的是锋利的刀具,而烹饪需要的是大火力炉灶,不同工种需要不同的专业设备。如果所有师傅都用同样的设备,必然会造成浪费。其次是沟通成本问题,食材准备好后需要快速传递给烹饪师傅,如果两个工作台距离太远,传递过程就会拖慢整个流程。最后是人员配比问题,如果准备食材的师傅太少,烹饪师傅就要等待;反之,烹饪师傅不够,准备好的食材就会积压。

ByteDance的研究团队面对的正是这样的挑战,只不过他们管理的不是餐厅,而是拥有数万张GPU的超大规模AI服务集群。他们的HeteroScale系统就像一个超级智能的餐厅经理,能够实时监控每个环节的工作状态,自动调配人手和设备,确保整个流程高效运转。

一、问题的核心:三大挑战如何影响AI服务效率

要理解HeteroScale解决的问题,我们可以把AI服务比作一个超级复杂的流水线工厂。在这个工厂里,处理用户请求分为两个主要环节:首先是理解和分析用户的问题(预处理阶段),然后是逐步生成回答(生成阶段)。这两个阶段就像工厂里的不同工序,各有各的特点和需求。

第一个挑战是硬件配置不当造成的资源浪费。预处理阶段就像是图书馆里的研究工作,需要强大的"大脑"来快速理解和分析复杂信息,因此需要计算能力强的GPU。而生成阶段更像是按照既定模板进行复制工作,主要需要的是大容量的"记忆储存"来保存之前的上下文信息。如果用同一种GPU来处理这两种完全不同的任务,就好比让赛车司机去开货车,让货车司机去开赛车,都无法发挥各自的最大优势。研究数据显示,这种"一刀切"的配置方式会让每个生成的token成本增加41%,这在处理数万亿token的规模下,浪费是极其惊人的。

第二个挑战是网络传输瓶颈。两个阶段之间需要传递一个叫做"KV缓存"的重要数据,这就像是工厂流水线上的半成品需要从一个车间传递到另一个车间。这个数据包含了到目前为止对话的所有关键信息,数据量很大。如果两个处理单元距离太远,比如一个在北京,一个在上海,那么传输这些数据就需要很长时间。研究团队发现,如果不考虑网络距离随意分配任务,会导致传输带宽减少约20%,直接影响整体响应速度。

第三个挑战是两个阶段之间的人员配比失衡。这个问题特别微妙,因为传统的监控方法会产生误导。通常我们通过GPU使用率来判断系统是否繁忙,就像通过员工是否在工作来判断他们是否忙碌。但在AI服务中,负责生成回答的GPU即使在不太忙的时候,使用率也可能显示很高,因为它需要不断维护大量的上下文信息在内存中,就像一个图书管理员即使没有读者,也要不断整理和维护书架。这种"虚假繁忙"让系统管理者误以为生成阶段很忙,从而分配过多资源给它,反而让预处理阶段资源不足。

这三个问题相互关联,形成了一个复杂的管理难题。传统的自动调度系统,比如Kubernetes的水平扩展器(HPA),就像是只会按固定规则工作的简单机器人,无法应对这种复杂情况。它们通常只看单一指标,比如CPU使用率,然后简单地增加或减少服务器数量。但在AI服务的场景下,这种简单粗暴的方法会导致系统震荡,时而资源过度分配,时而资源严重不足,无法维持稳定高效的服务。

二、HeteroScale的解决方案:三层架构的智能调度

面对这些挑战,研究团队设计了HeteroScale系统,就像为复杂的工厂建立了一套三级管理体系。每一层都有明确的职责,相互配合,确保整个系统高效运转。

最上层是策略决策层,就像工厂的总经理办公室。这一层负责制定整体策略,决定什么时候需要增加人手,什么时候需要减少人手。它收集各种运营数据,包括订单量变化、员工工作强度、设备使用情况等,然后根据预设的业务目标做出调度决策。这一层的关键创新在于它不是简单地看某个单一指标,而是综合考虑多种因素,特别是采用了一种叫做"decode TPS"的指标作为主要判断依据。

中间层是联合预调度层,相当于工厂的生产调度部门。当上层决定需要调整人员配置后,这一层负责具体的人员和设备安排。它需要考虑的因素包括:哪些设备最适合新任务、如何保证协作团队能够就近工作、如何在不同优先级的任务之间合理分配资源等。这一层引入了两个重要概念:部署组(Deployment Group)和RDMA子组。部署组确保需要密切协作的工作单元能够在同一个区域内工作,而RDMA子组则根据设备的稀缺程度和性能水平进行优先级管理。

最下层是子集群调度层,类似于各个车间的现场主管。这一层直接与底层的Kubernetes系统对接,负责将上层的调度决策转化为具体的操作指令,比如启动新的服务实例、关闭不需要的实例等。它还负责向上层报告设备状态和资源使用情况,为决策层提供准确的基础数据。

这种三层架构的最大优势在于分工明确但协调统一。每一层都专注于自己最擅长的工作,同时通过标准化的接口与其他层交流。这种设计既保证了系统的灵活性,也确保了决策的一致性和执行的高效性。

三、核心创新:从混乱中找到秩序的三大法宝

HeteroScale系统的核心创新可以用三个相互关联的"法宝"来概括,它们共同解决了大规模AI服务调度中的根本性难题。

第一个法宝是异构资源管理框架。传统的资源管理就像是经营一家只有标准房间的酒店,所有客人都住一样的房间。但实际上,有的客人需要的是带大书桌的商务房间(适合预处理任务),有的客人需要的是有大衣柜的休闲房间(适合生成任务)。HeteroScale建立了一套智能的房间分配系统,它首先识别每种任务的具体需求,然后将其与最匹配的硬件资源配对。系统会自动维护一个详细的资源清单,记录每种GPU的特性,包括计算能力、内存大小、网络连接质量等,然后根据任务特点进行最优匹配。更重要的是,系统还会考虑服务的优先级,确保重要任务能够优先获得最佳资源。

第二个法宝是网络感知调度抽象。这个创新解决了"距离问题"。系统引入了部署组的概念,就像为需要频繁协作的员工安排相邻的办公室。每个部署组包含处理同一个服务请求的所有组件,系统会确保这些组件被安排在网络距离最近的位置,通常是在同一个交换机下面。同时,系统还建立了RDMA子组的优先级体系,将网络资源分为三个等级:低优先级的是同质GPU子组,中优先级的是异质GPU子组,最高优先级的是能够在同一个交换机下直接连接不同类型GPU的子组。调度器会优先为要求不高的服务分配低优先级资源,把最珍贵的高优先级资源留给最需要的服务。

第三个法宝是基于生产数据的全面调度策略分析。这可能是整个系统最重要的创新。研究团队做了一件前人没有做过的事情:他们对生产环境中的各种监控指标进行了大规模的实证分析,最终发现了一个关键洞察。传统上,大家都习惯用GPU使用率来判断系统忙碌程度,但在AI服务中,这个指标会产生严重误导。特别是在生成阶段,即使工作量很轻,GPU使用率也会保持在很高水平,因为它需要持续维护内存中的上下文信息。

研究团队测试了八种不同的监控指标,包括吞吐量指标(每秒处理的token数量)、硬件指标(GPU计算单元活跃度、GPU利用率)、延迟指标(首次响应时间、后续响应时间)等。通过对比分析,他们发现"decode TPS"(生成阶段每秒处理的token数)是最可靠的指标,它能够准确反映系统的真实工作负荷,不会被内存操作干扰。

基于这个发现,他们设计了两套互补的调度算法。对于线性变化的指标,采用比例控制算法,当工作量增加时,按比例增加资源。对于非线性变化的指标(如延迟),采用负反馈控制算法,设置多个阈值,在不同程度的压力下触发不同幅度的调整。这种双重策略既保证了系统的响应速度,又避免了过度调整导致的不稳定。

四、实战验证:从实验室到生产环境的全面测试

为了验证HeteroScale系统的实际效果,研究团队进行了从小规模实验到大规模生产部署的全方位测试,就像一款新药需要经过从试管到临床的完整验证过程。

首先,他们进行了P/D比例优化实验。这个实验就像寻找最佳的员工配比,研究团队测试了两种不同类型的服务,看看预处理员工和生成员工的最佳比例是多少。服务A处理的主要是中等长度的对话,输入平均3000个字符,输出约350个字符,要求首次响应时间不超过1秒,后续响应间隔不超过40毫秒。服务B处理更复杂的长对话,输入平均7800个字符,输出约700个字符,要求首次响应时间不超过1秒,但后续响应更快,不超过20毫秒。

实验结果发现了一个有趣的现象:最佳比例并不是固定的,而是呈现钟形分布。当预处理员工太少时(比例过低),生成员工只能等待,造成首次响应超时;当预处理员工太多时(比例过高),会让生成环节过载,导致后续响应变慢。最佳比例范围很广,从1:5到9:1都有可能,完全取决于具体的业务特征和性能要求。这个发现证明了"一刀切"配置的问题,也验证了HeteroScale灵活调配能力的重要性。

接着,他们进行了调度指标对比实验。实验团队选择了一个处理开放域对话的服务作为测试对象,这种服务最接近普通用户的使用场景。他们提取了8小时的真实工作负载数据,这段时间包含了从清晨低谷到下午高峰的完整周期,为算法提供了充分的考验。

实验中,TPS类指标表现出了优异的响应特性。无论是预处理TPS还是生成TPS,都能准确跟踪工作负载的变化,信噪比很高,响应及时。当用户请求增加时,这些指标会立即上升;当请求减少时,指标会相应下降。这种敏感性使得调度系统能够快速做出正确的扩容或缩容决策。

硬件类指标则出现了明显的分化。预处理阶段的GPU利用率和计算单元活跃度能够较好地反映工作负载变化,虽然敏感性不如TPS指标,但仍然可用。然而,生成阶段的硬件指标表现糟糕,即使在工作负载很轻的情况下,GPU利用率和计算单元活跃度依然保持在高位,完全无法反映真实的业务压力。

延迟类指标展现了典型的非线性特征。在负载较轻时,首次响应时间和后续响应时间都保持在较低水平,曲线相对平缓;但当负载接近系统容量极限时,延迟会急剧上升,呈现"悬崖式"增长。这种特性让延迟很难作为日常调度的主要依据,但可以作为紧急情况下的安全阀。

最终的生产环境验证更是令人印象深刻。HeteroScale现在管理着ByteDance数万张GPU,每天处理数万亿个预处理token和数千亿个生成token。在一个代表性的对比测试中,启用HeteroScale的服务相比未启用的服务,GPU平均利用率提高了26.6个百分点,计算单元活跃度提升了9.2个百分点。更重要的是,这些改进都是在不违反任何服务质量要求的前提下实现的。

从具体的服务案例来看,一个开放域对话服务在启用HeteroScale后,整体GPU使用量减少了41.3%,预处理GPU平均利用率从46.8%提升到76.2%,预处理计算单元活跃度从36.6%提升到62.5%。同时,系统的延迟指标变得更加稳定,波动幅度明显减小,偶尔出现的延迟峰值也主要是由于扩容过程中的暂时性P/D比例失衡造成的,系统很快就会自动修复。

五、技术创新的深层意义:重新定义AI服务的资源管理

HeteroScale的成功不仅仅是一个工程技术的胜利,更代表了AI服务资源管理理念的根本性转变。这种转变就像从传统的计划经济向市场经济的转换,从僵化的统一管理向灵活的按需分配发展。

传统的云服务资源管理基本上沿用了传统企业IT的思路,假设所有工作负载都是相似的,可以用统一的标准进行管理。这种方法在处理传统的Web服务或数据库应用时还算有效,因为这些应用的资源需求相对稳定和同质化。但AI服务,特别是大语言模型服务,完全颠覆了这些假设。

AI服务的工作负载具有极强的动态性和异质性。用户的请求可能是简单的问候,也可能是复杂的推理任务;可能需要处理几十个字符,也可能需要处理数万个字符。这种多样性要求资源管理系统必须具备更强的适应性和智能性。HeteroScale正是在这样的背景下应运而生的。

该系统最重要的理念创新是"协调性优于效率性"的设计哲学。在传统系统中,管理者通常追求单个组件的最大利用率,认为每个GPU都应该尽可能忙碌。但HeteroScale认识到,在复杂的协作系统中,整体的协调性比单个部件的忙碌程度更重要。一个稍微"闲置"的预处理GPU如果能保证生成GPU不用等待,那么这种"闲置"实际上是有价值的。这种系统性思维让HeteroScale能够实现更高的整体效率。

另一个重要创新是"指标即策略"的方法论。传统系统往往依赖工程师的经验和直觉来设定调度策略,但在AI服务这种快速发展的领域,经验往往是不够的甚至是误导的。HeteroScale团队通过大规模的数据分析,让数据自己"说话",发现了许多反直觉的规律。比如,生成阶段的GPU使用率指标是误导性的,这个发现可能让很多依赖传统监控方法的工程师感到意外。

系统还体现了"拓扑感知"的重要性。在云计算的早期阶段,大家往往忽视物理网络拓扑对性能的影响,认为云就是一个扁平的资源池。但随着应用复杂性的增加,特别是在需要大量数据传输的AI应用中,网络拓扑的影响变得至关重要。HeteroScale将网络拓扑作为调度决策的一个核心因素,这种做法在云原生社区中还是比较少见的。

从工程实现的角度,HeteroScale还展示了"渐进式优化"的重要性。系统没有试图一次性解决所有问题,而是识别出最关键的瓶颈,优先解决最重要的问题。在P/D分离、异构硬件、网络拓扑三个主要挑战中,系统首先聚焦于找到正确的调度指标,然后逐步完善硬件匹配和网络优化功能。这种方法不仅降低了开发风险,也使得系统更容易在生产环境中部署和调试。

六、面向未来:HeteroScale的发展方向和启示

研究团队在论文中明确提出了HeteroScale的三个主要发展方向,每一个都代表着AI服务管理领域的前沿探索。

第一个方向是探索更加通用和智能的监控指标。当前的系统主要依赖decode TPS这一个核心指标,虽然已经比传统方法有了很大改进,但研究团队认识到,随着AI模型和应用场景的多样化,可能需要更加精细化的指标体系。他们计划深入挖掘各种AI推理引擎(如vLLM、TensorRT-LLM、SGLang等)的内部统计信息,寻找能够跨模型、跨硬件、跨工作负载的通用指标。这种探索就像寻找生物医学中的通用生物标记物一样,一旦找到,就能大大简化不同场景下的系统配置和管理工作。

第二个方向是实现动态P/D比例调整。目前的系统使用固定的预处理与生成阶段比例,这个比例通过压力测试和历史数据确定。但实际应用中,用户行为会发生微妙变化,比如用户提问的复杂程度可能逐渐增加,或者期望的回答长度可能发生变化。这种"工作负载漂移"现象在长期运行的系统中很常见。未来的HeteroScale将能够检测到这种变化,并自动进行小幅度的比例调整,就像一个有经验的餐厅经理能够根据顾客偏好的变化微调厨房人员配置一样。

第三个方向是开发KV缓存感知的调度策略。KV缓存是AI服务中一个非常重要但经常被忽视的组件,它存储着对话的历史上下文信息。目前的系统主要关注计算资源的分配,但随着对话变得越来越长,KV缓存的管理变得越来越重要。未来的系统将能够直接监控缓存命中率、驱逐统计、内存压力等缓存相关指标,并将这些信息纳入调度决策中。这就像一个智能的图书馆管理系统,不仅要管理阅览室的座位分配,还要优化书籍的存储和检索策略。

除了这些技术发展方向,HeteroScale的成功还为整个AI基础设施领域提供了几个重要启示。

首先是"数据驱动决策"的重要性。在AI服务这个快速发展的领域,很多传统的最佳实践可能不再适用。HeteroScale团队通过大规模的生产数据分析发现了许多反直觉的规律,这提醒我们在设计复杂系统时,不能完全依赖经验和直觉,而需要让数据指导决策。

其次是"系统思维"的价值。AI服务不是独立组件的简单组合,而是一个复杂的协作系统。优化单个组件的性能并不一定能提高整体效率,有时甚至可能产生负面效果。HeteroScale的成功在于它始终从系统整体的角度思考问题,追求的是全局最优而不是局部最优。

最后是"渐进式创新"的智慧。面对复杂的挑战,HeteroScale没有试图一次性解决所有问题,而是识别出最关键的瓶颈,逐步改进。这种方法不仅降低了技术风险,也使得系统更容易在实际环境中部署和维护。

说到底,HeteroScale代表的不仅仅是一个技术解决方案,更是一种面向未来AI服务的管理理念。随着AI模型变得越来越复杂,应用场景越来越多样化,这种智能化、自适应的资源管理方法将变得越来越重要。对于那些正在构建或运营大规模AI服务的团队来说,HeteroScale提供了一个很好的参考框架和实践指南。而对于普通用户来说,这项技术的最终价值体现在更快的响应速度、更稳定的服务质量,以及可能更低的使用成本。当我们享受AI服务带来的便利时,背后有像HeteroScale这样的智能系统在默默保障着服务的高效运行。

Q&A

Q1:HeteroScale是什么?它主要解决什么问题?

A:HeteroScale是ByteDance开发的智能GPU调度系统,专门解决大规模AI服务中的资源自动分配问题。它主要解决三个核心问题:不同类型GPU的最优匹配、网络传输瓶颈优化,以及预处理与生成阶段的人员配比平衡。

Q2:为什么传统的GPU使用率指标在AI服务中会产生误导?

A:在AI服务的生成阶段,即使工作量很轻,GPU使用率也会保持很高,因为GPU需要持续维护大量上下文信息在内存中。这种"虚假繁忙"让系统管理者误判资源需求,导致配置失衡。

Q3:HeteroScale在实际生产中取得了什么效果?

A:在ByteDance的生产环境中,HeteroScale管理着数万张GPU,每天处理数万亿个token。系统让GPU平均利用率提高了26.6个百分点,整体GPU使用量减少了41.3%,同时保持了所有服务质量要求。

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其内容真实性、完整性不作任何保证或承诺。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。