Mirendil 为何同时押注 TPU 与 NVIDIA GPU:把预训练、后训练和大规模 RL 放到合适的算力上

2026-08-06 34 预计阅读时间: 1 分钟
来源: cloud.google.com AI 摘要 Original link

Disclaimer: This article is an AI-assisted summary. Read it together with the original source when precision matters. The summary may omit context, version differences, or edge cases and is not official documentation.

预计阅读时间:9 分钟

前沿模型团队越来越少把“选 TPU 还是选 GPU”当作一次性的基础设施决策。Mirendil 与 Google Cloud 的合作体现了另一种路径:在同一套端到端训练体系中同时使用 Google TPU 和 NVIDIA 加速计算平台,并将预训练、后训练及大规模强化学习等负载,匹配给更合适的硬件与集群环境。

Mirendil 已经上线 TPU v5P 集群,NVIDIA 加速计算系统也将陆续投入使用。合作的重点不只是增加芯片数量,而是从计算、存储、网络到控制平面共同设计,并通过 Gemini Enterprise Agent Platform 中的托管训练集群简化 TPU 与 GPU 环境的供给和管理。

训练链路不再只有一个“主集群”

一个模型从预训练走到可用的后训练版本,通常会跨越多种计算形态:大规模数据并行训练、检查点保存与恢复、偏好优化、奖励建模、在线或离线强化学习、批量评估,以及大量小规模实验。

这些任务在资源画像上差异很大:

  • 预训练往往追求稳定、长时间运行的大规模吞吐,数据、网络和检查点系统必须持续跟上计算速度。
  • 后训练包含更多实验分支和频繁迭代,任务规模可能变化很快,对调度弹性和环境复现的要求更高。
  • 大规模强化学习会同时拉起采样、推理、奖励计算和策略更新等环节,集群不只是运行一个训练脚本,而是在维持一条持续反馈的数据生产线。

因此,混合 TPU 与 GPU 的价值不应被理解为“同一任务两边都跑一次”。更实际的目标是按工作负载、软件栈成熟度、供应情况和调度时延来放置任务,并且保留以后调整的空间。

双加速器策略的核心是可迁移的训练接口

同时管理 TPU 和 GPU 时,真正容易失控的不是设备类型,而是训练作业对底层环境的隐式依赖。例如,数据目录、镜像、分布式参数、检查点路径和监控标签如果各自硬编码,迁移一个实验就会变成重写工程。

可以把“实验定义”和“硬件落点”拆开:训练代码只接收标准化配置,调度层通过资源标签决定任务进入 TPU 或 GPU 队列。下面的 Kubernetes Job 是一个可改造的示例,假设集群已经提供了名为 accelerator 的节点标签,并且训练镜像能够根据环境变量选择对应后端。

apiVersion: batch/v1
kind: Job
metadata:
  name: posttrain-gpu-run
  labels:
    workload-stage: post-training
spec:
  backoffLimit: 1
  template:
    metadata:
      labels:
        workload-stage: post-training
    spec:
      restartPolicy: Never
      nodeSelector:
        accelerator: nvidia-gpu
      containers:
        - name: trainer
          image: us-docker.pkg.dev/PROJECT/train/posttrain:latest
          command:
            - python
            - -m
            - trainer.run
          args:
            - --config
            - gs://MODEL_BUCKET/configs/posttrain.yaml
            - --checkpoint-dir
            - gs://MODEL_BUCKET/checkpoints/run-042
          env:
            - name: TRAINING_BACKEND
              value: gpu
            - name: EXPERIMENT_ID
              value: posttrain-042
          resources:
            limits:
              nvidia.com/gpu: "8"

要将同一类作业投递到 TPU 队列,可以保留命令、配置地址和检查点协议,只替换调度约束与后端变量。具体的 TPU 资源声明取决于所使用的 GKE、训练平台和 TPU 集群配置;不要把上例中的 GPU 资源字段直接复制到 TPU 环境。

nodeSelector:
  accelerator: tpu-v5p
# 由平台或队列配置决定 TPU slice、拓扑和资源请求

这类边界清晰的定义有一个直接收益:研究人员提交的是可复现实验,平台团队管理的是容量、拓扑、镜像准入和排队策略,双方不必在每个训练任务里重复协调基础设施细节。

托管训练集群解决的是控制面复杂度

Mirendil 与 Google Cloud 还围绕 Gemini Enterprise Agent Platform 中的托管训练集群展开协作,用于精简 TPU 和 GPU 环境的配置与管理。对需要持续运行训练和评估流水线的团队来说,控制面能力往往和算力本身同样关键。

一个可用的控制面至少需要解决几件事:

  • 为不同阶段提供可预测的资源队列,避免短实验挤占长训练任务。
  • 统一身份、网络、存储访问和镜像来源,减少环境差异导致的失败。
  • 记录数据版本、代码提交、配置、硬件类型与检查点关系,支持结果回溯。
  • 把失败重试、容量变更和任务状态暴露为可观察事件,而不是散落在脚本日志中。

对于强化学习尤其如此。采样端、推理端和训练端的吞吐不匹配时,昂贵的加速器可能在等待数据,或者大量样本在队列中失去时效性。平台层应当能够按阶段监控积压,并据此调整资源配额。

可以这样实践:为训练阶段建立硬件放置规则

在落地之前,不必先建立一张复杂的“TPU 对 GPU 性能对比表”。更有价值的是为每类作业建立可验证的放置假设,然后用统一指标持续修正。

下面是一份可作为团队配置起点的简化清单:

workloads:
  pretraining:
    preferred_accelerator: tpu
    metrics:
      - tokens_per_second
      - checkpoint_write_seconds
      - accelerator_utilization
  post_training:
    preferred_accelerator: gpu
    metrics:
      - steps_per_hour
      - experiment_queue_seconds
      - eval_pass_rate
  reinforcement_learning:
    preferred_accelerator: mixed
    metrics:
      - samples_per_second
      - learner_idle_seconds
      - policy_lag_steps

portability_requirements:
  checkpoint_format: versioned
  dataset_uri_scheme: object-storage
  experiment_metadata: required
  container_image: pinned-by-digest

这不是对硬件能力的普遍结论,而是一套运营假设。团队应当把 tokens_per_second、单位有效训练成本、排队时间、恢复时间和实验成功率一起看。仅用单卡或单芯片吞吐做决策,常常会忽略网络、存储、排队和人工运维带来的总时延。

采用混合算力前,先把研究循环量化

Mirendil 的目标是用新的 AI 系统加速并扩大 AI 研发本身。其背后的关键问题不是“模型一次训练能跑多快”,而是研究循环能否更快地完成设计实验、评估结果和继续迭代。

计划采用混合 TPU/GPU 架构的团队,可以先检查四项基础能力:

  • 训练与评估是否使用版本化配置和可恢复检查点。
  • 数据、镜像和实验元数据是否能被两个环境一致访问。
  • 作业队列是否按预训练、后训练、推理和 RL 阶段隔离并度量等待时间。
  • 是否有足够的端到端指标来判断一次硬件迁移究竟缩短了研究周期,还是只提高了局部吞吐。

当这些基础具备后,TPU 与 GPU 的组合才会从采购或容量选择,变成一套能持续服务研究迭代的计算策略。


相关推荐