什么是算力?

什么是算力?

作者:吴佳浩

撰稿时间:2026-3-10

测试版本:4090 48G魔 改&5090 32G

一份写给 AI 工程师的硬件认知指南


前言

"算力不够" ------这句话你一定听过。

但你真的知道它在说什么吗?

很多人第一反应是:

复制代码
算力 = TFLOPS 越高越强

这个认知不完整,在很多场景下甚至是错的。

本文从工程实践出发,帮你建立一个清晰的算力思维模型。


一、算力不是单一指标

在 AI 系统里,真正决定性能的是一个组合公式

scss 复制代码
有效算力 = min(计算能力, 显存带宽, 显存容量, IO带宽, 软件效率)

就像木桶原理:任意一项成为瓶颈,整体性能就被限制。

flowchart LR A[" 计算单元\nTFLOPS / TOPS"] --> F[" 实际AI性能"] B[" 显存带宽\nGB/s"] --> F C[" 显存容量\nGB"] --> F D[" 互联带宽\nPCIe / NVLink"] --> F E[" 软件框架效率\nvLLM / TensorRT"] --> F style F fill:#2E86AB,color:#fff,stroke:#1a5276 style A fill:#F18F01,color:#fff,stroke:#c47a00 style B fill:#C73E1D,color:#fff,stroke:#9a3018 style C fill:#3B1F2B,color:#fff,stroke:#1a0d14 style D fill:#44BBA4,color:#fff,stroke:#2d7d6e style E fill:#7B2D8B,color:#fff,stroke:#5a1f67

二、算力的历史演化

理解"算力"这个词为什么如此混乱,需要了解它的历史。

timeline title 算力概念的演化历程 早期HPC时代 : 算力 = FLOPS(浮点运算) : 单位:GFLOPS / TFLOPS : 代表:超级计算机排行榜 深度学习兴起 : GPU 进入 AI 领域 : FP32 → FP16 提速 : 训练为主要场景 推理爆发期 : INT8 / INT4 量化 : TOPS 概念出现 : 移动端 NPU 宣传 LLM 大模型时代 : 模型参数量暴增 : 显存成为第一瓶颈 : "算力不够" = "显存不够"

三、三大核心指标详解

3.1 显存容量:能不能跑

显存决定了你能不能把模型加载进来

核心公式:

复制代码
显存需求 ≈ 参数量 × 精度字节数
精度 每参数占用
FP32 4 bytes
FP16 / BF16 2 bytes
INT8 1 byte
INT4 0.5 bytes

常见模型显存需求(FP16):

模型规模 显存需求 典型 GPU
7B ≈ 14 GB RTX 4090 (24GB)
14B ≈ 28 GB RTX 4090 × 2
70B ≈ 140 GB H100 × 2
405B ≈ 810 GB H100 × 10+

⚠️ 很多人说"算力不够跑 70B",真实意思其实是显存不够


3.2 显存带宽:跑多快

显存带宽决定了数据从显存搬运到计算单元的速度

这是 LLM 推理速度的核心决定因素。

LLM 推理速度简化公式:

bash 复制代码
token/s ≈ 显存带宽 / 模型大小

举例(7B 模型,FP16 ≈ 14GB):

bash 复制代码
RTX 4090: 1000 GB/s ÷ 14 GB ≈ 70 token/s
A100:     1555 GB/s ÷ 14 GB ≈ 110 token/s
H100:     3350 GB/s ÷ 14 GB ≈ 240 token/s
bar-chart
    title 主流 GPU 显存带宽对比 (GB/s)
GPU 显存带宽 显存容量
RTX 4090 1,008 GB/s 24 GB(官方版本)
RTX 5090 ~1,800 GB/s 32 GB
A100 SXM 2,000 GB/s 80 GB
H100 SXM 3,350 GB/s 80 GB
H200 4,800 GB/s 141 GB

💡 这就是为什么 4090 推理速度有时不如 A100 :不是 TOPS 不够,而是带宽更窄


