AI应用架构师必读:超算调度器的未来发展趋势

一、引言:当AI大模型遇到“调度瓶颈”

钩子:你经历过“大模型训练的漫长等待”吗?

上周和一位负责千亿参数大模型训练的架构师聊天,他吐槽了一个扎心的场景:

“我们用Slurm调度100张A100 GPU训练模型,提交任务后等了3小时才分配到资源——因为调度器把GPU优先给了一个跑分子动力学的批处理任务。等终于开始训练,又因为数据存储在10公里外的分布式集群,每 epoch 要花20分钟搬运数据,比计算本身还久。更崩溃的是,训练到第50 epoch 时,其中一张GPU突然故障,调度器直接把整个任务Kill了,我们得重新从头开始跑……”

这不是个例。当AI应用从“小模型实验”走向“大模型工业化”,超算调度器的“能力边界”正在成为AI效率的最大瓶颈——传统调度器设计的核心是“公平分配CPU资源”,而AI任务需要的是“感知异构资源、理解任务特性、协调数据与计算”的“智能调度大脑”。

定义问题:为什么超算调度器对AI架构师至关重要?

超算调度器的本质是“资源与任务的匹配引擎”:它决定了哪些AI任务能拿到多少GPU/TPU资源、这些资源分布在哪些节点、数据如何与计算协同。对AI应用架构师而言,调度器的能力直接影响三件事:

  1. 效率:训练一个大模型需要1天还是1周?推理服务的延迟是100ms还是1s?
  2. 成本:是否能避免GPU资源 idle(比如训练完成后资源未释放)?是否能混合调度异构资源(比如用TPU做推理、GPU做训练)降低成本?
  3. 可靠性:当资源故障时,是否能自动恢复任务?是否能隔离多租户的资源争抢?

而传统超算调度器(如Slurm、PBS)的设计目标是科学计算(批处理、长任务、CPU为主),面对AI任务的“三特性”完全水土不服:

  • 异构资源需求:AI需要GPU/TPU/NPU等加速卡,甚至对内存带宽(如HBM)、存储IO(如NVMe)有强依赖;
  • 任务类型多样性:训练(数据并行/模型并行)、推理(低延迟高并发)、微调(小批量高频率)的调度策略完全不同;
  • 动态性与数据依赖性:AI任务需要弹性扩缩资源(比如训练到一半加GPU),且数据搬运的时间往往超过计算时间(“数据移动是AI的敌人”)。

文章目标:AI架构师要提前布局的“调度器未来”

本文将从AI应用的实际需求出发,拆解超算调度器的6大未来趋势,并给出架构师的应对指南——读完你会明白:

  • 未来的调度器如何“看懂”AI任务?
  • 如何用调度器优化大模型训练的效率?
  • 云原生与超算调度器的融合会带来什么?
  • 作为架构师,你需要在应用设计中预埋哪些“调度接口”?

二、基础知识铺垫:超算调度器的“前世今生”

在聊未来之前,先快速回顾超算调度器的核心逻辑——这能帮你理解“传统调度器为什么不适应AI”。

1. 超算调度器的核心职责

不管是传统还是未来的调度器,本质都是解决三个问题:

  • 资源管理:统计集群中的资源(CPU、GPU、内存、存储)的使用情况;
  • 任务调度:根据任务的资源需求,分配合适的资源(比如给训练任务分配8张GPU);
  • 负载均衡:避免某些节点过载,某些节点空闲。

2. 传统调度器的“科学计算基因”

传统超算(如天河、神威)的调度器(Slurm、PBS、LSF)是为科学计算任务设计的,这些任务的特点是:

  • 同构资源:主要用CPU,资源需求稳定(比如一个任务需要100个CPU核,运行24小时);
  • 批处理优先:任务提交后排队,按优先级顺序执行(比如“先到先得”或“Fair Share”);
  • 无状态:任务之间没有依赖,失败了重新跑即可;
  • 数据不敏感:科学计算的数据量相对小(比如分子动力学的模拟数据),不需要考虑数据 locality。

3. AI任务的“调度挑战清单”

当调度器面对AI任务时,上述假设全部失效:

维度 科学计算 AI任务
资源类型 CPU为主 GPU/TPU/NPU+高带宽内存+高速存储
资源需求 固定(100CPU核) 动态(训练时需要8GPU,推理时需要2GPU)
任务类型 批处理(长任务) 混合(训练+推理+微调)
数据依赖性 弱(数据量小) 强(训练数据TB级,搬运时间>计算时间)
故障恢复要求 低(重新跑即可) 高(训练到50epoch失败,重新跑要花几天)

比如,传统Slurm调度器分配GPU时,只会“数数量”(比如给任务8张GPU),但不会考虑GPU的拓扑结构(比如8张GPU是否在同一台服务器的同一个NVLink组里——如果跨服务器,模型并行的通信延迟会增加10倍);也不会考虑数据位置(比如任务需要的训练数据在节点A的NVMe里,但调度器把任务分配到了节点B,导致每 epoch 花10分钟拷贝数据)。

三、核心内容:超算调度器的6大未来趋势

AI应用的爆发正在倒逼超算调度器“重构”——未来的调度器不再是“资源分配的工具”,而是AI任务的“理解者”和“协同者”。以下是6个最关键的趋势,每个趋势都对应AI架构师的实际痛点。

趋势1:从“资源黑盒”到“AI任务感知”——调度器要“懂”你的模型

传统调度器把任务当“黑盒”:你说要8张GPU,它就给你8张,不管你是用来做数据并行(每个GPU跑相同模型,处理不同数据)还是模型并行(每个GPU跑模型的一部分,需要高速通信)。而未来的调度器会主动感知AI任务的特性,并调整调度策略。

技术路径:任务特性的“显式描述”与“智能识别”

要让调度器“懂”AI任务,需要两步:

  1. 任务特性的显式标注:AI架构师在提交任务时,用标签(Label)或配置文件告诉调度器:

    • 任务类型:训练/推理/微调;
    • 并行策略:数据并行(Data Parallelism)/模型并行(Model Parallelism)/管道并行(Pipeline Parallelism);
    • 资源亲和性:需要8张GPU在同一台服务器(NVLink连接);
    • QoS需求:推理任务需要低延迟(<100ms),训练任务可以容忍排队;
    • 数据位置:训练数据存储在节点A的NVMe里。

    例如,用KubeRay(K8s上的Ray调度器)提交一个GPT-3训练任务的配置:

    apiVersion: ray.io/v1alpha1
    kind: RayJob
    metadata:
      name: gpt3-training
    spec:
      entrypoint: python train.py
      rayClusterSpec:
        rayVersion: '2.6.0'
        workerGroupSpecs:
        - replicas: 4
          groupName: gpu-workers
          template:
            spec:
              containers:
              - name: ray-worker
                image: ray-project/ray-ml:2.6.0-py39-cu118
                resources:
                  limits:
                    nvidia.com/gpu: 2  # 每个worker 2张GPU
                env:
                - name: TASK_TYPE
                  value: "model_parallel"  # 显式标注并行策略
                - name: DATA_PATH
                  value: "nvme://node-a/data/train"  # 显式标注数据位置
    
  2. 任务特性的智能识别:对于没有显式标注的任务,调度器会通过历史数据轻量级分析自动识别特性。比如:

    • 监测任务的GPU利用率:如果GPU利用率持续>90%,说明是训练任务;如果利用率波动大(比如高峰时100%,低峰时10%),说明是推理任务;
    • 分析任务的通信模式:如果任务之间有大量的NVLink通信,说明是模型并行;如果主要是数据传输,说明是数据并行。
对AI架构师的影响:学会“和调度器对话”

未来,AI架构师的工作不再是“写好模型代码就完事”,而是要把任务特性“翻译”成调度器能理解的语言。比如:

  • 在设计分布式训练框架时,要支持输出并行策略的元数据(比如PyTorch的torch.distributed可以输出模型并行的层次);
  • 在提交推理服务时,要标注QoS等级(比如“延迟敏感型”或“ throughput 优先型”);
  • 在存储训练数据时,要记录数据的位置信息(比如用KV存储映射“数据ID→节点位置”)。

趋势2:从“同构资源管理”到“异构资源协同”——调度器要做“资源指挥家”

AI任务的资源需求越来越“复杂”:训练大模型需要GPU+高带宽内存(HBM)+高速存储(NVMe);推理多模态模型需要TPU(处理图像)+ CPU(处理文本)+ FPGA(处理视频);微调小模型需要低功耗NPU+云存储。传统调度器只能管理单一类型的资源,而未来的调度器要协同多种异构资源,实现“1+1>2”的效果。

