从云原生走向 AI 原生:一套面向未来的架构方法论 → 阅读《AI 原生基础设施》

从免费开始:Colab 的能力边界与付费云

草稿

学 GPU 的第一课不是付费,而是知道免费的边界在哪里、什么时候才值得花钱。

上一章你在 Colab 的免费 T4 上完成了体检。本章回答三个问题:免费能走到哪里(Colab 的能力边界)、不花钱能不能学 Kubernetes(假 GPU 实验场)、什么时候才需要付费云(以及付费后的止损纪律)。对大多数读者,前两步能覆盖学习的很长一段路;付费云不是入门门票,而是进阶工具。

Colab:一间免费的 GPU 实验室

先看清这间实验室的规格与租约:

维度免费档Colab Pro(付费参考)
典型 GPUTesla T4(16GB 显存)更容易拿到 L4 / A100
环境驱动、CUDA、PyTorch 预装同左,会话更长
连续会话通常数小时,空闲十几分钟可能断开通常 12–24 小时
是否保证分配不保证(取决于负载)基本稳定
成本月费制
表 1: Colab 免费档的关键事实

T4 不是最快的卡,但它是仍在生产环境大量跑推理的数据中心卡,覆盖了 CUDA、显存、Tensor Core、NVML、MPS 等几乎所有单卡知识点。系统化地把它用成实验室,见GPU 实验室的十个免费实验。

Colab 的能力边界

免费不等于万能,边界要提前认清:

  • 能学:CUDA 调用、显存行为、利用率与性能基线、NVML 监控、MPS 共享,以及一切“单卡上的软件实验”。
  • 不能学:Docker(Colab 会话里没有可用的容器守护进程)、Kubernetes(没有集群控制面)、多卡与多机(免费档只有单卡)、长时间任务(会话即弃,断开即清空)。

这条边界正好切在本书的结构上:上手篇接下来的两章(GPU 容器、单机 Kubernetes)需要一块可以自由安装软件的 GPU。你有三个选择:本地有卡最好;没有卡,可以先把这两章当“可读的地图”再择机动手;或者按下节的办法,用假 GPU 零成本先把 Kubernetes 侧的概念练起来。

零成本学 Kubernetes:假 GPU 实验场

学 GPU 调度一定要真卡吗?不一定。GPU 实验室的 L0 关卡用 fake GPU(伪造的设备插件与资源)在普通笔记本上复现 Kubernetes 的资源上报、调度与分配证据链:nvidia.com/gpu 怎么出现在节点上、Pod 怎么排队拿到它、调度器留下了哪些证据。物理层当然是假的,但控制面的行为与真实集群完全一致,这正是本书数据平面与控制面两部分要教的内核。零成本路径由此闭环:单卡直觉用 Colab,调度治理用假 GPU。

什么时候付费:选卡、计费与止损

当你的需求越过免费边界(要装 Docker、要集群、要更大显存、要长会话),就该租云上的 GPU 了。付费之前先过三关。

第一关,按用途选卡。显存是硬约束(见显存管理),选卡第一步是估算显存需求,而不是比较 TFLOPS:

用途显存底线(估算)典型卡计费直觉(按需,仅供量级参考)
学习、跑通流程8–16 GiBT4 / L4$0.5–1 /小时
7B 模型推理(bf16 权重约 14 GiB + KV Cache)16–24 GiBA10 / L4 24G$1 /小时左右
7B 模型 LoRA 微调24–48 GiBA10 24G 起步,A100 40G 从容$1–4 /小时
7B 全量微调(权重 + 梯度 + 优化器状态)80 GiB 或多卡A100 80G / 多卡$8 /小时以上
大规模预训练数百 GiB,必须多机多卡H100/H800 集群$30 /卡/小时量级
表 2: 常见用途与机型选择