3.3 Tensor Core 算力:理论上限

Tensor Core 是专门加速矩阵乘法的硬件单元,决定了计算密集型任务的理论上限

flowchart TD A["Tensor Core 是什么?"] --> B["矩阵乘法加速器"] B --> C["FP16 TFLOPS\n训练/推理计算"] B --> D["INT8 TOPS\n量化推理"] B --> E["FP8 TFLOPS\n新一代推理"] C --> F["训练场景最关键"] D --> G["CV/推理芯片宣传重点"] E --> H["Hopper / Blackwell 架构"] style A fill:#2E86AB,color:#fff style F fill:#F18F01,color:#fff style G fill:#44BBA4,color:#fff style H fill:#C73E1D,color:#fff

主流 GPU Tensor Core 算力对比:

GPU FP16 TFLOPS INT8 TOPS 架构
RTX 3090 35 285 Ampere
RTX 4090 82 660 Ada Lovelace
RTX 5090 ~200+ 1,600+ Blackwell
A100 SXM 312 624 Ampere
H100 SXM 989 1,979 Hopper
H200 SXM 989 1,979 Hopper

四、不同场景下"算力"指什么

mindmap root((算力)) LLM推理 第一门槛:显存容量 能不能加载模型 第二门槛:显存带宽 token/s 速度 第三门槛:TOPS 计算复杂度上限 AI训练 FP16/BF16 TFLOPS 前向传播 反向传播 梯度计算 算量是推理的2-6倍 CV/多模态 INT8 TOPS YOLO 视频分析 帧率/延迟 芯片宣传 TOPS 营销数字 注意精度

场景对照表

场景 "算力"指什么 最关键指标
LLM 推理(能不能跑) 显存容量 GB
LLM 推理(跑多快) 显存带宽 + TOPS GB/s + TFLOPS
AI 模型训练 FP16/BF16 TFLOPS TFLOPS
CV / 视频推理 INT8 TOPS TOPS
芯片宣传材料 通常是 TOPS 需注意精度单位
移动端 / NPU INT8/INT4 TOPS TOPS

五、经典案例:48GB 魔改 4090 vs 32GB 5090

为什么 显存更大 的 GPU,反而比不过显存更小的新卡?

这是一个非常有代表性的反直觉案例。

⚠️ 特别说明:NVIDIA 官方从未发布过 48GB 版本的 RTX 4090。 市面上流通的"48GB 4090"均为第三方厂商将显存芯片换焊为 48GB 的魔改(非官方)版本,不在 NVIDIA 官方产品线内,存在兼容性与稳定性风险,购买需谨慎。

flowchart LR subgraph GPU4090["RTX 4090 魔改版 48GB\n⚠️ 非 NVIDIA 官方产品"] A1["显存容量\n48 GB ✅"] A2["显存带宽\n1,008 GB/s ❌"] A3["FP16算力\n82 TFLOPS ❌"] A4["架构\nAda Lovelace 旧"] end subgraph GPU5090["RTX 5090 32GB\n✅ NVIDIA 官方产品"] B1["显存容量\n32 GB"] B2["显存带宽\n~1,800 GB/s ✅"] B3["FP16算力\n~200 TFLOPS ✅"] B4["架构\nBlackwell 新 ✅"] end GPU4090 -->|"适合"| C["装得下更大的模型\n(量变)"] GPU5090 -->|"适合"| D["跑得更快更省能\n(质变)"] style GPU4090 fill:#fff3cd,stroke:#f0ad4e style GPU5090 fill:#d4edda,stroke:#28a745 style C fill:#fff3cd,stroke:#f0ad4e style D fill:#d4edda,stroke:#28a745

核心结论:

yaml 复制代码
魔改 48GB 4090 只换焊了显存芯片,扩大了容量
带宽、CUDA核心、Tensor Core 全部没有变化

32GB 5090 是整体架构升级
带宽提升 ~70%,AI算力提升 ~2-3倍

本质:显存容量 ≠ AI 性能


