搜索 HIHUO

从一个你感兴趣的问题开始。

标题 · 章节 · 主题标签Tab 选择 Esc 关闭
THE NOTEBOOK

文章与实验.

沿着一个具体问题,深入到代码、原理与系统的边界。

文章归档45 篇文章
09

深入理解调度器设计:编程领域最难的挑战之一

深入理解调度器设计:编程领域最难的挑战之一 一、调度器到底有多难? 1.1 一个让人清醒的事实 从纯编码难度来看——是的,调度器(Scheduler)是编程里最难的一类东西之一。 而且不是"有点难",是维度级别的难度差异。 让我直接给你一个结论,这个结论能让你一句话就向别人解释清楚: 在工程实践中,最难的不是 CRUD,不是业务,不是 UI,而是——调...

↗
10

AI 大模型行业全景:从入门到看懂热词

AI 大模型行业全景:从入门到看懂热词 这篇文章是写给想了解 AI 行业的人看的——不管你是投资人、产品经理、运营、销售,还是单纯对 AI 感兴趣的普通人。 看完这篇,你应该能: 理解大模型是什么、怎么工作的 搞清楚 RAG、Agent、MCP 这些热词是什么意思 知道各种公司在做什么 能听懂 AI 从业者在聊什么 不需要任何技术背景,我会用大白话和比...

↗
11

AI Infra 到底是什么

AI Infra 到底是什么 最近招聘市场上 AI Infra 这个词出现得越来越多。点开 JD 一看,要求写着:熟悉 Kubernetes、有分布式系统经验、了解 GPU 调度…… 这不就是后端那套东西吗?但又多了些没见过的名词:NCCL、vLLM、Gang Scheduling…… 这个系列就是来讲清楚这些东西的。目标是看完之后,能看懂 AI In...

↗
12

nvidia-smi 输出详解

nvidia-smi 输出详解 做 AI Infra,第一个要学会的命令就是 nvidia-smi。 这个命令是查看 GPU 状态的,相当于 GPU 的 top。机器上 GPU 用得怎么样、谁在用、还剩多少显存,都靠它来看。 这篇文章会把 nvidia-smi 的输出逐行解释清楚,看完之后你应该能: 看懂每个字段的含义 区分 GPU 利用率和显存利用率...

↗
13

转型 AI Infra,我需要学什么

转型 AI Infra,我需要学什么 上一篇聊了 AI Infra 是什么,以及为什么后端工程师适合这个方向。 很多人看完后问:道理我都懂,那具体要学什么? 今天就来聊聊这个。 先泼一盆冷水 在列清单之前,我想先说一个重要的事: 你不需要学完所有东西才能入行。 很多人的误区是:我要把 CUDA 学会、把 PyTorch 摸透、把各种框架都研究一遍,然后...

↗
14

GPU 的核心指标:显存、算力、带宽

GPU 的核心指标:显存、算力、带宽 买 GPU、选 GPU、优化 GPU,都绑不开三个指标:显存、算力、带宽。 很多人只关注显存大小和算力高低,但实际上这三个指标是相互制约的。搞清楚它们的关系,才能理解为什么有些优化有效、有些没用。 这篇讲清楚这三个指标分别是什么,怎么看,以及它们之间的关系。 显存(Memory) 是什么 显存是 GPU 的内存,全...

↗
15

H100、A100、4090:主流 GPU 怎么选

H100、A100、4090:主流 GPU 怎么选 做 AI Infra,绑不开选 GPU 这件事。 市面上 GPU 型号一堆:H100、A100、H20、L40S、4090……价格从几万到几百万都有。到底该怎么选? 这篇把主流 GPU 的核心参数、适用场景、性价比都讲清楚。看完你就知道自己的场景该用什么卡了。 先看一张表 价格是大概范围,实际会有波动...

↗
16

NVLink 和 PCIe:GPU 之间怎么通信

NVLink 和 PCIe:GPU 之间怎么通信 单张 GPU 显存有限,跑大模型经常要用多卡。多卡就涉及一个问题:卡和卡之间怎么传数据? 这篇讲清楚 GPU 互联的两种主要方式:PCIe 和 NVLink。搞懂它们的区别,才能理解为什么有些多卡方案效果好、有些效果差。 为什么需要 GPU 互联 先说为什么要关心这个。 场景一:模型太大,一张卡放不下 ...

↗
17

InfiniBand:跨机器的高速网络