技术路径:异构资源的“统一抽象”与“动态绑定”

要实现异构资源协同,调度器需要解决两个问题:

  1. 资源的统一抽象:把GPU、TPU、NPU、内存、存储等资源抽象成“资源池”,用统一的接口描述资源的特性(比如GPU的计算能力、内存带宽、支持的CUDA版本)。例如,K8s的Device Plugin机制可以把GPU抽象成“nvidia.com/gpu”资源,TPU抽象成“google.com/tpu”资源,调度器可以统一管理这些资源。

  2. 资源的动态绑定:根据AI任务的需求,动态组合不同的资源。比如:

    • 对于多模态推理任务:调度器先分配1张TPU处理图像,再分配2个CPU核处理文本,最后分配1个FPGA处理视频,三者通过高速网络协同工作;
    • 对于大模型训练任务:调度器分配8张GPU(同一NVLink组)+ 2TB NVMe存储(存储训练数据)+ 100Gbps网络(支持模型并行的通信)。
案例:Google TPU Pod的调度器

Google的TPU Pod是专门为大模型训练设计的超算集群,其调度器支持TPU+GPU+CPU的混合调度

  • 训练BERT模型时,调度器分配16个TPU核心(处理模型并行)+ 32个CPU核(处理数据加载)+ 1TB NVMe存储(缓存训练数据);
  • 推理BERT模型时,调度器分配4个TPU核心(处理推理计算)+ 8个CPU核(处理请求排队)+ 256GB内存(缓存高频请求)。
对AI架构师的影响:设计“资源弹性”的AI应用

未来的AI应用要支持资源的动态适配——比如:

  • 训练框架要支持“多后端”(比如PyTorch可以同时使用GPU和TPU);
  • 推理服务要支持“资源降级”(比如当TPU资源不足时,自动切换到GPU处理);
  • 存储层要支持“多级缓存”(比如把高频数据缓存到计算节点的NVMe,低频数据存到分布式存储)。

趋势3:从“静态分配”到“动态弹性”——调度器要做“实时优化大师”

传统调度器的资源分配是“静态”的:任务提交时分配资源,任务结束后释放资源。而AI任务的资源需求是“动态”的:

  • 训练任务:刚开始需要8张GPU,训练到中期(比如模型收敛后)只需要4张GPU;
  • 推理任务:早高峰需要100个实例,晚高峰只需要10个实例;
  • 微调任务:小批量数据时需要2张GPU,大批量数据时需要8张GPU。

未来的调度器要支持“动态弹性”——根据任务的运行状态,实时调整资源分配,避免资源浪费。

技术路径:基于“状态感知”的弹性调度

动态弹性的核心是感知任务的运行状态,并触发资源调整。具体来说,调度器需要:

  1. 监控任务的运行指标:比如GPU利用率、内存使用率、训练 loss 下降速度、推理延迟;
  2. 定义弹性策略:比如当GPU利用率持续<50%时,减少2张GPU;当推理延迟持续>200ms时,增加10个实例;
  3. 执行弹性操作:通过“热扩容”或“热缩容”调整资源,不中断任务运行(比如PyTorch的torch.distributed支持动态添加或删除GPU节点)。
案例:Ray的“弹性调度”

Ray是一个面向AI的分布式计算框架,其调度器支持动态弹性

  • 当训练任务的GPU利用率>90%时,调度器自动添加2个GPU节点;
  • 当训练任务的loss下降速度变慢(比如连续3个epoch loss下降<0.01)时,调度器自动减少4个GPU节点;
  • 当推理服务的QPS(每秒请求数)从1000涨到5000时,调度器自动扩容10个推理实例。
对AI架构师的影响:设计“可伸缩”的AI流水线

未来的AI应用要支持**“弹性感知”的流水线**——比如:

  • 训练流水线:在代码中预埋“资源调整的钩子”(比如当loss下降到一定阈值时,调用调度器的API减少GPU数量);
  • 推理流水线:用“自动缩放组”(Auto Scaling Group)管理实例,让调度器根据QPS自动调整实例数;
  • 微调流水线:用“动态批处理”(Dynamic Batching)调整批量大小,从而适配调度器分配的资源。

趋势4:从“计算优先”到“数据-计算协同”——调度器要做“数据搬运工的指挥官”