六、LLM 推理的内存墙问题

这是 99% AI 工程师容易忽略的核心知识。

flowchart TD A["LLM 推理过程"] --> B{"是 Compute-bound\n还是 Memory-bound?"} B -->|"矩阵很大\nbatch_size 大"| C["Compute-bound\n受 TFLOPS 限制"] B -->|"矩阵很小\nbatch_size = 1"| D["Memory-bound\n受显存带宽限制"] D --> E["大多数 LLM 在线推理场景"] C --> F["离线批处理/训练场景"] E --> G["核心瓶颈:\n每次 token 生成\n需要从显存读取整个模型权重"] G --> H["token/s ≈ 带宽 / 模型大小\n与 TFLOPS 关系不大!"] style D fill:#C73E1D,color:#fff style H fill:#2E86AB,color:#fff style E fill:#F18F01,color:#fff

为什么同样 TFLOPS 的 GPU,速度能差 3 倍?

实际决定速度的是算术强度(Arithmetic Intensity)

复制代码
算术强度 = 计算量(FLOPS)/ 数据访问量(Bytes)
  • 高算术强度 → Compute-bound → TFLOPS 重要
  • 低算术强度 → Memory-bound → 带宽重要

LLM 单 token 推理的算术强度极低,因此:

复制代码
带宽 >>> TFLOPS

七、训练 vs 推理的算力需求对比

flowchart LR subgraph Train[" AI 训练"] T1["Forward Pass\n前向传播"] T2["Backward Pass\n反向传播"] T3["Optimizer Step\n参数更新"] T4["Gradient Checkpointing\n梯度检查点"] T1 --> T2 --> T3 --> T4 end subgraph Infer[" AI 推理"] I1["Forward Pass only\n仅前向传播"] I2["KV Cache 复用\n键值缓存"] I1 --> I2 end Train -->|"算量约 4-6x"| X["相比推理"] Infer -->|"算量基准"| X style Train fill:#C73E1D,color:#fff style Infer fill:#2E86AB,color:#fff
维度 训练 推理
关键指标 FP16/BF16 TFLOPS 带宽 + TOPS
显存需求 模型 + 梯度 + 优化器 ≈ 6× 参数 模型 + KV Cache
计算量 参数量 × 4-6 参数量 × 2
典型硬件 H100 集群 A10G / L4 / 4090
精度要求 BF16 必须 INT8 / FP8 可用

八、精度与 TOPS 的关系

芯片宣传中最常见的"坑":

flowchart LR A["同一块 GPU"] --> B["FP32 TFLOPS\n最保守"] A --> C["FP16 TFLOPS\n约 2× FP32"] A --> D["INT8 TOPS\n约 4× FP32"] A --> E["INT4 TOPS\n约 8× FP32"] B --> F["精度最高\n训练常用"] D --> G["推理主流\n量化后使用"] E --> H["激进量化\n精度有损失"] style A fill:#2E86AB,color:#fff style G fill:#28a745,color:#fff style H fill:#ffc107,color:#000

RTX 4090 实际数字:

精度 算力
FP32 82.6 TFLOPS
FP16 (Tensor Core) 82.6 TFLOPS
BF16 82.6 TFLOPS
INT8 660 TOPS
INT4 1,321 TOPS

⚠️ 宣传材料里的 "TOPS" 通常是 INT8 甚至 INT4 数字,与 FP16 不能直接对比!


九、新架构带来的质变

从 Ada Lovelace (4090) 到 Blackwell (5090) 的变化,远不止参数提升:

timeline title NVIDIA GPU 架构演进与 AI 能力 Ampere (2020) : RTX 3090 / A100 : BF16 训练支持 : A100 成为训练标杆 Ada Lovelace (2022) : RTX 4090 : FP8 部分支持 : 推理性能大幅提升 Hopper (2022) : H100 : FP8 全面支持 : Transformer Engine : NVLink 4.0 Blackwell (2024) : RTX 5090 / B100 / GB200 : FP4 支持 : 2nd Gen Transformer Engine : 带宽大幅跃升 : MoE 模型专项优化

