30 秒看懂
在 2020 年访谈的这一片段中,Jim Keller 向 Lex Fridman 解释深层理解如何补充高效的现成流程,并将这一思想应用于计算机架构及短期优化与重新设计的取舍。
- 1可迁移的理解配方在适用范围内高效,更深的理解能迁移到新问题。
- 2重新理解表面极限重新设计可以消除先前选择造成的限制。
- 3管理过渡团队可以优化现有设计,同时开发下一代方案。
要点建议
- 配方高效,但有适用范围。
- 问题变化时,深层理解有助于迁移。
- 有些表面的性能极限源自过去的设计选择。
- 重新设计兼有短期风险和长期机会。
- 平均性能可能掩盖对个别客户重要的退步。
按章节阅读整理后的全文
配方与理解
Lex Fridman 询问 Jim Keller,如何组织人们创造出色的东西。Keller 首先区分遵循现成配方与理解底层系统。
Lex Fridman 询问 Jim Keller,如何组织人们创造出色的东西。Keller 首先区分遵循现成配方与理解底层系统。
面包配方会告诉你混合面粉、水和酵母,等待发酵后烘烤。而理解面包可以延伸到生物学、供应链、磨粉、酵母和热力学。
配方在适用范围内非常高效,但面包配方不会告诉你如何做煎蛋。对烹饪更深的理解可以迁移到更多场景。Keller 认为,专业能力不只是收集操作步骤。
关键是平衡:如果把每个细节都从第一原理重新推导,可能永远无法完成;如果需要深入研究时从不研究,则可能高效地做错事。
团队与判断
管理人又增加了复杂性。每项指令可能产生许多不同反应,而这些反应会相互影响。Keller 认为,何时介入的判断很难化约为简单配方。
管理人又增加了复杂性。每项指令可能产生许多不同反应,而这些反应会相互影响。Keller 认为,何时介入的判断很难化约为简单配方。
渐进设计与重新设计
在计算机设计中,工程师为了提升 10% 的性能,可能扩大缓冲区或增加执行能力。逐步改动会让各部分越来越复杂,直到增加功能也收效甚微。
在计算机设计中,工程师为了提升 10% 的性能,可能扩大缓冲区或增加执行能力。逐步改动会让各部分越来越复杂,直到增加功能也收效甚微。
看似根本性的极限,也可能来自问题的划分方式以及各功能之间的相互作用。Keller 说,重新设计有时既更快又简单得多,因为它改变了这些边界。
Keller 说自己比很多人更倾向于每三到五年重新设计计算机架构;他认为要取得大幅进步,约五年是合适的节奏。这是他的工程判断,并非适用于所有项目的通用时间表。
他区分自己参与编写规范的 x86-64 指令集与其底层实现。指令集可以保留并扩展,而历代微架构则可能发生重大变化。
短期与长期取舍
重新开始令人不安,因为渐进工作能提供可见的短期进展。新设计即使有更大的长期改进空间,最初的表现也可能不如高度优化的旧设计。
重新开始令人不安,因为渐进工作能提供可见的短期进展。新设计即使有更大的长期改进空间,最初的表现也可能不如高度优化的旧设计。
Keller 对比季度目标的压力与长期性能需求。一种可能的方法是在改进现有设计的同时,并行开发替代方案。
新处理器的平均速度可能更快,但某些工作负载会变慢。市场团队可能希望所有项目都有提升,而个别客户最在意的恰好是变慢的那一项,这让取舍变得困难。
同频道的其他文章
3:34:27EN → 简体中文
3:36:56EN → 简体中文
5:15:51EN → 简体中文
3:12:58EN → 简体中文
3:46:18EN → 简体中文
3:51:47EN → 简体中文