Paul Jialiang Wu agentic-portfolio English Español 한국어 日本語✉️ 免费订阅列表
← 返回作品集

AI 原生系列 · 学习方法论

2004年,那篇只字不提AI的AI最重要论文

作者 Paul Jialiang Wu · agentic-portfolio-lovat.vercel.app · 2026-08-01

一分钟速览:读完这篇你能带走什么

2004年,GPU 的力气早就压过了 CPU,可要给它编程,你得先学会说“三角形语”。Brook for GPUs 用三个抽象概念撬开了这把锁——streams、kernels、reductions——于是这座被解锁的 仓库先变成了 CUDA(2006),再变成了两块游戏卡上跑出来的 AlexNet(2012),最终变成了整个 AI 时代。心智 模型是:沉睡的算力藏在锁死的门后,而抽象就是那把钥匙。 Sara Hooker 提出的「硬件彩票」为这个规律命了名;你自己手头的工具,其实也藏着好几座上锁的仓库。

The most important AI paper of 2004 never mentions AI — streams flowing through a kernel

2004年,七位斯坦福研究者发表了一篇关于显卡的论文。我替你查过了: “neural”“artificial intelligence”“machine learning”“deep learning”这几个词,在全文中出现的次数是零。可它依然是我 前沿 AI 阅读清单上的第 №2 篇——排在几乎所有真正提到 AI 的论文前面——读完这篇文章,我想你会同意,这个位置它当之无愧。

仓库堆满马力,就是没有门

2004年的现实荒谬到什么程度?游戏玩家电脑里的显卡,原始算力早就超过了旁边那颗CPU。可这股蛮力全被锁在着色器汇编和图形API后面——要用它,你得把自己的数学运算伪装成一个渲染任务。Brook的作者们说得很直白[1]:

"…the user is forced to express their algorithm in terms of graphics primitives, such as textures and triangles. As a result, general-purpose GPU computing is limited to only the most advanced graphics developers."(中译:……用户被迫用图形基本单元——比如纹理和三角形——来表达自己的算法。结果就是,通用GPU计算只有最顶尖的图形开发者才玩得转。)

想象一个堆满引擎的仓库,可谁也发动不了它们,因为点火装置只认三角形形状的钥匙。这可不是我为了生动而编出来的比喻——它就是这篇论文存在的全部理由:

CPU——可编程
GPU——更强,但锁死了
锁住的从来是编程模型,
不是硅片本身

①锁住的仓库——那根更高的柱子(代表算力)其实一直都在;看看笼子打开后会发生什么

三个字,打开一把锁

Brook的突破点不是更快的硬件,而是一套词汇。摘要原文如下[1]:

"Brook extends C to include simple data-parallel constructs, enabling the use of the GPU as a streaming coprocessor."(中译:Brook扩展了C语言,加入了简单的数据并行结构,使GPU得以被当作流式协处理器使用。)

贡献部分原文如下[1]: "Through the use of streams, kernels and reduction operators, Brook abstracts the GPU as a streaming processor."(中译:通过使用流、内核和归约运算符,Brook将GPU抽象为一个流处理器。) A stream(流)是并行车道中流动的数据;一个kernel(内核)是施加在流过的一切之上的同一个函数;一个reduction(归约)把这股洪流折叠成一个答案。任何能用这三个词说清楚的问题——矩阵乘法说得尤其流利——都能在这座仓库的引擎上运行,完全不必提三角形这个词。同一篇论文里还有硬邦邦的数字为证:Brook程序跑得"up to seven times faster than their CPU counterparts."(中译:比对应的CPU版本最多快七倍。)[1] 这张图是我手绘出来的——我把这篇论文的核心思路,用画笔工具画在了画布上,再由它自带的渲染器导出:

Hand-drawn on penecho: three parallel streams enter a kernel box and exit as one transformed stream
流进来,内核计算,流出去——这把三词钥匙,是我在penecho上手绘的(它自身的200个测试全部通过,我才敢用它)
kernel

② 同一张图,动起来——三股蓝色的流汇成一股橙色的流;kernel 从未移动,动的是数据

这篇论文点燃的引线

顺着人的去向看:Brook 的第一作者是 Ian Buck。论文发表后,他加入了 NVIDIA ——在那里他一手创造了 CUDA,如今执掌该公司的超大规模与高性能计算 业务[2]。CUDA(2006)就是 Brook 那套词汇长成了工业级规模。 六年后,两位研究生在游戏显卡上训练了一个神经网络,赢下 ImageNet 的优势之大让整个领域都下不来台,并在论文结尾留下了 AI 史上分量最重的一句轻描淡写——原文如下[3]:

"…trained on two GTX 580 3GB GPUs. All of our experiments suggest that our results can be improved simply by waiting for faster GPUs and bigger datasets to become available."(中译:……在两块 GTX 580 3GB 显卡上训练。我们所有的实验都表明,只需等待更快的 GPU 和更大的数据集问世,我们的结果就能得到提升。)

再读一遍:开启深度学习时代的这篇论文,结尾提的竟是一份硬件升级申请。不是新理论,也不是更聪明的先验。等待更快的 GPU——而这些引擎,正来自 Brook 在八年前那篇只字未提 AI 的论文中解锁的那座仓库。

2004
Brook:钥匙
2006
CUDA:产业级的门
2012
AlexNet:两块游戏显卡
今天
AI 时代的账单

③ 引线——从「求你别再逼我画三角形了」到万亿参数训练任务,一共二十二年

藏在背后的规律,由局内人揭示并命名

Sara Hooker(曾任职 Google Brain,后担任 Cohere For AI 负责人)在 2020 年为这个模式起了一个永久的名字。她摘要中的原话是[4]:

