Jim Keller:工程的本质是手艺,不是发明

传奇芯片架构师Jim Keller在访谈中探讨了工程与发明的本质区别、组织管理中秩序与混乱的平衡、模块化设计的美学,以及他加入AI芯片公司Tenstorrent后的思考。他强调,真正的突破往往源于把简单事情做到极致的手艺精神,而非追求浮于表面的创新。

吉姆·凯勒

导语

在最新一期的播客访谈中,传奇芯片架构师 Jim Keller 深入探讨了计算机设计的本质。从分支预测的突破到 JavaScript 的诞生,从 Steve Jobs 的管理风格到 AI 时代的硬件革命,Keller 以其一贯的直率和深刻洞察,阐述了工程与发明、秩序与混乱、模块化与复杂性之间的永恒张力。作为 Tenstorrent 的新任 CTO,他正致力于构建原生支持 AI 计算图的新型处理器,试图在英伟达主导的市场中开辟一条新路。

大纲与深读 9 章

展开「深读」看每一段讨论的问题与论据。

01

工程实践与创新

08:00
  • 计算机设计已高度工程化,大多数是已知方法的实践与简化,创新虽偶有发生但占比极小。
  • 分支预测的突破性论文展示了单个创新如何被全球计算机采纳,体现了关键底层问题的解决。
  • 分支预测和数据局部性是单线程性能的两大限制,现代预测器已能有效预测两者。
深读这一段

讨论的问题:在计算机工程中,工程实践与创新各自扮演什么角色?

论据 / 案例:分支预测的论文被全球计算机采纳;现代预测器能有效预测分支路径和数据位置。

02

创新奖励与工匠精神

14:00
  • 许多公司奖励专利等创新行为,导致员工追求新奇而忽视基础,这是大公司的常见陷阱。
  • 伟大的突破往往源于对简单事物的极致打磨,好工程师如同精通砖瓦的匠人。
  • 理论和科学可能过度强调创新,而工程更强调工匠精神,两者需要平衡。
深读这一段

讨论的问题:组织如何平衡对创新的奖励与对基础工匠精神的重视?

论据 / 案例:以砖瓦匠人比喻:精通砖瓦特性的匠人比堆砌丑陋砖瓦的人能造出更好的房子。

03

JavaScript的成功之道

19:00
  • JavaScript在10天内被创建,曾被认为是糟糕的语言,但如今是全球第一的编程语言。
  • 其成功部分源于“错误即正确”的理念:快速完成粗糙的实现,然后根据用户反馈迭代改进。
  • 它作为注释直接嵌入HTML,运行在同一线程,这种极简和易用性催生了开发者的创新。
深读这一段

讨论的问题:JavaScript为何能从一种“糟糕”的语言发展成主导语言?

论据 / 案例:JavaScript被作为注释嵌入HTML;Brendan Eich在10天内创建了它;它运行在浏览器的同一线程中。

04

指令集的演化与简单性

26:00
  • 简单性在演化过程中被青睐,因为它能更快传播,但过于简单则不好。
  • x86尽管被认为是糟糕的架构却主导市场,而ARM提供从微控制器到高性能的完整处理器谱系。
  • RISC-V作为开源架构,其开放性可能带来碎片化风险,但也允许无限创新。
深读这一段

讨论的问题:在处理器指令集领域,简单性、开放性和专有性如何影响竞争格局?

论据 / 案例:ARM提供A、R、M系列处理器;x86由Intel和AMD专有;RISC-V开源但可能碎片化。

05

Intel与ARM的竞争哲学

32:00
  • Intel长期专注于高端、定制化设计,与自家工具和工艺深度绑定,相对封闭。
  • ARM从底层发展,提供IP授权,让客户自由实现,对综合工具环境友好。
  • Intel进入移动市场时团队单一且沿用PC思维,而ARM通过众多客户实验探索多样可能。
深读这一段

讨论的问题:Intel和ARM在处理器设计和商业模式上的根本差异是什么?

论据 / 案例:Intel使用自有CAD工具和工艺;ARM授权IP给客户;Intel移动团队单一,ARM生态多样。

06

Steve Jobs的管理与直觉

40:00
  • Steve Jobs擅长选择人才,并通过信任的工程师(如Mike Collet)将创意转化为产品。
  • 他具有第一性原则思维,拒绝接受“不可能”,但需要有人将他的想法“翻译”成工程实现。
  • 在混沌与秩序的生产力曲线中,伟大的领导者需要作为对抗组织过度官僚化的反作用力。
深读这一段

讨论的问题:像Steve Jobs这样的领导者如何在混沌与秩序之间找到平衡以推动创新?

论据 / 案例:通过Mike Collet进行沟通和转化;用黑布遮盖原型以防Steve提前看到;混沌-秩序生产力曲线理论。

07

模组化设计的美

48:00
  • 优美的设计通常具有精心设计的抽象层,使组件能独立工作、独立创新。
  • 模块化设计(如AMD的Zen)通过明确定义接口提升了设计质量和验证效率。
  • 个人的认知能力限制了模块的复杂度,因此需要模块化框架来构建庞大的系统。
深读这一段

讨论的问题:什么样的设计才称得上“优美”?模块化在其中起什么作用?

论据 / 案例:AMD Zen设计预先定义所有接口;七层网络协议栈;个人认知能力与模块大小的匹配。

08

摩尔定律与计算扩展

56:00
  • 计算能力的指数级提升不只来自硬件尺寸缩小,还来自网络规模扩展和算法优化。
  • 未来的丰富S曲线可能更多来自将计算扩展到大量计算机上,而非单计算机性能提升。
  • 未来趋势可能是低效但规模化的计算,即“规模化低效”。
深读这一段

讨论的问题:在硬件改进放缓的背景下,计算能力的持续增长主要来自哪里?

论据 / 案例:从100到10000台计算机的规模扩展;算法效率提升(如神经网络);Google搜索的分布式扩展。

09

Tenstorrent与图处理器

64:00
  • AI是“给定并行性”问题,其神经网络本质是图,与GPU的“像素”并行模式根本不同。
  • Tenstorrent开发能原生执行图的“图形处理器”,其硬件直接支持矩阵乘、卷积等图操作。
  • 软件栈借鉴MLIR思想,设计多层可执行中间表示,以应对AI软件栈的复杂性。
深读这一段

讨论的问题:为AI设计专用硬件与用GPU模拟相比,有哪些根本性优势?

论据 / 案例:Tenstorrent的Grace系列处理器;原生支持矩阵运算和数据搬运;软件栈采用多层中间表示。

金句

  • "Good engineering is great craftsmanship and when you start thinking engineering is about invention, and set up a system that rewards invention, the craftsmanship gets neglected." —— 好的工程就是卓越的手艺。当你开始认为工程就是发明,并建立一套奖励发明的体系时,手艺就会被忽视。
  • "As you go from the origin, as you improve order, you improve productivity. And at some point, productivity peaks. And then it goes back down again." —— 从原点出发,随着秩序的改善,生产力会提高。但到了某个点,生产力达到顶峰,然后就会下降。
  • "Any organization will move to the place where their productivity is stymied by order." —— 任何组织都会走向一个境地,即其生产力被秩序所扼杀。
  • "A beautiful design can't be bigger than the person doing it." —— 一个优美的设计不可能大于设计它的人。
  • "The future of computing is inefficiency, not efficiency, but scales, inefficiency scales." —— 计算的未来是低效而非高效,但这种低效是可扩展的。

原文链接

查看完整访谈

完整内容见原文:Lex Fridman Podcast · Jim Keller:工程的本质是手艺,不是发明