十、工程师速查卡

选型决策树

flowchart TD A["我需要什么 GPU?"] --> B{"任务类型"} B -->|"训练大模型"| C["优先:FP16 TFLOPS\n推荐:H100 / A100 集群"] B -->|"LLM 推理部署"| D{"模型大小"} B -->|"CV / 视频分析"| E["优先:INT8 TOPS\n推荐:L4 / A10G"] D -->|"7B - 13B"| F["24GB 显卡足够\n优先带宽:4090 / A10G"] D -->|"70B 量化"| G["48GB+ 显存\n4090×2 或 A100"] D -->|"70B+ 全精度"| H["80GB+ 显存\nH100 / A100 80G"] style C fill:#C73E1D,color:#fff style E fill:#44BBA4,color:#fff style F fill:#2E86AB,color:#fff style G fill:#F18F01,color:#fff style H fill:#7B2D8B,color:#fff

一句话总结

bash 复制代码
能不能跑  →  显存容量(GB)
跑多快    →  显存带宽(GB/s)
理论上限  →  TOPS / TFLOPS

十一、常见误区汇总

误区 正确认知
"算力越高跑越快" LLM 推理主要受带宽限制,不是 TOPS
"显存大 = 性能强" 显存容量只决定能不能跑,不决定速度
"TOPS 越高越好" TOPS 和 TFLOPS 精度不同,不能直接比较
"4090 比 A100 强" 游戏强,但 LLM 推理 A100 带宽更高更快
"魔改 48GB 4090 = 高端 AI 卡" 仅第三方换焊显存芯片,只增加了容量,带宽和算力没变;且非 NVIDIA 官方产品,稳定性存疑
"训练和推理需求一样" 训练需要 FP16 TFLOPS,推理更需要带宽

结语

算力不是一个数字,而是一个系统

在工程实践中,记住这个框架:

flowchart LR A["模型大小"] -->|"决定"| B["显存需求"] B -->|"决定"| C["能不能跑"] D["显存带宽"] -->|"决定"| E["token/s 速度"] F["Tensor Core"] -->|"决定"| G["计算密集任务上限"] H["软件优化\nvLLM / TensorRT"] -->|"决定"| I["实际利用率"] style C fill:#C73E1D,color:#fff style E fill:#F18F01,color:#fff style G fill:#2E86AB,color:#fff style I fill:#44BBA4,color:#fff

下次再听到"算力不够",先问三个问题:

  1. 是显存不够?(装不下)
  2. 还是带宽不够?(跑太慢)
  3. 还是 TOPS 不够?(计算跟不上)

只有搞清楚瓶颈在哪,才能做出正确的硬件选型决策。


本文基于工程实践经验整理,数据仅供参考,实际性能受软件栈、精度、batch size 等因素影响。

相关推荐
charlex2 小时前
【陈同学】走进 AI Agent:从“对话框”到“自主智能体”
人工智能·agent
爱可生开源社区2 小时前
🧪 你的大模型实验室开张啦!亲手测出最懂你 SQL 的 AI
数据库·sql·llm
百度Geek说3 小时前
打造高效易用的Agent Skill
人工智能
豆芽包3 小时前
实战部署OpenClaw
人工智能
大厂码农老A3 小时前
3天实现"睡后收入"—— Cursor & Skills打造"全自动出海"Agent
人工智能·aigc·ai编程
攻城羊Weslie4 小时前
🐑 从手动到自动:Yi-Shepherd 如何驯服 150+ 个 AI 模型
人工智能·程序员·开源
肥晨4 小时前
OpenClaw 卸载不完全?手把手教你“连根拔起”
人工智能
数据智能老司机4 小时前
Kubernetes 上的生成式 AI——模型定制化
kubernetes·llm
前端小趴蔡4 小时前
web2api 开源了(稳定的claude2api方案)
人工智能