InfiniBand:跨机器的高速网络 上一篇讲了机器内部 GPU 之间怎么通信(NVLink 和 PCIe)。但大模型训练动不动就要几十上百张卡,一台机器最多 8 张,肯定要跨机器。 跨机器通信用什么?大部分人第一反应是以太网。但以太网的带宽和延迟,跑分布式训练完全不够用。 这篇讲 AI 集群里真正在用的高速网络:InfiniBand。 以太网为什么...

↗
18

训练数据长什么样

训练数据长什么样 大模型训练,三要素:算力、数据、算法。 算力讲过了,这篇开始讲数据。 很多人对训练数据的印象停留在「一堆文本」。实际上,不同阶段的训练数据格式完全不同,处理方式也不一样。 这篇讲清楚:预训练、SFT、RLHF 各阶段的数据分别长什么样。 预训练数据 是什么 预训练(Pre-training)是大模型训练的第一阶段。这个阶段的目标是让模...

↗
19

数据标注:模型的粮食怎么来的

数据标注:模型的粮食怎么来的 上一篇讲了训练数据的格式。这篇讲数据从哪来——特别是高质量的 SFT 和 RLHF 数据。 答案是:人工标注。 大模型时代,数据标注已经变成一个巨大的产业。这篇讲清楚标注是怎么做的、有什么坑、成本多少。 标注的类型 预训练数据标注 预训练阶段其实不太需要人工标注,主要是数据清洗和过滤。 但也有一些人工介入的地方: 制定过滤...

↗
20

知名数据集和数据公司

知名数据集和数据公司 做大模型,要么自己标数据,要么用开源数据集,要么买。 这篇汇总一下业界常用的数据集和主要的数据公司,方便你找数据时有个参考。 预训练数据集 Common Crawl 地址:https://commoncrawl.org/ 互联网爬取的网页数据,是大部分大模型预训练的主要数据来源。 规模:PB 级 内容:各种网页 质量:参差不齐,需...

↗
21

为什么要分布式训练

为什么要分布式训练 单卡训练大模型,要么放不下,要么太慢。所以必须分布式。 这篇讲清楚:为什么单卡不够、分布式能解决什么问题、有什么代价。 单卡的极限 显存不够 一个 7B 参数的模型,用 FP16 精度: 模型参数:7B × 2 字节 = 14GB 看起来 24GB 的 4090 也能放下? 但训练时还要存这些东西: 梯度:和参数一样大,14GB 优...

↗
22

数据并行、模型并行、流水线并行

数据并行、模型并行、流水线并行 分布式训练的三种主要方式。各有适用场景,大模型训练通常是混着用。 这篇把三种并行讲清楚,包括原理、优缺点、什么时候用。 数据并行(Data Parallelism) 原理 最简单的并行方式:每张卡放一份完整的模型,各自处理不同的数据。 梯度同步 关键步骤是 AllReduce:把所有卡的梯度汇总求平均。 AllReduc...

↗
23

NCCL:GPU 之间怎么同步数据

NCCL:GPU 之间怎么同步数据 前面讲了分布式训练要同步梯度、传输激活值。具体怎么传? 在 NVIDIA GPU 上,用的是 NCCL。 NCCL 是什么 NCCL(NVIDIA Collective Communications Library)是 NVIDIA 开发的 GPU 集合通信库。 「集合通信」是指多个节点之间的数据交换操作,比如: 把...

↗
24

训练框架对比:DDP vs DeepSpeed vs Megatron

训练框架对比:DDP vs DeepSpeed vs Megatron 分布式训练不用从零写。现成的框架很多,但各有特点。 这篇对比最常用的几个框架,帮你选对工具。 框架概览 PyTorch DDP 是什么 Distributed Data Parallel,PyTorch 官方的分布式数据并行。 原理 每张卡放完整模型,各自处理不同数据,AllRed...

↗
25

推理和训练有什么不一样

推理和训练有什么不一样 前面讲了训练。但大模型跑起来后,更多时间是在做推理——响应用户请求,生成回答。 推理和训练差别很大,优化方向完全不同。这篇讲清楚两者的区别。 核心区别 训练 目标:更新模型参数,让模型变「聪明」 方向:前向 + 反向传播 数据:大批量(batch size 几百几千) 耗时:几天到几个月 状态:有状态(要存梯度、优化器状态) 推...

↗
26

KV Cache:为什么显存越用越多

KV Cache:为什么显存越用越多 推理时,模型参数大小是固定的。但跑着跑着,显存占用越来越高。 罪魁祸首是 KV Cache。 这篇讲清楚 KV Cache 是什么、为什么占这么多显存、怎么优化。 先回顾 Attention Transformer 的核心是 Attention 机制: 对于输入序列的每个位置: Q(Query):「我想找什么」 K...

