{
  "version": 1,
  "title": "GPU 推理 · 有声学习样板",
  "sources": [
    {
      "title": "NVIDIA：LLM 推理优化与 Prefill／Decode",
      "url": "https://developer.nvidia.com/blog/mastering-llm-techniques-inference-optimization/"
    },
    {
      "title": "NVIDIA：Blackwell Ultra 架构",
      "url": "https://developer.nvidia.com/blog/inside-nvidia-blackwell-ultra-the-chip-powering-the-ai-factory-era/"
    },
    {
      "title": "Lenovo：GB300 NVL72 参考规格",
      "url": "https://lenovopress.lenovo.com/lp2357-lenovo-nvidia-gb300-nvl72-rack-scale-ai"
    }
  ],
  "lessons": [
    {
      "key": "gpu",
      "title": "GPU：怎样把问题变成计算",
      "takeaway": "CPU 组织请求，GPU 执行大量并行运算；推理不是搜索一份现成答案。",
      "diagram": [
        "输入 Token",
        "Prefill 处理上下文",
        "Decode 逐步生成"
      ],
      "sections": [
        {
          "title": "这是什么",
          "text": "现在看到的是 B300 图形处理器，也就是 GPU。它不只用于画图，还擅长并行执行大量数值运算。语言模型中的矩阵乘法等工作，就会交给这些计算单元。这里展示的是封装与原理关系，不是晶体管版图。",
          "start": 0,
          "end": 19.379
        },
        {
          "title": "为什么需要它",
          "text": "CPU 擅长控制流程和通用任务，GPU 则让大量计算单元协作处理适合并行的工作。服务软件解析请求、分词并安排任务，GPU 执行模型运算。两者是分工合作，不是 GPU 完全取代 CPU。",
          "start": 19.379,
          "end": 39.656
        },
        {
          "title": "内部怎么工作",
          "text": "语言模型推理通常分成两个阶段。预填充阶段，也叫 Prefill，处理输入的全部上下文，建立后续生成需要的状态。解码阶段，也叫 Decode，则利用已有上下文逐步生成新的词元。词元的英文是 Token，它不一定等于一个汉字。",
          "start": 39.656,
          "end": 59.599
        },
        {
          "title": "与前后如何连接",
          "text": "CPU 侧软件把任务交给 GPU，计算需要的模型参数通常已装入显存。这个 GB300 参考系统中，Grace CPU 与 GPU 通过 NVLink-C2C 连接，不能笼统画成普通显卡插在 PCIe 槽里。生成结果再交给服务软件组织返回。",
          "start": 59.599,
          "end": 83.441
        },
        {
          "title": "什么影响性能",
          "text": "等待第一个输出片段，包含排队、输入处理和网络等时间；后续生成速度又受每轮计算、访存和通信影响。长输入、不同批量与不同模型会改变瓶颈，因此不能只看 GPU 的峰值算力，就判断用户等待多久。",
          "start": 83.441,
          "end": 103.38
        },
        {
          "title": "容易误解什么",
          "text": "模型推理不是每收到一个问题就重新训练，也不是每次从磁盘完整读取模型。模型通常在服务启动时加载，多次请求复用。下一节看高带宽显存：为什么有很强的计算能力，还必须把数据及时送到计算单元。",
          "start": 103.38,
          "end": 122.349
        }
      ],
      "duration": 122.349,
      "audio": "gpu.mp3",
      "sha256": "3c903103a1724e0d782a0e8b65027b349cbbbf1ca372d7dd015da004473d6835"
    },
    {
      "key": "hbm",
      "title": "HBM：算力为什么也会等数据",
      "takeaway": "容量决定能放多少，带宽决定能搬多快；两者不能互相替代。",
      "diagram": [
        "HBM 中的参数／缓存",
        "读取与计算",
        "更新状态再读取"
      ],
      "sections": [
        {
          "title": "这是什么",
          "text": "GPU 计算芯粒旁边的高带宽存储器，简称 HBM，是一种堆叠式内存。它通过很宽的数据接口提供高带宽。它不是硬盘，也不是 CPU 旁的主机内存；这些存储层的位置、速度和职责都不同。",
          "start": 0,
          "end": 18.856
        },
        {
          "title": "为什么需要它",
          "text": "计算单元必须拿到数据才能工作。语言模型的参数、运行状态和中间结果占用显存。如果数据供应赶不上运算速度，再多计算单元也可能等待。可以把带宽理解为搬运通道的宽度，但真实工作是电信号传输，不是模型里可见的小球。",
          "start": 18.856,
          "end": 39.784
        },
        {
          "title": "内部怎么工作",
          "text": "推理时，计算单元读取参数和数据，执行运算，再保存需要保留的结果。芯片内部缓存能减少部分重复访存。注意力机制使用的键值缓存，也叫 KV Cache，保存之前词元的部分计算结果，后续生成可以复用，不必从头重算这些结果。",
          "start": 39.784,
          "end": 61.526
        },
        {
          "title": "与前后如何连接",
          "text": "HBM 与计算芯粒在封装内紧密连接，数据会在存储和计算之间反复交换，而不是只经过一次。KV Cache 是软件管理的数据，不是封装上另一块独立芯片。图中的循环用于解释关系，不代表真实走线或每一次物理传输。",
          "start": 61.526,
          "end": 82.257
        },
        {
          "title": "什么影响性能",
          "text": "容量表示能同时放多少模型参数和运行状态；带宽表示每秒能搬运多少数据。上下文更长、并发更多，键值缓存往往也更大。解码在不少配置下受内存带宽限制，但批量、量化、模型结构和通信都会影响实际瓶颈，不能一概而论。",
          "start": 82.257,
          "end": 104.019
        },
        {
          "title": "容易误解什么",
          "text": "参考规格中，每颗 B300 配有 288GB HBM3e，但这些容量并非全部留给一个用户。模型参数、缓存和运行开销需要共同占用。模型里的外包装数量与内部叠层仍是示意，不当作已核实版图。下一节看这些数据如何参与生成一个个词元。",
          "start": 104.019,
          "end": 127.84
        }
      ],
      "duration": 127.84,
      "audio": "hbm.mp3",
      "sha256": "e23d3c6b337892b4269d83d09ef6e3e375535473f61167a57cafe052c0bd0179"
    },
    {
      "key": "token",
      "title": "Token：回答为什么一个片段一个片段出现",
      "takeaway": "计算、选择词元、更新状态、继续生成；流式显示不等于每次只传一个汉字。",
      "diagram": [
        "已有上下文",
        "计算并选择词元",
        "更新状态／继续或停止"
      ],
      "sections": [
        {
          "title": "这是什么",
          "text": "词元是模型处理文本的基本单位。分词器可能把一个词拆成多个词元，也可能用一个词元表示一段常见字符。中文、英文和符号的拆分方式不一样，所以每秒生成多少词元，不能直接等同于每秒输出多少汉字。",
          "start": 0,
          "end": 18.45
        },
        {
          "title": "为什么逐步生成",
          "text": "在常见的自回归生成方式中，模型根据当前上下文计算下一个词元的候选分数，再按解码策略选出一个结果。选出的词元又成为后续上下文的一部分。它不是提前写好完整答案，再把字一个个播放出来。",
          "start": 18.45,
          "end": 36.986
        },
        {
          "title": "内部怎么工作",
          "text": "每轮会经过模型的多层计算，其中矩阵运算可以利用 Tensor Core 等单元，其他运算由相应执行单元完成。服务根据模型输出选择词元，并维护缓存和状态。遇到停止条件或长度限制就结束。为便于理解，这里展示的是基础流程，不展开推测解码等优化。",
          "start": 36.986,
          "end": 60.156
        },
        {
          "title": "与前后如何连接",
          "text": "已有输入与生成历史影响下一轮计算，键值缓存让注意力计算复用之前的状态。服务软件把生成的词元解码成可显示的文本，通过流式响应送回用户。网络可能把多个片段合并传输，因此屏幕更新节奏不一定与 GPU 的每轮计算一一对应。",
          "start": 60.156,
          "end": 82.094
        },
        {
          "title": "什么影响性能",
          "text": "多 GPU 协作可以贯穿模型计算。柜内的 NVLink 网络与跨服务器的通信网络承担不同范围的交换，不是生成完回答后才依次经过。通信等待、显存带宽、批量调度和模型大小，都会影响后续输出速度；增加 GPU 数量也不保证速度成比例增加。",
          "start": 82.094,
          "end": 105.969
        },
        {
          "title": "容易误解什么",
          "text": "生成流畅不代表内容正确。模型是在计算输出，并不天然保证事实真实。当前页面的回答也是本地预设演示，不调用真实模型。你已经走完计算、存储、生成三个环节，可以重听本章，或返回原导览继续看回答如何离开服务器。",
          "start": 105.969,
          "end": 127.097
        }
      ],
      "duration": 127.097,
      "audio": "token.mp3",
      "sha256": "b083b86da703afc1d4c3a6ec3026e8c6320bdc998680bace7b33f6c395ab0752"
    }
  ],
  "voice": "本机 Tingting 中文合成音色 · 预制试听样板",
  "reviewed_on": "2026-09-26"
}
