avatar
文章
316
标签
521
分类
79
关于笔者
主页
博文
  • 分类
  • 标签
  • 归档
生活
友链
留言板
Roger-Lv's space
搜索
关于笔者
主页
博文
  • 分类
  • 标签
  • 归档
生活
友链
留言板

Roger-Lv's space

推理服务调度的五层责任边界:一次请求从 K8s 走到 vLLM
发表于2026-11-09|AI Infra
一句话结论:所谓「推理调度」,不是一个调度器,而是五层彼此看不见的决策。每一层能做什么,完全由它能看见什么信息决定——把决策放错层,不是效果差一点,而是根本做不成。 K8s 调度器只看得见整数设备:它知道「还剩几张卡」,不知道每张卡的 KV Cache 水位、队列深度、模型是否加载完; Gang 层保证多卡模型「一起上车」,但它读不到 PodGroup 的调度结果; 拓扑层约束落点,而 GPU 互联的约束(TP 整除、MIG 不可跨实例通信)是硬约束,不是偏好; 路由器是唯一能看见「请求」的一层——公共前缀、活动请求数、队列深度只有它知道; 引擎内部再决定请求进哪个 batch,这一层 K8s 完全看不见。 这篇是一次「责任边界」的梳理。主线是一次推理请求穿过五层调度器时,每一层的可见性与决策权;对照组是 Kthena(Volcano 子项目,v1.0)的源码——它的每一层都做了明确取舍,恰好把边界照了出来。 同时,近期有一篇流传较广的公众号文章《从部署 vLLM 到 AI 基础设施:Kubernetes 推理平台生产级落地、容量设计与性能优化》,整体框架(容量、调度、弹...
国产 GPU 适配到底在适配什么:从 CUDA 生态到 vLLM 插件机制的执行链拆解
发表于2026-11-09|AI Infra
在一套兼容的 NVIDIA 环境里,部署一个大模型可能只需要一条命令: 123vllm serve /models/Qwen \ --tensor-parallel-size 1 \ --max-model-len 32768 换到国产 GPU 上,同样的模型、同样的 Python 代码,却可能遇到一长串看似互不相关的问题:PyTorch 认不出设备;权重能加载但执行 Attention 时异常退出;BF16 正常而 FP8 不被支持;单卡能跑但 Tensor Parallel 起不来;能出字但速度远低于预期;短上下文正常而长上下文 OOM;CUDA Graph、投机解码、MoE 这些优化全部不可用。 这些问题指向同一个根源:大模型推理并不直接跑在 GPU 硬件上,而是跑在一整套软硬件协同的执行体系上。 换一张卡,换掉的是整条链路。 一、模型不认识 GPU 以 Transformer 为例,无论 Qwen、DeepSeek 还是 GLM,模型首先描述的是一组数学计算——线性变换 Y=XWY = XWY=XW、注意力 softmax(QKT/d)V\mathrm{sof...
2026 大厂 AI Infra 生产排错测试(卷二)50 题全解:附 12 处题目勘误
发表于2026-11-09|AI Infra
这份试卷流传得挺广。它的定位很明确:不考概念背诵,而是把你直接扔进万卡集群的线上事故现场。题目质量整体在线——很多题干描述的现象(GPU 满载 100% 却无输出、单卡 OOM 引发连锁雪崩、Xid 静默故障)确实是生产里真实会遇到的东西。 但做下来发现一个问题:有 12 处题干前提站不住。有些是命名错误(DualPipe-V2 不存在),有些是职责错配(把节点健康探测的活儿算到调度器头上),还有些是版本演进导致的自然过时——最典型的是题目按 DeepSeek-V2/V3 的 MLA 配置(潜变量 512 + 解耦 RoPE 64)给 DeepSeek-V4 出题,可 V4 已经不用 MLA 了。 所以本文分两部分:先逐题给答案与解析,再把 12 处勘误集中列出。答案都尽量追到一手来源(NVIDIA 官方文档、PyTorch / vLLM 源码、Linux 内核定义、模型官方 config.json),而不是靠印象作答。 一、题目勘误汇总(先看这个) 先集中列出题干本身的问题,避免读者照着错前提记结论。 # 位置 问题 正确表述 1 判断 2 称 NCCL_DEB...
为什么一条 32k 请求能瞬间打爆显存:中间激活张量、常驻水位与 Chunked Prefill
发表于2026-11-09|AI Infra
推理服务最常见的崩溃形态是这样的:系统平稳运行了很久,突然因为一条长文本请求 CUDA OOM,整个实例挂掉。 直觉上会去怪权重太大或 KV Cache 爆了。但权重是启动时就固定的,KV Cache 有 PagedAttention 分页管理、增长是缓坡——它们都不解释「瞬间」这两个字。 真正的元凶是第三类显存:中间激活张量。 一、显存的三类「性格」 把推理时的 GPU 显存按行为特征分成三类,很多 OOM 问题会立刻变得清楚: 类型 内容 增长方式 管理手段 常驻水位 模型权重 启动即固定,不随负载变 量化、张量并行 线性累积 KV Cache 随 token 数 O(S)O(S)O(S) 缓坡上涨 PagedAttention 分页、前缀缓存、KV 量化 瞬时峰值 中间激活张量 单步内 O(S)O(S)O(S) 甚至 O(S2)O(S^2)O(S2) 尖峰 Chunked Prefill、FlashAttention 中间激活张量指的是前向计算过程中、每层算子之间临时产生并立即消费的那部分张量。它们既不是常驻显存的权重,也不是需要长期保留的 KV...
runc 补篇之后:rootless 容器、privileged-without-device 与 dind 的 GPU 责任链
发表于2026-11-08|AI Infra
一句话结论:GPU 在容器里的可见性,不是由 --gpus 或 --device 这一层的写法决定的,而是由最外层那一次分配定死的——下游每一层都只能在集合内部重分配,一张也变不出来。 三条推论: rootless 影响的不是 request/limit 生效(那发生在宿主机的 kubelet / device plugin 进程里),而是运行时能不能把设备节点塞进去; privileged 与 device 是两条正交的轴,且 privileged 的默认行为是连设备一起给你——「门全开但屋里没东西」必须靠显式 opt-out 才能达成; dind 里 --gpus all 的 all 永远是局部 all——它能重分配外层给它的集合,但一张也变不出来。 这篇是《容器运行时拆解·补篇》的续篇。原篇把 runc create 之后的世界切成四个侧面——权限、记账、I/O、退出;这篇顺着同一条责任链往下走,聚焦读者最常追问的三个场景。 本文路线 全文分四段,可以按需跳读: 段落 章节 回答什么 ① 原理 一 ~ 六 三个时刻怎么切;privileged 与 de...
GPU 虚拟化技术栈全景:从 IOMMU 到 vGPU,再到 Agent 沙盒与具身仿真
发表于2026-11-06|AI Infra
一句话结论:从 IOMMU(硬件地址翻译与 DMA 隔离)→ VFIO(设备直通框架)→ SR-IOV(PCIe 级切分)→ MIG(硅片级硬切分)→ vGPU(软件时间片调度)这条链路,构成了 GPU 虚拟化的完整技术栈。「IOMMU 划边界、VFIO 做移交」这条直通链路,是所有 GPU 沙盒和具身仿真基础设施绕不开的地基。 本文按「技术原理 → 两大落地场景 → 一个真实落地案例 → 决策树」四层展开,并把各技术支持的功能以表格汇总。 所有技术描述核对自 Linux 内核文档、NVIDIA 官方文档、Intel/AMD 官方文档与各项目仓库。核对中发现原稿有二十余处需要更正,其中三处是实质性错误,已在文中以 ⚠️ 标注。 一、技术原理层:从 IOMMU 到 vGPU 1.1 IOMMU:硬件级安全边界 IOMMU 是提供地址翻译与设备隔离的硬件单元:对设备发出的 DMA 做 IOVA → HPA 翻译与访问保护,并提供中断重映射;隔离以 IOMMU group 为粒度。Intel 侧叫 VT-d,AMD 侧叫 AMD-Vi。 Linux VFIO 内核文档原文: ...
容器到底有没有内核?——拆解 Docker、Kata、Firecracker 的内核边界
发表于2026-11-06|AI Infra
一句话结论:Ubuntu 镜像里根本没有内核。 它不是一个「完整的 Linux 系统」,只是一份 rootfs——打包好的用户态二进制和库文件。容器里的进程发起的每一个 syscall 都直接打到宿主机内核上,namespace 只是给进程一个「看起来像独立系统」的视图,不是真的给它装了一个内核。 而 Kata 和 Firecracker 之所以「有自己的内核」,是因为它们在容器外多加了一层 VM,VM 里需要一份 guest kernel 来承载上面的容器——整个链路里只发生了一次虚拟化,不是嵌套。 本文的机制描述与实测数据核对自 Docker Registry 实际镜像内容、Linux 内核文档与 man pages、glibc 与 kmod 源码、Kata Containers 与 Firecracker 官方文档。核对中发现原稿有十余处需要更正,其中一处是流传很广的机制错误,已在文中以 ⚠️ 标注。 一、把「Linux 系统」拆开看:内核和用户态是两件事 日常说「Ubuntu 22.04」这个概念,其实打包了两个完全独立的东西: 组成部分 具体内容 来源 放在...
从微信记录到蒸馏自己:蒸馏工作流全教程
发表于2026-11-06|Agent
从微信记录到蒸馏自己:蒸馏工作流全教程 1. Target 本文是关于从MAC/Windows电脑上通过各种使用痕迹(尤其是微信)蒸馏出自己完整人格/习惯的教程 你可以直接让claude code读这个网页链接,让它告诉你该怎么一步步操作,包括后续如果遇到问题也可以问claude code 2. Process 其中微信提取聊天记录这部分网上的相关工具基本上已经下架(🐧的法务你是知道的) 需要用到的工具包括: claude code / codex等本地Agent工具 用于提取微信聊天记录的工具: weflow未删减版:用于获取密钥(这个网盘中有对应教程,这个网盘随时可能会删) 点击链接:https://pan.baidu.com/s/1UUr-w-a2taGbQKDDon0hzQ 提取码:sqhh 这一步如果顺利是可以拿到聊天记录的,就不用考虑2.2这一步了;如果在最后一步有问题,记得把提取出来的密钥保存下来,后续2.2 有用 另外网上也有其他教程,可以自己探索下如何拿到密钥 https://github.com/Roger-Lv/wechat-extract...
重庆适合解馋
发表于2026-11-06|生活
一句话结论:重庆不是我的退路,是我的解馋点。这两件事我花了很久才分清。 一、卤鹅 2025 年 4 月,我老家荣昌突然出名了。 起因是一个被叫作「卤鹅哥」的人,追着来中国的外国网红投喂卤鹅。事情本身很荒诞,效果很实在——那阵子荣昌的卤鹅店销量翻了 4000%,五一还没到我就在猜人流量要爆。 我当时在外地。看到消息的第一反应不是自豪,是困惑。因为我发现自己跟卤鹅哥是小学校友。这条信息对我没有任何用处,但那天我盯着屏幕看了很久。 荣昌是个什么样的地方?在 2025 年之前,它的名片是猪。荣昌猪,中国三大地方猪种之一,我从小听这个词听到麻木。卤鹅当然也吃,但说实话,我从来没觉得它是我们那儿最值得说出口的东西——因为它太不家常了。家常的是猪油、是腊肉、是外婆坛子里的东西。卤鹅是要专门去买的,是逢年过节、有人从老家来、或者自己馋得受不了的时候,才会想起来的那一类。 结果它火了。 那之后我每次回家,行李箱里都要塞两只。北京的朋友吃过一次之后开始点名要。我后来总结出一句:提个卤鹅堪比偷渡——真空包装、冰袋、泡沫箱,过安检的时候总觉得会有人拦我。 二、解馋 我给重庆下过一个很刻薄的判断:重庆...
万卡 GPU 集群运维:监控四平面、故障五分类与调优三板斧
发表于2026-11-05|AI Infra
一句话结论:把 RoCEv2 网络配成无损只是让集群「能跑起来」,真正吃掉算力的在后面——几万张卡在几个月里不停地出故障、掉速、Hang 住,而你要在没有用户配合、看不到业务代码的情况下,判断这一次的锅是硬件、是网络还是调度。 这篇给一套可执行的方法:四个监控平面分工排查、五类故障定性定位、RoCE 三种典型病的判据、三板斧的调优顺序,最后落一份巡检清单。 开场先看一个真实场景。 某集群上一个 2048 卡预训练任务,MFU 长期在 38% 上下波动。团队查了两周网络:PFC 计数正常、ECN 标记率正常、交换机上零丢包、ib_write_bw 端到端带宽也达标。 最后在 DCGM 的 SM Clock 指标上发现问题——256 台机器里有一台的 8 张卡,SM 时钟长期跑在 1.1GHz,其他机器都是 1.9GHz。这台机器是慢节点,它在每一个 AllReduce 里拖后腿,整条 ring 都要等它。换掉之后 MFU 回到 45%,而且不再波动。 这类问题在交换机上永远查不到,因为网络侧所有计数都是干净的。 边界说明:文中命令以 NVIDIA DCGM 与 nvidia-...
12…32
avatar
Roger-Lv
Send a flare and light the way.
文章
316
标签
521
分类
79
Follow Me
公告
Welcome!
最新文章
推理服务调度的五层责任边界:一次请求从 K8s 走到 vLLM2026-11-09
国产 GPU 适配到底在适配什么:从 CUDA 生态到 vLLM 插件机制的执行链拆解2026-11-09
2026 大厂 AI Infra 生产排错测试(卷二)50 题全解:附 12 处题目勘误2026-11-09
为什么一条 32k 请求能瞬间打爆显存:中间激活张量、常驻水位与 Chunked Prefill2026-11-09
runc 补篇之后:rootless 容器、privileged-without-device 与 dind 的 GPU 责任链2026-11-08
分类
  • AI Infra42
  • AIInfra5
  • Agent28
  • Agent 安全2
  • Agent 系统2
  • Agent基础设施2
  • Agent工程1
  • CUDA1
标签
线程池 后端 仿真集群 推理优化 Go ICML NCCL rust 微服务 disaggregation 抢占 体系结构 数字永生 ublk AlexNet RDMA 万卡集群 RPC 系统编程 RDMA拓扑 源码 启动顺序 anaconda Kueue MySQL 故障诊断 集群 聚类 网络隔离 Muon bio safetensors 系统优化 多集群 Rust 零拷贝 显存 ClusterMesh 训练 PaaS
归档
  • 十一月 2026 27
  • 十月 2026 17
  • 九月 2026 9
  • 八月 2026 31
  • 七月 2026 31
  • 五月 2026 6
  • 四月 2026 2
  • 三月 2026 3
网站信息
文章数目 :
316
本站访客数 :
本站总浏览量 :
最后更新时间 :
©2024 - 2026 By Roger-Lv
搜索
数据加载中