各大云的入门级实例(AWS g4dn/g6、GCP g2、Azure NCasT4_v3、中国云厂商的 T4/A10 系)都提供自带驱动的“GPU 优化镜像”,开箱即得上一章基线卡的全部字段。两条经验:推理看显存与带宽,训练看显存与互连(见互连与集合通信);能用小卡验证的,不要用大卡陪跑,成本治理的系统方法见容量经济

第二关,选计费模式。按需(无折扣、无风险)、竞价/抢占(通常省 50%–90%,但约两分钟通知后直接回收,训练必须周期性 checkpoint,其调度代价见PyTorch 训练)、包年包月(锁定资金,适合已验证负载)。

第三关,止损三件套,缺一不可:

  1. 预算告警:各云的预算提醒,阈值设在“意外但可承受”的金额。
  2. 标签治理:实验资源统一打标签(如 project=gpu-infra-lab),事故后能一键盘点与清理。
  3. 关机纪律:当次会话内关机;长期不用就销毁(terminate),不是停止(stop)。
停机 ≠ 免费
停止的实例不再收计算费,但磁盘、快照、(部分云的)公网 IP 仍按小时计费。一个忘了的 200GiB 数据盘,一个月能在账单上安静地留下十几美元。GPU 实例真正的“关机”是销毁并确认无残留资源。

动手实验:在免费 T4 上建立性能基线

实验目标

在 Colab 的免费 T4 上实测单精度算力,把上一章的“环境基线卡”补上最后一栏:实测 TFLOPS。这个数字是后续一切“调度是否引入了性能损失”的对照原点,而它的获取成本为零。

前置条件与成本预估

  • 上一章的 Colab 环境(T4 GPU 运行时)。成本为零,约十分钟。

操作步骤

import torch, time

x = torch.randn(8192, 8192, device="cuda")
torch.cuda.synchronize(); t = time.time()
for _ in range(10):
    y = x @ x
torch.cuda.synchronize()
dt = (time.time() - t) / 10
print(f"achieved TFLOPS: {2 * 8192**3 / dt / 1e12:.1f}")

验证清单

  • 输出为正值且多次运行波动不大(波动大说明有邻居干扰或功耗限制,本身也是有价值的观察)
  • T4 的单精度峰值约 8 TFLOPS,实测达到其 50%–80% 属正常
  • 把实测 TFLOPS 记入环境基线卡,注明“T4 @ Colab”
  • 把这个脚本保存下来:换到任何新环境(租用的云实例、本地卡、MIG 切分)先跑它,立刻知道性能是否异常

原理速览

大矩阵乘法是算力屋顶线右端的负载(见Roofline 模型),它的实测值近似代表这块卡的可用峰值算力。后续章节验证共享与调度机制时,用同一脚本对比“独占”与“共享”下的数字,干扰与损失就不再是感觉,而是可计算的比值。

延伸练习(可选,约 $1):竞价实例全流程

需要练习付费云的读者,用一台竞价实例走完“查现货价 → 开机 → 体检 → terminate → 确认零残留”。以 AWS 为例:aws ec2 describe-spot-price-history 查价;选自带驱动的 Deep Learning AMI;run-instances--instance-market-options '{"MarketType":"spot","SpotOptions":{"InstanceInterruptionBehavior":"terminate"}}project=gpu-infra-lab 标签;用后 terminate-instances,再按标签确认无残留卷。完整命令以各云文档为准,重点是养成“terminate 之后必须验证资源清零”的肌肉记忆。

总结

免费路径比多数人以为的长得多:Colab 的免费 T4 覆盖单卡直觉与性能基线,假 GPU 实验场覆盖 Kubernetes 的调度证据链,两者加起来零成本。越过边界(Docker、集群、多卡、长会话)再付费,付费时按显存选卡、按风险选计费、用三件套止损。下一章用 Docker 运行 GPU 工作负载进入需要“可自由安装软件的 GPU”的领域:本地机器或按上一章纪律租用的实例都可以,先读后练也完全可行。

创建于 2026/09/14 更新于 2026/09/18 2516 字 阅读约 6 分钟