Jim Keller 在中文网站上有一个昵称,“硅仙人”。
“硅”就是芯片,“仙人”自然区别于凡人。
这个显然是对Jim Keller一生化腐朽为神奇,点硅成金之术的肯定。
Jim Keller 毕业于宾西法尼亚州立大学,在那里获得了电子工程学士学位。与其他芯片领域大神常见的硕士和博士不同,Jim Keller一直就是学士,学士学位成就非凡,这也是天生异数。
毕业后,Jim Keller 供职于当时如日中天的DEC公司,并且一干就是15年。
当他是一个芯片研发新人的时候,当时在DEC接受培训,有人进来问了Jim Keller一个关于层次设计问题,Jim Keller觉得这个人说的一半有道理,另一半则非常愚蠢,然后Jim keller就和这个人开始争论,一个小时后,谁也没有说服谁,直到这个人走了,旁边的人才告诉Jim Keller,那个人是戈登·贝尔。DEC的首席技术官。
多说一句,戈登.贝尔被誉为小型机之父,还有一个以他命名的奖项,戈登贝尔奖(GORDONBELL PRIZE),主要颁发给高性能应用领域最杰出成就,通常会由当年TOP500排行名列前茅的计算机系统的应用获得,太湖之光的应用也曾获得此殊荣。
在DEC的十五年中,从初出茅庐,还是一个芯片小白的“莽撞人”,到一个可以独挡一面的芯片架构师。Jim Keller期间参与和主导了并参与了Alpha 21164和21264两款处理器的设计,这两款处理器影响了很多架构师和设计者。
离开DEC之后,Jim keller 开始了他开挂的芯片设计人生。
Jim keller先是在AMD担任处理器K8的架构师,K8架构第一次让AMD具备了可以和Intel掰掰手腕的能力,同时还参与设计了X86-64的架构设计,X86-64架构使AMD第一次在技术路线上领先了intel。这两项成就都让Jim keller名声大震。
随后Jim Keller 去了sibyte 做基于MIPS的网络处理器。后来2004年离职加入P.A. Semi。
2008年,苹果公司出手收购P.A. Semi,Jim Keller也自然成为苹果公司的员工。在苹果工作期间,Jim Keller主持设计了A4、A5两代移动处理器,用在iPhone 4/4s、iPad/iPad2等设备上。Jim Keller开启了苹果自研手机处理器的之路,据说自研的处理器让乔布斯非常满意,要知道苹果最早的iPhone3的处理器是三星的处理器,能够从定制苹果自己的处理器,这个对于乔布斯来说是一个非常大的进步。
2012年,Jim Keller 重回AMD,开了他的封神之路,开始着手主持设计新一代微架构,代号为:Zen(禅)。这是一个革命性的架构,这个架构号称将把AMD处理器性能提升40%。
所有人都认为Jim Keller吹牛。
Jim Keller的牛X之外在于,当年吹的牛,最终都实现了。
Zen架构成为了AMD历史上最著名的架构,同时也是AMD的翻身之路。Jim Keller 也获得了Zen 之父的美誉。
中国海光就获得了ZEN的第一代架构的授权。第一次在当时拥有了最先进的X86的架构。
下图可以看到,Zen发布后,红线是AMD的出货量。可以看到2015年后,ZEN发布后,AMD奋起直追,直到反超。Zen也是AMD的翻身之战,也是Jim Keller的封神之战。
事了拂衣去,深藏功与名。
2015年9月,Jim Keller再次离职AMD,这一次是被埃隆·马斯克说服,Jim Keller要给特斯拉的自动驾驶研制世界上最好的AI芯片!这次在Jim Keller在特斯拉工作三年,研发的AI芯片最终产品据说有100万的出货量。
2018年,Jim Keller 入职INTEL,在INTEL,Jim Keller 最多的时候,领导了10000人的工程师,这个记录很难被打破,由于和INTEL签署保密协议的,所以这个阶段Jim Keller到底做了些什么,一直讳莫如深。
2年后,2020年,Jim Keller离开INTEL 去创业,担任Tenstorrent的联合创始人兼任CTO,负责AI方面的创业工作。
虽然去创业公司领导的人少了,但是Jim Keller这次是在AI/ML芯片领域的创业却富有激情。一方面是因为可观的股份,另一方面也有对他忽悠来创业朋友的承诺。
在第一家公司待了15年,可谓十五年磨一剑。
后面Jim keller基本上几年就要换一份工作,
关键是每份工作还都富有创新和成果。
这个还是非常了不起的。
这些成就,也是Jim keller成为所有芯片工程师心中的大神,成为一个封神的业界传奇。
他其本身一些关于芯片研发的方法论,也成为了传奇的一部分。
一:目标管理之道
Jim keller在苹果时,就在手机SOC项目中开始大核架构的设计。
这个时候,是苹果第一次来做手机SOC芯片,按照这种人设,苹果首先应该先把ARM提供IP玩熟练再说。
Jim Keller提出处理器更大的基础结构更重要。
当需要处理器更强大时,有两种方法可以做到:一种方式是基本结构做得更大,简单说就是一个大核。第二种是调整功能,搞一堆小核。明显前者的难度更大,也更有效,因为不是所有程序都可以并行到多核上执行,就有某些设计厂商设计出”一核有难,七核围观“的场景
所以苹果的SOC总时以更少的核数,来达到手机SOC中最强的性能,这个是别的手机SOC公司难以比拟的优势。
而在开始手机SOC规划时,Jim Keller就开始了这种雄心勃勃的路线图。
做正确的事,而不是容易的事。
在苹果属于开辟一个新业态,而在第二次入职AMD时,Jim Keller的挑战更大。
因为他发现,虽然落后于Intel,但是AMD的路线图并不激进。
如果处于落后地位,还按部就班,结局可想而知。
为了扭转局面,Jim Keller制定了雄心勃勃的计划,目标把ZEN的性能提高40%,做成一个大核,让IPC每个时钟执行的指令数目更多。
这次Jim Keller捅了马蜂窝。
在指定”ZEN“的目标时,副总裁Suzanne打电话给Jim Keller说,”ZEN“项目组不相信这个目标是合理的,因为太超出实际了,团队成员都很不相信这个目标可以达成。
步子迈的太大。
都是在这个行业的人,这个问题相信做了那么多年的AMD老员工都会有自己的判断力。
而Jim Keller回复则是,我需要一个会议室和一块白板。
他要舌战群儒。
当然还要借助白板的力量。
当进入会议室时,Jim Keller说,他当时要向30个愤怒的人来解释为什么”Zen“可以做到。
当然,也有的确当时也有大家都解决不了的问题存在。
就像诸葛亮舌战群儒,还有鲁肃帮忙,这次是Mike Clark(现在已经是AMD的企业院士了)出现了。
Mike Clark说,这些都可以解决。
Mike Clark 事后说“我们很难才去说服我们的团队我们能够实现40%的改进,这是一个非常难以实现的目标。但是为了更具竞争力,我们必须实现。”
这个就是目标的力量。
有的人因为看见而相信,有的人因为相信而看见。
这次,Jim Keller相信了,Mike Clark 也相信了。
相互信任的团队比那些需要谈判和协议约束的团队更战斗力。
最后的故事,大家都知道了,ZEN 大获成功。
舌战群儒这个这个桥段,在各种访谈中出现好几次,就是如何说服团队,ZEN要提升40%的性能。
这个其实另外可以产出一篇论文,就叫《论白板在芯片研发中的重要性》。所以说每个芯片公司会议室都要有很一块白板,没有白板的芯片公司不是一个正经的芯片公司,芯片公司三大利器,会议室,白板,EDA工具。
一个路标确定了,接下来的几代演进都有很明显的事情要做。
演进一直在路上,从Zen到现在最新的Zen4。
Jim keller说出了一个事实,就是芯片设计要考虑长远,没有前瞻性的芯片路标,就会处处受挫。
这也就是Jim keller的遗憾,虽然在AMD工作三年,从2012年到2015年,但实际上,Jim keller并没有看到Zen上市的那一天。
芯片的研发周期,特别是大型芯片的研发周期在12个月甚至更长的时间,从构想,设计,量产,市场反馈,短则1-2年,长则更久,因此要看到5年后的芯片形态就非常重要。
目标长远,
有多远?
至少要考虑5年。
Zen的研发梦之队--前排Mike Clark 和Suzanne
二:组织管理之道
芯片比最初问世的时候复杂几百万倍,按照摩尔定律十八个月还要翻一倍,而人的大脑的处理能力基本没有变化,并没有变得更聪明。
芯片设计不能超越人类的能力。
如果需要构建更大更复杂的东西,就必须抽象分层。
Jim Keller认为。如果没有抽象分层,加入更多的人,项目会减速,而不是加速。
这也是好多项目leader犯得的错误,项目很大,通常做法是再加入100多人参与,就好比《人月神话》中难题。
面多了加水,就变成了浆糊。
Jim keller的演讲中,分层抽象的理念,不仅涉及到工程组织的很多方面,也涉及到生活。
这个分层抽象的理念好处是可以独立地升级不同的层,而不影响上面和下面的层。
分层抽象,这成为Jim Keller个性中无处不在的元素。
解决的问题的方法是分层,确定层与层之间的接口。
在AMD时,设计CPU项目,有Mike Clark(目前已经是AMD的企业院士了)这样的负责核心架构师,有一般架构师,还有微体系结构师,最下一层写RTL实现的人员。
这个就是处理器芯片设计分层的方法,也是Jim keller实践中最常用结构。
Jim keller在不同抽象层级之间的接口定义好,不同层级的人他们实际上不必知道跨层的细节。
保证岗位不同的人都能顺利的工作,而不是浪费时间在低效的沟通上面。
但是Jim Keller也不是一开始就意识到分层抽象的重要性,最初在设计EV6上的接口上,也就是后来被称为S2K总线的接口上,Jim Keller总是专注于加载、存储、读取、写入等等事务层的概念。而一个朋友解释了虚拟通道是如何工作的,以及如何拥有独立的抽象信息通道。
那次Jim受教育的成果就是HyperTransport。
它有很多S2K协议,但是它是以一种更抽象的方式构建的。
所以从晶体管到架构,不可能是同一个人,也不可能是同一类人,这个是Jim Keller 悟道的结果。
在AMD最早时候,Jim Keller加入AMD时有500人。在接下来的三年里,SoC团队、Fabric团队和一些IP团队加入了Jim Keller领导团队。当Jim Keller离开的时候,有2400人给Jim Keller汇报。
所以Jim Keller开玩笑说,他几乎没有在AMD写过任何的RTL(verilog),所以最多算作“Zen”的叔叔。而不是”Zen“之父。
毕竟参与“Zen”的人员直接和间接的可能达到了上千人。
与抽象分层,分而治之相似的还有团队组建。
经常有一些领导在从一家公司跳槽另一家公司时,都喜欢把自己的旧部带去,尝试复制他们之前的团队。
这个也好理解,毕竟,衣不如新,人不如旧。
但是Jim Keller 并不认同这种做法。
这种做法对于原团队的人明显是一个伤害,但是创业公司除外,因为就没有人,需要从零开始。
针对如何构建团队?
他做了一个绝妙的比喻。
新的入职的公司(如AMD)类似一个大理石,而所需要的团队(如Zen的开发团队)好比这个精美的雕塑。而Jim Keller就化身米开朗琪罗。
大理石在那里,雕塑就在大理石里面,而米开朗琪罗也就是Jim keller要做的就是把多余的石头去掉。
用和不用,人员就在那里,不多不少。
进入AMD,包括入职Intel,Jim keller都是在已有的团队重新调配人员,并没有空降任何自己的老朋友。
Jim Keller希望的是方法和思维都有所不同的人,这样才能有机会得到碰撞,每个人都能碰撞思想的火花,才能有机会一起创造新的东西。
如果做个简单芯片的竞品,简单模仿竞品,别人有什么,我也模仿做什么,这样的逻辑方式可能不需要思想的碰撞。
但是如果去做没有人达到过的芯片领域,去引领行业发展,而不是亦步亦趋跟在别人后面,不同人思想的碰撞则是必不可少途径。
JIM Keller的想法是,如果你有十个非常优秀的团队都工作得非常好,然后你从每一个团队中选出一个人组成一个新的团队,这可能会更好,因为他们会重新选择最好的想法,这个组建团队过程就是rebuild。
当然在特斯拉除外,因为特斯拉本身就没有做芯片的团队,所以一切从零开始,需要来重新组建。
所以组建团队而不是任人为亲,或者复制以前的队伍,要心态开放,与不同观点的优秀的人思想碰撞,更能达到更高的维度。
君子和而不同。
三:人员管理之道
Jim Keller说没有不好的员工,只有不好的员工和工作匹配。
这个是口号也是实践。
年轻的时候,Keller觉得这种口号很愚蠢。
但是随着经历的增长,这种情况出现了很多次。
那就是很多被解雇的人在其他领域获得了巨大的成功。
后来,Jim Keller解释说他们当时工作不好,只是被情绪困住了。
树挪死,人挪活。
这句话中国谚语,虽然Jim Keller没有听过,不过他肯定实践中悟出了真谛。
因此就需要激励员工来做事,而不是仅仅安排芯片工程师完成任务。
Jim keller说:很少人为别人的梦想实现感到兴奋,因为计划是这个主管的梦想,而不是仅仅工程师的梦想计划。如果你不感到兴奋,则就不会投入自己的精力。
谁的孩子谁养。
如果这个芯片不看作是自己的孩子,那么很难能让那么多芯片的“叔叔”投入(one of the uncles)。
如果需要芯片工程师施加激励,就必须指定一个计划,找出合适的人选。
然后激励不同层次的人都能实现自己梦想。
把每个团队成员和项目的一部分联系起来,让每个人找到组织中的位置。
给所有的人一个目标和成长的空间。
执行计划,找出合适人选,激励他们改变心态,丢掉以前的包袱,拥抱变化。
唯一不变的东西就是变化本身,用大任务驱动,不断前进。
虽然入职时间都不长,但是在每一个公司,jim keller都做出了非常重要的成果。
比如”ZEN,最牛的处理器“或者自动驾驶芯片。
而Jim keller的目标,就是通过一个大项目,例如”ZEN“来激励团队推进整个工作。
当项目开始时,芯片的现状是千头万绪,项目结束时,芯片的未来则是“技惊四座”。
这个并不容易,因此不论是方法论还是做事逻辑,成熟的公司都有自己的一套体系。
Jim keller需要给一台旧车安上新引擎。
当初入职英特尔的时候,Jim Keller 看到英特尔工程师好多人都认为摩尔定律已经死了。
“摩尔定律公司认为摩尔定律的已经死亡”。
没有比这个更讽刺的事情了。
重新激励员工走出这个认识,就是Jim keller最重要的事情。
如果要制造更快的计算机,那就必须摆脱这些误区,而TSMC也证明了摩尔定律还在不断前进。
Jim keller 通过工程师谈话,公开演讲,努力想要解决掉这个问题。
那就是”摩尔定律“还起作用,而这个是制造更快的计算机的基础。
需要驱动整个英特尔团队继续前进。
这个一直是Jim keller在做的事情。
很多人可能对自己或者他人在组织中取得地位不满,
拥有地位的最好方法就是做一些伟大的事情,这个就是目标。
达成这个目标,每个人都认为你很伟大。
给人员以梦想,而不是给梦想以人员。
四:自我提升之道
Jim Keller自嘲道,他是特斯拉最懒的人。
特斯拉有一种每天工作12小时的文化,对于这种特斯拉“996”的风气,Jim Keller并不是很认同。
特斯拉公司旁边有一间健身房。健身房旁边就是适合徒步的鹿溪,Jim 上班时就去健身房就常常花一个小时去那里锻炼和吃东西。
Jim Keller 喜欢锻炼,喜欢孩子们在一起,喜欢睡觉,吃饭和喜欢读书。
当然也喜欢工作,只不过不是“996”的工作。
Jim Keller的秘诀是,如果一旦发现自己有太多的事情要做,就会找到一个比他更想做的这些事人,他自己就可以从这些事中超脱出来,从事那些他认为更重要的工作。
除了工作,Jim Keller就通过读书来提升认知,这也是他从小保持的习惯。
Jim Keller小的时候,他的父母开了一个读书俱乐部。但在七年级或八年级左右的时候,他已经读了家里所有的书。
Jim Keller小时候最喜欢的作家之一是多丽丝·莱辛。包括她的一系列科幻小说,多丽丝·莱辛获得2007年度诺贝尔文学。主要作品包括《简述地狱之行》、《幸存者的回忆》、系列小说《南船星系中的老人星座:档案》。
在这些作品中,多丽丝.莱芯、辛提出问题,启发读者去思考。
只有通过文化交流,相互沟通,互补互利,才能合作共赢。当然,交流合作必须以平等互利为原则,绝不能以一方为中心,而迫使另一方被边缘化。多丽丝·莱辛认为,很多危机的根源,在于自我封闭以及交往过程中强势一方的自我中心主义。
除了科幻,包括历史,人类学,心理学,还有神秘主义,有很多不同的东西,都是Jim Keller所涉猎的。
Jim keller保持一周读两本书习惯。同时,除了传统书籍,Jim keller也很推崇Venkatesh Rao的博客,Venkatesh Rao以Ribbonfarm博客和其他一些东西而闻名。Jim keller很喜欢他在博客里对组织的思考。其中一些书单也是Venkatesh Rao提供的。
大多数情况,读书是为了兴趣。
但是也有一些有目的的读书。
比如在他担任第一个管理职位之前,他读了20本关于管理技巧的书,Jim Keller说”我读的管理书籍比大多数经理读过的都多20本。
反过来是说,大多数经理对管理的书不太关注,一本也不读。
如果是了解管理学,jim keller说最好读卡尔.荣格的书,而不是《从优秀到卓越》。
管理需要悟道而不是灌输。
多说一句,卡尔.荣格是弗洛伊德的学生,后来又和弗洛伊德分道扬镳,创立了荣格人格分析心理学理论,主张把人格分为意识、个人无意识和集体无意识三层。
所以之后,Jim keller推荐后,看到芯片技术总监案头放上卡尔.荣格的《未发现的自我》,而不是《从优秀到卓越》,也不用奇怪,这也是必读书单之一。
多读书,读好书,这个是Jim Keller的态度。很难说”读这4本书,可能会改变你的生活“,但是读1000本书,肯定会。
量变引起质变。
保持热情,持续学习。
这个就是Jim Keller的自我提升之道。
本文来源:歪睿老哥,原文标题:《“硅仙人”Jim Keller的芯片研发封神之道》