AI领域有句名言:“数据移动是AI的敌人”。对于大模型训练来说,数据搬运的时间往往超过计算时间——比如训练一个千亿参数模型,每 epoch 需要读取1TB的训练数据,如果数据存储在远程集群,搬运时间可能需要30分钟,而计算时间只需要10分钟。

传统调度器的设计是“计算优先”:先分配计算资源(GPU),再让任务去取数据。未来的调度器要**“数据优先”**——先找到数据所在的节点,再把计算任务分配到该节点,或者把数据缓存到计算节点,减少数据搬运。

技术路径:数据 locality 的“主动优化”

数据-计算协同的核心是优化数据 locality(数据与计算的位置 proximity),调度器需要:

  1. 感知数据的位置:通过“数据目录服务”(比如HDFS的NameNode、Ceph的MDS)获取数据的存储位置(比如“文件A存放在节点X的NVMe里”);
  2. 优先调度到数据所在节点:当提交一个需要文件A的训练任务时,调度器优先把任务分配到节点X,避免数据搬运;
  3. 动态缓存数据:如果数据不在计算节点,调度器会自动把数据缓存到计算节点的NVMe里(比如用Alluxio做分布式缓存),下次任务再用这个数据时,就不需要搬运了。
案例:Facebook的“Zippy”调度器

Facebook的Zippy调度器是专门为大模型训练设计的,其核心特性是数据-计算协同

  • Zippy与Facebook的分布式存储系统(HDFS)集成,能实时获取数据的位置;
  • 当提交训练任务时,Zippy先统计需要的训练数据分布在哪些节点,然后把任务分配到这些节点的GPU上;
  • 如果某节点的GPU被占用,Zippy会把数据缓存到空闲节点的NVMe里,再分配任务到该节点。

根据Facebook的测试,Zippy能把训练任务的数据搬运时间减少70%,整体训练效率提升40%

对AI架构师的影响:设计“数据感知”的AI应用

未来的AI应用要**“主动靠近数据”**——比如:

  • 在训练代码中,优先读取本地节点的缓存数据(比如用torch.utils.data.DataLoaderpin_memory参数,把数据缓存到GPU内存);
  • 在存储设计中,使用“分布式缓存系统”(比如Alluxio、Redis),让调度器能快速获取数据的位置;
  • 在数据预处理中,把数据分割成“节点级”的块(比如每个节点存储100GB的训练数据),方便调度器分配任务。

趋势5:从“单集群”到“云原生融合”——调度器要做“跨集群的协调者”

随着AI应用的规模化,越来越多的企业开始使用混合云/多集群架构:比如把训练任务放在私有超算集群(成本低),把推理任务放在公有云集群(弹性高);或者把高频推理任务放在边缘集群(低延迟),把低频训练任务放在核心集群(高算力)。

传统调度器只能管理单集群的资源,而未来的调度器要支持云原生的多集群调度——跨私有云、公有云、边缘集群分配资源,实现“全球资源的统一调度”。

技术路径:云原生的“多集群调度框架”

云原生技术(比如Kubernetes、Istio)为多集群调度提供了基础,未来的调度器会基于这些技术实现:

  1. 多集群资源的统一视图:通过“集群联邦”(Cluster Federation)把多个集群的资源抽象成一个“超级资源池”,调度器能看到所有集群的GPU、CPU、存储资源;
  2. 跨集群的任务调度:根据任务的需求,选择最合适的集群。比如:
    • 训练任务:选择私有云集群(成本0.5元/GPU小时);
    • 推理任务:选择公有云集群(弹性高,能应对突发流量);
    • 边缘推理任务:选择边缘集群(延迟<50ms);
  3. 跨集群的网络协同:通过“服务网格”(Service Mesh)实现多集群之间的低延迟通信(比如Istio的多集群服务发现)。
案例:阿里云的“ACK 多集群调度”

阿里云的ACK(Alibaba Cloud Kubernetes)支持多集群调度,其调度器能:

  • 统一管理阿里云上的多个K8s集群(比如北京、上海、广州的集群);
  • 当提交一个推理任务时,调度器会根据用户的位置(比如用户在上海),把任务分配到上海的集群(延迟低);
  • 当上海集群的GPU资源不足时,调度器会自动把任务分配到杭州的集群(距离上海近,延迟<100ms)。