↗
27

vLLM 原理:PagedAttention 和 Continuous Batching

vLLM 原理:PagedAttention 和 Continuous Batching vLLM 是目前最流行的大模型推理框架,速度快、吞吐高。 核心技术两个:PagedAttention 和 Continuous Batching。这篇讲清楚它们的原理。 vLLM 是什么 vLLM 是加州大学伯克利分校开源的大模型推理引擎。 主打:高吞吐、低显存浪...

↗
28

推理框架对比:vLLM vs TensorRT-LLM vs SGLang

推理框架对比:vLLM vs TensorRT-LLM vs SGLang 推理框架选择很多:vLLM、TensorRT-LLM、SGLang、Text Generation Inference... 各有特点,怎么选?这篇对比主流框架,帮你做决策。 框架概览 vLLM 特点 PagedAttention:显存利用率高 Continuous Batch...

↗
29

模型评测是怎么回事

模型评测是怎么回事 训练完模型,怎么知道好不好?靠评测。 评测是大模型领域非常重要但又很复杂的事。这篇讲清楚评测的基本概念和方法。 为什么需要评测 对比模型 「我们的模型比 GPT-4 强」——怎么证明?靠评测数据。 指导训练 训练过程中要看评测指标,判断是否过拟合、是否学到了该学的能力。 用户选型 用户选模型,要看各项评测得分,选最适合自己场景的。 ...

↗
30

常见 Benchmark:MMLU、HumanEval、GSM8K

常见 Benchmark:MMLU、HumanEval、GSM8K 做大模型评测,绑不开几个常见的 Benchmark。 这篇介绍最常用的评测集,包括它们测什么、怎么测、怎么解读。 综合能力 MMLU 全称:Massive Multitask Language Understanding 测什么:综合知识和理解能力,覆盖 57 个学科。 规模:约 14...

↗
31

Leaderboard 和评测平台

Leaderboard 和评测平台 评测集有了,在哪看结果?哪个模型更强? 这篇介绍主要的模型排行榜和评测平台。 主要 Leaderboard Open LLM Leaderboard 地址:https://huggingface.co/spaces/HuggingFaceH4/openllmleaderboard 维护者:Hugging Face...

↗
32

K8s 怎么管理 GPU:Device Plugin 原理

K8s 怎么管理 GPU:Device Plugin 原理 在 K8s 上跑 AI 任务,第一个问题是:K8s 怎么知道机器上有 GPU? 答案是 Device Plugin。 问题背景 K8s 原生只认 CPU 和内存: GPU 是「扩展资源」,K8s 不认识。直接写 nvidia.com/gpu: 1 是不行的。 需要一个机制告诉 K8s:这台机器...

↗
33

Volcano:AI 场景的批处理调度器

Volcano:AI 场景的批处理调度器 K8s 原生调度器是为微服务设计的,对 AI 任务支持不好。 Volcano 是华为开源的批处理调度器,专门解决 AI/大数据场景的调度问题。 K8s 原生调度的问题 问题一:没有 Gang Scheduling 分布式训练需要多个 Pod 同时启动: 这叫「部分调度」问题。正确的做法是:要么 8 个都能调度,...

↗
34

GPU 切分:MIG、MPS、vGPU

GPU 切分:MIG、MPS、vGPU 一张 GPU 很贵,不是每个任务都需要整张卡。 能不能把一张 GPU 切分给多个任务用?可以。主要有三种方式:MIG、MPS、vGPU。 这篇讲清楚它们的原理和适用场景。 为什么需要 GPU 切分 问题一:资源浪费 问题二:资源争用 解决思路 把一张 GPU 切成多份,每份独立使用: 空间隔离:显存独立 时间隔离...

↗
35

GPU 调度的常见问题

GPU 调度的常见问题 在 K8s 上跑 GPU 任务,总会遇到各种调度问题。 这篇汇总常见问题和排查方法。 问题一:GPU 资源不显示 现象 排查步骤 1. 检查 Device Plugin 没有运行?安装 NVIDIA Device Plugin: 2. 检查 Device Plugin 日志 常见错误: 原因:节点上没装 NVIDIA 驱动或 C...

↗
36

AI 平台的监控告警

AI 平台的监控告警 GPU 贵,出问题更贵。监控告警是 AI 平台的基本功。 这篇讲清楚 AI 平台要监控什么、怎么监控、怎么告警。 监控什么 GPU 指标 训练指标 推理指标 集群指标 监控工具 DCGM(Data Center GPU Manager) NVIDIA 官方的 GPU 管理工具。 安装: DCGM Exporter: 把 DCGM ...

