L3 · 专题文章

GPU

算力硬件并行计算AI 训练AI 推理

本页只讲 4 条最关键判断,不写百科

4核心点
先记住显存带宽与容量决定你能跑什么,核心数决定你跑多快

选型先看显存是否装得下模型与批次,再看带宽与算力是否满足吞吐目标。

LIVE
CORE GPU
01 WHAT

是什么

GPU 是面向大规模并行计算的处理器,擅长矩阵与张量运算。

02 WHY

为什么

AI 训练与高吞吐推理需要海量并行算力,CPU 串行架构无法满足。

03 HOW

怎么做

通过 CUDA 或 ROCm 等并行编程框架提交计算任务,由驱动调度到 GPU 核心执行。

04 WHEN

什么时候

模型训练、批量推理或图形渲染时使用;CPU 能胜任的轻量任务或强依赖单线程延迟的场景不用。

FOCUS

先记住这些

只留最重要的判断,细节见下方实践
01 显存容量与带宽

装不下或喂不饱,算力再高也白搭

显存容量决定模型与批次能否加载,带宽决定数据供给速度;OOM 或 GPU 利用率低常因显存瓶颈。

02 并行架构与核心

矩阵吞吐依赖数千核心与高带宽互联

GPU 通过 SM/CU 并行执行张量运算,核心数与互联带宽共同决定训练与推理吞吐。

03 驱动与框架兼容

版本不匹配直接导致 OOM 或算子缺失

CUDA/ROCm、驱动与深度学习框架版本必须对齐,否则出现算子回退 CPU 或运行时崩溃。

04 精度与功耗控制

混合精度提速,功耗墙限制峰值性能

FP16/BF16 可显著提升吞吐并降低显存占用,但需硬件支持;功耗墙会动态降频影响稳定性。

PROBLEM / POSITION / INTERFACE

先弄清它为什么存在,以及谁在使用

不从历史开始,从真实工作关系开始。
  1. 01 解决的问题

    模型训练慢、推理延迟高或显存溢出时。

    CPU 算力瓶颈导致迭代周期长、成本高,或无法加载大模型。

    成功标准
    任务在合理时间内完成,显存与算力利用率稳定在目标区间。
  2. 02 AI 生态位

    AI 系统的底层算力引擎,承接框架与模型的计算图。

    上游
    依赖并行编程框架、驱动与系统总线。
    下游
    为训练框架、推理服务与图形应用提供算力。
  3. 03 人的生态位

    工程师负责选型、部署、监控与调优。

    适合使用
    任务可高度并行化、数据吞吐大或需低延迟批量推理。
    不必使用
    强依赖单线程延迟、任务不可并行或 CPU 已满足 SLA。
  4. 04 独特价值

    高带宽显存与数千核心并行,矩阵运算吞吐远超 CPU。

    显存碎片、驱动兼容、精度损失与多卡通信调优。

    复杂度判断
    复杂度不是功能数量,而是控制与验证成本。

INTERFACE FLOW

谁在操作,信息怎样流动

  1. WHO OPERATES

    HUMAN负责选型、环境配置、监控指标与性能调优。

    SYSTEM驱动与框架负责将计算图编译并调度到 GPU 执行。

  2. INPUT

    模型权重、训练数据批次或推理请求张量。

  3. CONTROL

    并行框架版本、显存分配策略、批大小、精度模式与功耗墙。

  4. OUTPUT

    更新后的权重或推理结果张量,伴随显存与算力使用指标。

CODE / PYTHON最小 Python 调用
import torch

# 检查 GPU 可用性并打印设备信息
if torch.cuda.is_available():
    device = torch.device("cuda")
    print(f"GPU: {torch.cuda.get_device_name(0)}")
    print(f"显存: {torch.cuda.get_device_properties(0).total_mem / 1e9:.1f} GB")
    # 创建张量并移至 GPU
    x = torch.randn(1000, 1000, device=device)
    y = torch.matmul(x, x)
    print(f"计算完成,结果形状: {y.shape}")
else:
    print("未检测到可用 GPU")

最短闭环:检测 GPU → 打印显存 → 执行矩阵乘法。真实环境需安装对应 CUDA 版本与 PyTorch。

JSON / RESPONSE典型返回(示意)
{
  "gpu_name": "NVIDIA A100-SXM4-40GB",
  "total_memory_gb": 40.0,
  "compute_capability": 8.0,
  "matrix_op": {
    "input_shape": [
      1000,
      1000
    ],
    "output_shape": [
      1000,
      1000
    ],
    "device": "cuda:0",
    "status": "success"
  }
}

PRACTICE

GPU 使用排错清单

驱动、CUDA/ROCm 与框架版本是否对齐
显存是否足够加载模型与批次,是否出现 OOM
GPU 利用率是否低于 50%,检查数据加载瓶颈
是否启用混合精度且硬件支持 FP16/BF16
多卡通信是否使用 NVLink 或 InfiniBand,避免 PCIe 瓶颈

FAQ

常见问题

选型、用法与失败,不复述定义。
01GPU 和 CPU 在 AI 任务中的本质区别是什么?

GPU 擅长大规模并行矩阵运算,CPU 擅长串行控制与低延迟任务。

避免用错硬件导致性能瓶颈或成本浪费。
02最小可用方式是什么?

安装匹配驱动与框架,用 torch.cuda.is_available() 检测并执行一次矩阵乘法。

快速验证环境是否就绪,避免盲目部署。
03什么时候不需要 GPU?

任务不可并行、数据量小或 CPU 已满足延迟与吞吐要求时。

控制系统成本与运维复杂度。
04显存溢出(OOM)怎么排查?

减小批次大小、启用梯度累积、检查模型并行策略或升级显存更大的 GPU。

OOM 是训练与推理最常见失败信号。
05如何判断 GPU 是否被充分利用?

监控 GPU 利用率与显存带宽,低于 50% 通常存在数据加载或调度瓶颈。

利用率低意味着算力浪费,需优化数据管道或并行策略。

NEXT

下一步

CUDA