对AI架构师的影响:设计“云原生兼容”的AI应用

未来的AI应用要**“云原生友好”**——比如:

  • 使用容器化技术(Docker、Podman)打包AI应用,让应用能在任何K8s集群中运行;
  • 使用“无服务器”框架(比如AWS Lambda、阿里云FC)处理轻量级推理任务,利用云的弹性;
  • 使用“服务网格”(Istio、Linkerd)管理多集群之间的通信,确保低延迟和高可靠性。

趋势6:从“规则驱动”到“AI驱动”——调度器要做“自我进化的大脑”

传统调度器的策略是“规则驱动”:比如“先到先得”“Fair Share”“资源利用率优先”。这些规则在简单场景下有效,但面对AI任务的“复杂性”(比如混合训练+推理+微调的任务队列),规则会变得“僵化”——比如“资源利用率优先”的规则会把GPU优先给训练任务,导致推理任务的延迟飙升。

未来的调度器要**“AI驱动”**——用机器学习(尤其是强化学习)模型优化调度策略,实现“自我进化”。

技术路径:强化学习的“调度策略优化”

强化学习(RL)是一种“从环境中学习最优策略”的机器学习方法,非常适合调度问题——调度器是“智能体”(Agent),集群的状态(资源使用情况、任务队列)是“环境”(Environment),调度决策(分配哪个资源给哪个任务)是“动作”(Action),调度的效果(任务完成时间、资源利用率、延迟)是“奖励”(Reward)。

具体来说,AI驱动的调度器会:

  1. 收集历史数据:记录过去的调度决策和对应的效果(比如“把GPU给训练任务,导致推理延迟增加200ms,资源利用率提高10%”);
  2. 训练RL模型:用历史数据训练RL模型,学习“在什么状态下做什么决策能获得最大奖励”;
  3. 实时决策:用训练好的RL模型,根据当前集群的状态,做出最优的调度决策(比如“当前推理任务的延迟已经150ms,优先把GPU给推理任务”)。
案例:Microsoft的“RL Scheduler”

Microsoft在2022年发布了一个基于强化学习的超算调度器,用于管理Azure上的AI任务集群。根据Microsoft的测试:

  • 相比传统的“Fair Share”调度器,RL调度器能把任务完成时间减少30%
  • 相比“资源利用率优先”调度器,RL调度器能把推理延迟降低40%
  • 随着历史数据的积累,RL模型的性能会持续提升(“越用越聪明”)。
对AI架构师的影响:接受“调度器的智能”

未来的AI架构师要**“信任调度器的智能”**——比如:

  • 不再手动设置调度规则(比如“把GPU优先给训练任务”),而是让调度器根据RL模型自动决策;
  • 为调度器提供“奖励函数”的输入(比如“推理延迟的权重是0.6,资源利用率的权重是0.4”),让调度器的决策符合业务需求;
  • 定期反馈调度效果(比如“这个调度决策导致推理延迟过高”),帮助RL模型优化。

四、进阶探讨:AI架构师的“调度器应对指南”

了解了趋势,接下来要解决的问题是:作为AI应用架构师,你需要做什么? 以下是5条核心建议,结合了实际的工程经验。

建议1:在应用层“暴露”任务特性,让调度器“看懂”你的任务

调度器的智能依赖于“任务特性的输入”——如果你不告诉调度器你的任务是“模型并行”还是“数据并行”,它就无法优化资源分配。因此:

  • 用标准的元数据格式:比如用K8s的Annotation或Label标注任务特性(如ai.task.type: trainingai.parallelism: model_parallel);
  • 在框架层预埋接口:比如在PyTorch或TensorFlow的训练代码中,输出任务的并行策略、数据位置等元数据(比如用torch.distributed.get_world_size()获取并行度);
  • 避免“黑盒任务”:不要把任务包装成一个不可见的二进制文件,要让调度器能分析任务的特性(比如用容器的“CMD”或“ENTRYPOINT”暴露任务的入口参数)。

建议2:设计“资源弹性”的AI应用,适配调度器的动态调整