↗
37

GPU 利用率优化

GPU 利用率优化 GPU 很贵,利用率上不去就是在烧钱。 这篇讲怎么诊断和优化 GPU 利用率。 利用率低的表现 这种情况下,GPU 大部分时间在等,实际计算很少。 利用率低的原因 1. 数据加载慢 CPU 加载数据跟不上 GPU 计算。 诊断: 如果 Data 时间和 Compute 时间差不多甚至更长,说明数据加载是瓶颈。 优化: 2. Batc...

↗
38

AI Infra 的成本怎么算

AI Infra 的成本怎么算 大模型烧钱是共识,但具体烧多少?怎么算? 这篇讲清楚 AI Infra 的成本构成和计算方法。 成本构成 硬件成本 8 卡 H100 服务器总成本: 运营成本 单台 8 卡服务器月运营成本: 云服务成本 按需付费(参考价,实际有波动): 云比自建贵 3-5 倍,但灵活、不用前期投入。 训练成本估算 公式 计算量估算 大模...

↗
39

MLOps:模型的 CI/CD

MLOps:模型的 CI/CD 代码有 DevOps,模型有 MLOps。 这篇讲模型的开发、训练、部署怎么做工程化。 MLOps 是什么 MLOps = Machine Learning + Operations 把软件工程的最佳实践应用到机器学习: 版本控制 自动化测试 持续集成/部署 监控告警 MLOps 流程 每个环节都需要工程化管理。 版本管...

↗
40

AI Infra 面试会问什么

AI Infra 面试会问什么 想转 AI Infra,面试会遇到什么问题? 这篇整理常见面试题和参考答案。 GPU 基础 Q: nvidia-smi 各字段什么意思? 参考答案: GPU-Util:SM 利用率,反映计算负载 Memory-Usage:显存使用,关注是否接近上限 Temp:温度,过高会降频 Power:功耗,反映实际工作状态 Proc...

↗
41

后端转 AI Infra 的学习路径

后端转 AI Infra 的学习路径 做了几年后端,想转 AI Infra,怎么学? 这篇给一个实际可行的学习路径。 先评估基础 已有优势 后端工程师转 AI Infra,这些技能可以迁移: 需要补充 GPU 基础知识 深度学习基础 AI 框架(PyTorch) AI 场景的特殊问题 学习路径 阶段一:GPU 入门(1-2 周) 目标:能看懂 nvid...

↗
42

GEO 是什么?最近怎么突然这么火?

GEO 是什么?最近怎么突然这么火? 最近 GEO 这个词突然火了。 2026 年 1 月,A 股市场上,蓝色光标七天翻倍、利欧股份七天 4 个涨停板、浙文互联连续涨停。易点天下、中文在线、天龙集团被股民戏称为新「易中天」组合。各种 GEO 培训课、咨询服务也冒出来了,朋友圈里做营销的朋友都在转发相关文章,标题一个比一个吓人:「不懂 GEO,你的企业将...

↗
43

AI Infra 系列写作风格指南

AI Infra 系列写作风格指南 这个文档记录本系列的写作风格和原则,后续写作保持一致。 整体定位 目标读者:有后端/运维经验的工程师,想了解或转型 AI Infra 核心价值:看完能上手干活,能去面试 内容深度:通俗易懂但有干货,新手能入门,老手能学到东西 语言风格 要做的 说人话,像工程师之间聊天,不是老师在讲课 好:「GPU 利用率普遍只有 3...

↗
44

Go 硬核笔试学习笔记 - 代码驱动理解版

Go 硬核笔试学习笔记 - 代码驱动理解版 本笔记用大量可运行的示例代码,帮你彻底理解 Go 并发核心概念 第一章:Goroutine 的真相 - 打破你的错误认知 1.1 Goroutine 没有父子关系 - 用代码证明 很多人以为 goroutine 有父子关系,实际上 所有 goroutine 都是平级的。 运行结果: 结论:A 退出不影响 B,...

↗
45

微信公众号增长指导手册

微信公众号增长指导手册 基于"霍小闲"公众号 2026 年 1 月 K8s 面试系列文章的真实数据复盘,提炼出可复用的内容增长方法论。 一、数据背景 1.1 测试样本 1.2 流量来源分布 1.3 核心结论 涨粉的核心驱动力是微信推荐算法(69.1%),不是搜索,不是朋友圈转发。 所有内容策略都应围绕"如何让算法推荐更多"来设计。 二、算法推荐机制解析...

↗