新闻详情

新闻详情

首页 / 资讯中心 / 详情

第 4 篇:并行:4 个工人 ≠ 快 4 倍(零门槛入门系列)

发布时间:2026/11/4 23:00:34来源:尧图网络
第 4 篇:并行:4 个工人 ≠ 快 4 倍(零门槛入门系列)
上一篇第 3 篇《权重文件的解剖》 下一篇第 5 篇《为什么要量化》一句话导读把活分给 W 个人总时间由最慢的那块加上分配与收尾的固定开销决定所以人越多不一定越快。关键词并行、工人数、切块、固定开销、拐点前面三篇都在讲数字怎么放。可一个权重文件动辄几十亿个数一个人是搬不完的。这一篇算一算多叫几个人来这笔账为什么 4 个工人不等于快 4 倍。① 一句话概念总时间 最慢的那块 每次都要付的固定开销。② 起点四个人搬 100 箱货仓库里堆着 100 箱货你叫来 4 个朋友帮忙搬到另一头。开工前你得先把规矩讲清楚谁负责哪几箱、搬到哪、码成什么样。讲规矩这几分钟4 个人都站着听没人搬东西。讲完4 个人同时开干——但箱子没搬完之前谁也不能走。如果你的分法是每人 25 箱理论上应该同时结束可实际上总会有人分到的箱子更沉、走的路更远另外 3 个人就只能站在终点等他把最后一箱放好。等所有人都搬完你还得清点总数、签个字——这又是大家都得干等着的一段。那叫 8 个人会更快吗不一定规矩要多讲一会儿人一多还容易撞在一起互相让路。所以人越多越快只在人少的时候成立人一多反而变成人越多越乱。③ 伪代码切块 → 付开销 → 一起干 → 等齐函数 并行做(任务, 工人数 W) - 结果: 块 把任务切成 W 份 # 切不均时最大的一块说了算 付一次固定开销 # 派活、讲解、收尾都算在这里 同时 让 W 个工人在自己那块上干活 等所有人结束 # 谁也不能提前走 - 把 W 份结果拼起来 总时间 ≈ 最大块耗时 固定开销把四档工人数摊在同一张时间轴上就是如图 1 所示的对比。图 1W 个工人的时间条最慢的那块决定总时间竖着排了四行从上到下是 W 1、2、4、8每一行最左边是一段灰色的开销派活、讲解、收尾它随人数增加而变宽右边是彩色的工作块每行的开销 工作块总宽不变只是被切成的块数不同人越多每块越窄每行右端那块斜纹区域标着空闲——它在等最慢的那个人人越多剩得越多。逐行要点把任务切成 W 份切法是并行parallel的全部难点。切得平均大家同时收工切不平均结局由最慢的一块决定——快的人省下的时间不会退给你。付一次固定开销固定开销overhead是开始干活之前和干完之后的那部分花费派活、交代、对账。它不随任务变小而变小所以任务太小反而更慢。让 W 个工人在自己那块上干活这里的工人就是常说的线程thread。本篇不关心它叫什么只关心两件事几个人、干多少。等所有人结束这是并行的规矩——一轮里必须等齐。谁也不能先走否则拼回来的结果就是残的。总时间 ≈ 最大块耗时 固定开销这一行是全文的核心公式。想更快只有一条路让最大块更小。而固定开销是地板它决定再多人也快不过某个上限。④ 纸笔实验必做设定100 个任务每个任务耗时 1 个时间单位。请按 W 1、2、4、8、16、32 均分算出总时间并找出拐点。先只算固定开销 2总时间 向上取整(100 ÷ W)块大小 2。W每块任务数总时间110010225052425278131516793246你会发现没有拐点人越多永远越快。这说明固定开销是常数这个模型是假的——现实里开销会随着人数增长规矩要多讲几遍、人要互相让路、收尾要多对几笔账。换一个更真实的模型固定开销 2全队一起付的部分 每人 1各自听指令、各自对账。于是总时间 向上取整(100 ÷ W) 2 1 × WW每块任务数固定开销总时间11002 11032502 2544252 4318132 8231672 16253242 3238预期结果拐点在 W 8 附近。W 从 1 加到 8总时间从 103 降到 23再加到 16 反而升到 25加到 32 更差。这里要诚实一点W 8 只是我们采样的这 6 个点里的最低处换成连续模型去解真正的最小点还会更靠后一些。结论加速不是免费的它靠分摊工作换来却要按人数交固定开销——工作块变小带来的收益、与按人数交的开销两者相等的地方就是该停手的地方越过它多一个人就多亏一点。可选 REPL 版任意语言直接跑任务数, 全队开销, 每人开销 100, 2, 1 def 总时间(W): 块 向上取整(任务数 / W) 返回 块 全队开销 每人开销 * W 对每个 W 于 [1, 2, 4, 8, 16, 32]: 打印(W, 总时间(W))预期输出的最小值出现在 W 8 那一行23。⑤ 进阶锚点进阶锚点本篇概念在《30 天手搓推理引擎》Day 4里被真正实现——4-1 为什么换掉 OpenMP线程唤醒与亲和vllm_tp 设计/4-2 vllm_tp_parfor调用线程也干活/4-3 核绑定实验为什么工程文档叮嘱勿设 8 线程。入门版到这里就够了进阶版会多出自研线程池怎么把固定开销压下来唤醒方式与亲和性、为什么发起任务的那个线程自己也下场干活能少一份开销、以及真实的线程档位曲线读数来自仓库 docs 报告口径。想动手 → 仓库https://gitee.com/pei-xiaoguang/kestrel-llm从 Day 1 开始。本篇那个拐点在进阶 Day 4 会变成一张真实的实测曲线。下篇预告工人再多也得把要搬的数字先变小——否则大家的时间全花在搬运上。第 5 篇讲量化。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/4 15:56:54

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/4 22:55:41

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/4 17:01:23

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/4 12:33:12

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/4 1:25:31

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/4 3:51:11

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