未来的调度器会频繁调整资源分配,你的应用要能“扛住”这些调整:

  • 使用支持动态扩缩的框架:比如Ray、Horovod、PyTorch Distributed,这些框架支持在任务运行中添加或删除资源;
  • 处理“资源缩容”的边界情况:比如当调度器减少GPU数量时,你的训练代码要能自动调整并行策略(比如从8GPU的模型并行切换到4GPU的模型并行);
  • 使用“ checkpoint 机制”:定期保存训练的中间结果(比如每10 epoch 保存一次 checkpoint),避免资源调整导致任务失败后重新跑。

建议3:优化数据 locality,让调度器“少搬数据”

数据搬运是AI效率的最大敌人,你需要在应用层配合调度器优化数据 locality:

  • 使用“节点级缓存”:把训练数据缓存到计算节点的NVMe或内存里(比如用torch.utils.data.DataLoaderpersistent_workers参数,保持数据加载的进程不销毁);
  • 分割数据到“调度单元”:把训练数据分割成与“调度单元”(比如节点)大小匹配的块(比如每个节点存储100GB的数据),方便调度器分配任务;
  • 使用“数据感知的存储系统”:比如Alluxio、Ceph,这些系统能让调度器快速获取数据的位置。

建议4:拥抱云原生,让调度器“跨集群协调”

云原生是未来超算调度器的基础,你的应用要能在云原生环境中运行:

  • 容器化你的应用:用Docker打包AI应用,确保应用在任何K8s集群中都能运行(比如用Dockerfile指定基础镜像、依赖库、启动命令);
  • 使用云原生的资源抽象:比如用K8s的ResourceQuota管理多租户的资源,用LimitRange限制每个任务的资源使用;
  • 使用服务网格管理通信:比如用Istio处理多集群之间的服务发现和负载均衡,确保低延迟和高可靠性。

建议5:监控调度效果,反馈给调度器的AI模型

AI驱动的调度器需要“反馈”才能进化,你需要:

  • 收集调度的指标:比如任务的完成时间、资源利用率、推理延迟、数据搬运时间,这些指标是RL模型的“奖励函数”输入;
  • 定义业务导向的奖励函数:比如对于推理服务,奖励函数可以是“延迟<100ms的请求比例×0.7 + 资源利用率×0.3”;对于训练任务,奖励函数可以是“任务完成时间×0.6 + 资源利用率×0.4”;
  • 定期迭代调度策略:根据业务需求的变化,调整奖励函数的权重(比如当业务从“训练效率”转向“推理延迟”时,增加延迟的权重)。

五、结论:超算调度器的未来,是“AI的未来”

核心要点回顾

超算调度器的未来,是**“AI任务感知”“异构资源协同”“动态弹性”“数据-计算协同”“云原生融合”“AI驱动”**的组合——它不再是“资源分配的工具”,而是AI应用的“智能协同者”。对AI架构师而言,未来的工作将从“模型设计”延伸到“调度协同”:你需要让应用“懂”调度器,也让调度器“懂”应用。

展望未来:调度器的“终极形态”

未来的超算调度器会是什么样?我认为会是**“自治式调度器”**——它能:

  • 自动识别AI任务的特性(不需要人工标注);
  • 自动优化数据 locality(不需要人工缓存数据);
  • 自动调整资源分配(不需要人工设置弹性策略);
  • 自动适应业务需求的变化(比如从“训练优先”转向“推理优先”);
  • 自动进化(通过RL模型不断优化调度策略)。

行动号召:从“尝试”到“落地”

现在,你可以开始尝试这些趋势:

  1. 用KubeRay调度你的Ray任务:体验“AI任务感知”的调度;
  2. 用Alluxio优化数据 locality:减少训练任务的数据搬运时间;
  3. 用ACK多集群调度管理你的混合云资源:体验跨集群的弹性;
  4. 参与调度器的社区:比如KubeRay、Volcano、Slurm的AI插件社区,了解最新的技术进展。

最后,我想对你说:超算调度器的未来,不是“技术的升级”,而是“AI应用与调度器的协同进化”——作为AI架构师,你是这个进化过程的“推动者”。期待在评论区看到你对调度器未来的看法,也期待你分享自己的实践经验!

参考资源

  • KubeRay官方文档:https://docs.ray.io/en/latest/cluster/kubernetes.html
  • Alluxio官方文档:https://docs.alluxio.io/os/user/stable/
  • Microsoft RL Scheduler论文:https://arxiv.org/abs/2203.05163
  • Facebook Zippy论文:https://research.facebook.com/publications/zippy-a-scheduler-for-large-scale-deep-learning/
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