"This essay introduces the term hardware lottery to describe when a research idea wins because it is suited to the available software and hardware and not because the idea is superior to alternative research directions."(中译:本文引入「硬件彩票」一词,用以描述这样一种现象:某个研究想法胜出,是因为它恰好适配现有的软硬件,而非因为这个想法本身优于其他研究方向。)

她的这套推论两头都通,这也正是它是洞见而非口号的原因:神经网络本身就是一个古老的想法,曾在数十年里持续输掉这场彩票——在它所需要的硬件尚未问世时,被判定为失败之作。Brook 和 CUDA 所做的,不只是让计算变快;它们改变了哪些想法能够“成真”。如果你读过我那篇 《苦涩的教训》相关的文章,这里就是两者的接口:Sutton 说,搭乘算力这班车的通用方法终将胜出——而 Hooker 补上了一句附加条款:前提是,那算力得有人费心把它解锁出来。《苦涩的教训》说中了大势所趋;港口是 Brook 修的。

着色器汇编——要么讲三角形的语言,要么走人(2003)
Brook——流、内核、归约(2004)
CUDA——同样的理念,工业级强度(2006)
PyTorch 及其伙伴们——没人还记得曾经有过锁(现在)

④ 抽象阶梯——每一层都让下面一层隐形;这种隐形正是成就所在

模式: 硬件与软件的协同设计——当能力超出可用性时, 杠杆最大的工作是做抽象层,而不是刷下一个基准测试。Brook 的作者们没有让 GPU 变得更快;他们让它变得可言说.

反模式: 用硬件的母语来表达你的问题—— 2004 年是三角形,而今天,则是把研究想法硬拗成当下加速器所奖励的样子。 这正是硬件彩票黑暗的一面:仓库决定了你被允许想些什么。

机制: 虚拟化。流、内核、归约构成了数据并行的一套极简而完备的语言, 于是任何符合规则的问题——2004 年的图像分割,永远的矩阵 乘法——都能映射到图形芯片上,而芯片本身分毫未变。

第一性原理:跟对硬件趋势的算法会赢;抽象层 能解锁沉睡的算力。推论:你手头最快的那台电脑,是你还不会用的那台。

这周就去找到你自己那座「锁死的仓库」(SMART 拆解)

具体(Specific): 盘点一下你拥有却驾驭不了的算力和工具——桌上闲置的 GPU、你付费却一个月只调用两次的 API、那套只有作者本人 敢碰的智能体技术栈。可执行(Actionable): 针对其中最大的一项,写一句 Brook 式的句子:“把 「我已经会说的语言」扩展一下,让 「被锁住的能力」 变成一种 「我能推理的名词」。」这句话本身就是一份规格说明。可衡量(Measurable): 上周还有人用不了这东西,这周他就靠它上线了——这就算赢了。Brook 自己定的标准是:非图形学出身的开发者也能把代码跑出七倍的速度[1]. 限时(Timeboxed): 盘点用一个晚上;写那句话用十分钟;做出抽象层,则要花一个季度。 相关性(Relevant): Hooker 的彩票还在继续抽——下一个 AlexNet,此刻正卡在某个人那扇三角形钥匙孔的点火装置后面,出不来。

这个页面是怎么做出来的(简要说明)

对我的 allin-anything 路由器说了一句话:"learn the Brook for GPUs paper deeply, with an animation for each key idea, and sketch its stream-through-kernel pipeline by hand."(中译:深入学习 Brook for GPUs 这篇论文,为每一个关键概念配一个动画,并手绘出它「流→内核」的处理流程。) 三路不同的自动化流程分别给出了回应,且每一路在被信任之前都先跑通了自己的测试集——教学回放循环、动画工艺检查器,还有 penecho 画布(在其锁定的 commit 上跑过 200 个测试,全部通过),上面那幅手绘图正是它自己的导出器生成的。文中每一条引文都取自一手资料,逐字核对。整个流程只在一处停下——那是机器不该越俎代庖的一步:点击发布,是我自己按下的。所有凭证——退出码、锁定的 commit、运行日志——都存放在仓库里[5].

参考文献(每个链接均在发布时核实过)

  1. Buck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M. & Hanrahan, P. (2004)。Brook for GPUs: Stream Computing on Graphics Hardware。SIGGRAPH 2004——所有引文均逐字取自 PDF 原文 (发布时已抓取核对);项目主页: graphics.stanford.edu/projects/brookgpu.
  2. NVIDIA 新闻室。Ian Buck——个人简介—— Brook 的第一作者;CUDA 的创造者;现任 NVIDIA 超大规模与高性能计算业务副总裁。
  3. Krizhevsky, A., Sutskever, I. & Hinton, G.(2012)。 ImageNet Classification with Deep Convolutional Neural Networks。NeurIPS——「two GTX 580 3GB GPUs」 以及「waiting for faster GPUs」这两句均逐字取自 PDF 原文。
  4. Hooker, S.(2020)。The Hardware Lottery。 arXiv:2009.06489 —— 定义引自摘要原文,逐字照录。
  5. 本次运行的凭证——路由裁决、各环节测试计数、退出码、AutoRunner 日志—— 都在 github.com/wjlgatech/allin-anything (图解流程:article-to-animated-understanding);现场演示: allin-anything-demo.vercel.app。引言中「零次提及」这一说法,字数统计凭证如下grep -ci:针对 Brook 论文 PDF 全文检索 「neural」「artificial intelligence」「machine learning」「deep learning」→ 0、0、0、0。

Paul Jialiang Wu · agentic-portfolio-lovat.vercel.app · FM-os 前沿 AI 阅读清单第 2 篇,全程实学 · 清单下一篇:AlexNet——引线烧到了火药