硬件底座:一张卡不能同时干两件事,但可以分时
智算一体机的硬件底座通常由多张加速卡组成,每张卡具备完整的训练和推理能力。硬件层面不存在“训练卡”和“推理卡”的区分,同一张卡既可以跑训练任务,也可以跑推理任务,区别在于跑什么、怎么跑。
但一张卡在同一时刻只能服务于一种任务。训练任务独占整卡算力时,推理请求不能共享这张卡的计算资源。训推统一调度的硬件基础是加速卡的虚拟化切分能力——一张物理卡可以被切分成多个逻辑单元,每个逻辑单元拥有独立的显存和算力配额。训练任务占用其中一部分逻辑单元,推理任务占用另一部分,两者在物理上隔离、在逻辑上共存。
不同代际和不同架构的加速卡,虚拟化切分的能力差异很大。有的卡支持硬件级切分,隔离性好、性能损失小;有的卡只能靠软件模拟切分,隔离性弱、性能损失大。智算一体机的调度系统需要感知每张卡的切分能力和当前切分状态,在分配任务时做出匹配的决策。
调度抽象:把训练和推理统一成可调度的负载单元
训推统一调度的第一步,是在调度器层面抹平训练和推理的差异。调度器不关心一个任务是训练还是推理,它只关心这个任务需要多少算力、多少显存、多长时间、什么优先级。
息壤平台的调度抽象层把训练任务和推理任务都建模成“负载单元”,每个负载单元包含资源需求、时间预算、优先级、亲和性约束等信息。调度器根据全局资源视图,为每个负载单元寻找最优的放置位置。训练负载单元的特点是资源需求大、时间长、对拓扑亲和性敏感;推理负载单元的特点是资源需求小、时间短、对延迟敏感。调度器在决策时会综合考虑这些特征,但底层的调度逻辑是统一的。
这种抽象的好处是调度策略可以共享。训练任务的优先级调度策略、推理任务的弹性伸缩策略、两者的资源抢占和回退策略,都可以在同一个调度框架下实现,不需要为训练和推理分别维护两套调度系统。
训推混部策略:白天推理、晚上训练
训推混部的核心矛盾是资源竞争。训练任务希望独占资源以保证训练效率,推理任务希望随时有资源可用以保证服务延迟。如果两者同时争抢同一张卡,要么训练被拖慢,要么推理延迟升高。
常见的混部策略是时间片轮转。白天用户活跃、推理请求量大,大部分算力分配给推理服务,训练任务使用剩余的碎片算力或暂停等待。深夜用户活跃度低、推理请求量小,算力释放出来给训练任务使用,训练任务可以独占整卡算力全力推进。
这种策略的实现依赖调度器的时钟感知和任务优先级管理。调度器知道当前是几点几分,知道不同时间段推理流量的历史规律,可以提前预判算力需求的变化,在流量切换之前完成资源的重新分配。
时间片轮转的变体是负载感知混部。调度器实时监控推理服务的负载和训练任务的进度,当推理负载升高时,主动压缩训练任务的资源配额或暂停训练任务;当推理负载降低时,恢复训练任务的资源配额。这种策略比固定时间片更灵活,但对监控系统的实时性和调度器的响应速度要求更高。
资源切分与隔离:训练和推理互不干扰的前提
训推混部的前提是两者在资源使用上互不干扰。训练任务的大量显存读写不能影响推理任务的显存访问,推理任务的突发请求不能抢占训练任务的算力配额。
资源切分是实现隔离的第一道屏障。物理卡被切分成多个逻辑单元后,每个逻辑单元拥有独立的显存空间和算力配额。训练任务使用的逻辑单元和推理任务使用的逻辑单元在硬件层面就是隔离的,一方无法访问另一方的显存,也无法占用另一方的算力。
但切分不是万能的。切分粒度太粗,资源利用率低;切分粒度太细,隔离开销大。调度器需要在切分粒度和资源利用率之间找到平衡点。对于训练任务,倾向于分配较大的逻辑单元以减少通信开销;对于推理任务,倾向于分配较小的逻辑单元以提高资源利用率。
资源隔离的第二道屏障是服务质量保障。即使逻辑单元在硬件层面隔离,共享的PCIe带宽、内存带宽、网络带宽仍然可能存在争抢。调度器需要为训练和推理任务分别设置带宽配额和优先级,确保推理任务在高负载下仍然能满足延迟要求。
动态重配:任务结束了,资源立刻释放给另一个
训推统一调度的另一个关键能力是动态重配。训练任务结束时,它占用的资源应该立刻释放出来,分配给等待中的推理任务或下一个训练任务。推理任务流量下降时,它占用的资源应该立刻释放出来,分配给等待中的训练任务。
动态重配的速度决定了资源复用的效率。如果重配需要几分钟,那么训练和推理之间的切换间隙会有大量资源闲置。如果重配只需要几秒钟,资源可以近乎实时地在两种负载之间流转。
动态重配的实现依赖加速卡的虚拟化切分能力和调度器的编排能力。切分能力的动态调整速度越快,重配的粒度越细,资源复用的效率越高。调度器的编排能力决定了重配的时机和策略——是立即重配还是等当前任务自然结束,是优先满足推理延迟还是优先满足训练吞吐。
运维观测:训推混部的健康仪表盘
训推混部最大的运维挑战是可观测性。训练任务和推理任务跑在同一套硬件上,出问题时很难判断是训练影响了推理,还是推理影响了训练,还是硬件本身出了问题。
智算一体机的运维观测需要覆盖几个维度。资源维度,每张卡的算力利用率、显存占用、切分状态、温度功耗,区分训练和推理各自的资源消耗。性能维度,训练任务的吞吐和收敛曲线,推理任务的延迟和吞吐,两者的变化趋势是否相互影响。事件维度,训推切换的记录、资源重配的记录、任务抢占的记录,每一步调度决策都有迹可循。
这些观测数据不仅是排障的依据,也是调度策略优化的输入。如果观测数据显示推理任务在白天频繁触发资源抢占导致训练任务反复暂停,说明时间片轮转的策略需要调整,或者推理任务的资源配额需要重新评估。
结语
智算一体机的训推统一调度与资源复用,本质是在同一套硬件上让两种性格截然不同的工作负载和谐共存。训练要的是全力冲刺时的稳定和效率,推理要的是随叫随到时的敏捷和可靠。调度系统通过硬件虚拟化切分实现资源隔离,通过时间片轮转和负载感知实现混部,通过动态重配实现资源的高效流转。开发工程师在使用智算一体机时,不需要手动规划训练和推理的资源分配,调度器根据任务特征和实时负载自动完成这一切。在算力成本居高不下、训练和推理需求同时增长的背景下,这种训推统一调度的能力不是锦上添花的优化,而是让每一张加速卡的价值最大化的基础设施级支撑。