1. 程式人生 > 資訊 >矽谷晶片大神 2 萬字專訪:自稱“特斯拉最懶的人”

矽谷晶片大神 2 萬字專訪:自稱“特斯拉最懶的人”

在晶片界,你很難再找到像 Jim Keller(諧音:金坷垃)這樣的傳奇人物,僅僅手握本科學歷,卻在過去 20 年間攪動了大半個矽谷的晶片風雲。

他是計算機產業的超級巨星,從 DEC 起步,輾轉於 DEC、AMD、博通、蘋果、特斯拉、英特爾等頂尖企業之間,屢屢研發出里程碑式的晶片。如今,這位“矽谷遊俠”正在摸索職業生涯的下一個錨點 —— 作為一家 AI 晶片創企的 CTO 兼總裁。

近日,在外媒 AnandTech 的 Ian Cutress(伊恩・庫特雷斯)與 Jim Keller 的一場深入對話中,你會看到這位技術大牛成長的軌跡,從初出茅廬時的青澀莽撞,到轉型管理崗位時的手忙腳亂,再到如今,在兼顧工作與生活方面遊刃有餘。

褪去從業經歷帶來的光環,他有許多接地氣的一面。他自稱是“特斯拉最懶的人”,拒絕“996”,一天至少要睡夠 7 小時,會為人際關係感到煩惱,喜歡睡覺、吃飯和看書,吐槽工作佔據的時間比想花在它上面的時間多得多。

他也曾年少輕狂,剛入職第一家公司就與 CTO 爭辯 1 小時,還嫌對方的一部分想法是“愚蠢的”;他曾經不知道怎麼合作,認為必須自己親自上手每一件事,“像瘋子一樣工作”。

面對既有的成就,Jim Keller 十分坦然地自我稱讚:“就交付具有持久價值的產品而言,我的成功是相當高的。”但他並未自恃天才,認為自己“沒那麼聰明”,是靠毅力與堅韌才走到今天。

他反對被稱作“Zen 之父”,說自己只算得上“叔叔之一”。從特斯拉離職至今已有 3 年,他提到現在與馬斯克聯絡不多,“最近沒有和他說過話”。另外,他也提到喜歡跟英特爾前任 CEO 司睿博一起工作,並希望英特爾新 CEO 基辛格一切順利。

當然,在這次長達 2 萬字的深度專訪中,你還將讀到這位晶片專家如何對曾經在 AMD、蘋果、英特爾的從業經歷如數家珍,並奉獻了許多充滿洞察力的、經過深思熟慮的思考與見解。

從工程師轉型到管理者,從帶隊幾十人到領導 1 萬人,他在經過大量閱讀和實踐經驗積累後,摸索出一套行之有效的團隊組建與職場管理方法論,並將抽象分層的思路應用到生活之中。

除此之外,他暢談了許多關於晶片架構設計本身的想法,包括對 RISC-V 與 Arm、x86 競爭的思考,以及對人工智慧(AI)晶片未來的預判。

他還在交流過程中做了圖書推薦,如果你想讀管理類的書籍,《從優秀到卓越》(Good to Great)不是個好選擇,倒不如讀卡爾・榮格(Carl Jung)的書。

芯東西在不違背原意的前提下,對此次 Jim Keller 接受 AnandTech 深度專訪的內容加以完整編譯。

原文連結:

https://www.anandtech.com/show/16762/an-anandtech-interview-with-jim-keller-laziest-person-at-tesla

01.“我是 Zen 的叔叔之一”

問題 1:您曾為 AMD 的 Zen 和 SkyBridge 平臺工作,如今 AMD 的 Zen 產品線正在獲得更多市場份額,您也將開始做更好的事。不過在那個專案中,關於您在 AMD 的確切角色眾說紛紜。

有人認為,您在確定 Zen 以及後面 Zen2、Zen3 高階微架構的設計方面功不可沒。還有人認為,您把人安排好,在高層簽字,然後專注於 Arm 版本的 SkyBridge、K12。可以告知您在那裡承擔的角色嗎?您對 Zen 和 K12 的深入程度如何?或者您參與了像 Infinity Fabric 這樣的專案嗎?

Jim Keller:是的,這是個複雜的專案。我加入 AMD 時,他們有 Bulldozer(推土機)和 Jaguar(美洲豹),它們都有些獨特之處,但在市場上並不成功。其路線圖不激進,落後於英特爾,但落後不是件好事,你最好追趕,而不是落後。

所以我接過這個角色,作為 CPU 團隊的總裁,我認為當我加入時有 500 人。在接下來的三年裡,SoC 團隊、Fabric 團隊和一些 IP 團隊加入了我的團隊。我想當我離開時,被告知已有 2400 人。

我是一名有員工的副總裁,有直接向我報告的高階董事和高階研究員,我的員工有 15 人。因此我幾乎不寫 RTL!

也就是說,我們做了很多事情。我是一位計算機架構師,不是真正的經理。我想這是我當時擁有的最大管理角色。在那之前,我一直是一家初創公司的副總裁,但那是 50 人,我們都相處得很好 —— 對我來說,這是一個完全不同的遊戲。

我知道,我們必須做出的技術改變將包括讓人們與它一致。我不想成為一名設計師,一邊與副總裁爭論為什麼有人能做或不能做這項工作,或者為什麼這是正確或錯誤的決定。

我跟 Mark Papermaster(現任 AMD 首席技術官兼執行副總裁)聊過,告訴他我的理論,他說:“好吧,我們會試試看”,效果很好。

有了這個,我就有了直接的權力。但人們不會真的去做他們被要求的事情,而會做自己受到激勵去做的事情。所以你必須制定一個計劃,其中一部分,是找出合適的人來做不同的事情。

有時有些人真的很優秀,但人們非常投入於他們上次做的事情,或者他們相信事情無法改變,我的觀點是事情很糟,幾乎所有事情都必須改變。

所以我默認了。並不是我們沒有找到很多好用的東西,但你必須證明舊東西是好的,而不是證明新東西是好的,因此我們改變了這種心態。

在架構學上,我非常清楚我想要做什麼以及為什麼。我在公司內部找到了一些人,比如 Mike Clark(邁克・克拉克)、Leslie Barnes(萊斯利・巴恩斯)、Jay Fleischman(傑伊・弗萊施曼)等。有相當一部分非常優秀的人,當我們描述自己想做什麼,他們會說“是的,我們想那樣做”。

我在架構上有一些投入,經常有決策和分析,人們有不同的意見,所以我相當親力親為。但我沒有做框圖或寫 RTL。我們正在進行多個專案,有 Zen,有 Arm 的表親、後續專案,還有一些新的 SoC 方法。

不過我們所做的不僅僅是 CPU 設計,我們做了方法學設計、IP 重構、非常大的組織變革。我自上而下地處理了這些東西,這很有意義。

問題 2:有些人認為你為“Zen 之父”,你認為你接受這個稱謂嗎?還是應該歸給別人?

Jim Keller:也許是其中一個叔叔。Zen 團隊中有許多很棒的人,有一個分佈在世界各地的團隊,SoC 團隊部分在奧斯汀、部分在印度,浮點快取在科羅拉多州完成,核心執行前端在奧斯汀,Arm 前端在森尼維爾,我們有很好的技術領導者。

有一段時間,我一直在與 Suzanne Plummer(蘇珊娜・普盧默)、Steve Hale(史蒂夫・黑爾)以及科羅拉多(Colorado)團隊進行日常溝通,他們在某種程度上構建了 Zen 核心的前端。

他們都超棒。Mike Clark(邁克・克拉克)是一位出色的架構師,我們有很多樂趣和成果。成功取決於很多人,失敗取決於一個人。這是個成功。

然後一些團隊開始進步。我們把挖掘機架構移給波士頓團隊,他們接手完成設計和實物工作,Harry Fair(哈里・費爾)和他的團隊在這方面做得很好。

我們做了一些相當緊張的組織變革。我認為這其中有很多的同志情誼。所以我不會自稱是“(Zen 的)父親”,我是作為發起者和主要推動者被引入的,但我一部分是架構師,一部分是轉型的領導者。那很有趣。

問題 3:您在 AMD 做的所有事情,現在都完成了嗎?還是仍有些路線圖之類的東西要出來?從你幫助傳播的理念來看,你是怎麼想的?

Jim Keller:當你建造一臺新電腦,而 Zen 是一臺新電腦時,工作已經在進行了。你基本上構建了一個路線圖,我在想我們五年來要做什麼,一個接著一個晶片。我們在蘋果打造第一個大核心時也這樣做,(在設計中)構建了大骨架。

當你想讓計算機更快時,有兩種方法可以做到:讓基本結構變大,或者調整功能。Zen 有一個大結構。然後,接下來幾代人有明顯的事情要做。他們一直在堅持做這件事。在某個時候,他們將不得不進行另一次大的重寫和改變。我不知道他們是否已經開始這樣做了。

過去幾年,我們為架構效能改進的計劃相當大,他們似乎在執行這項工作方面做得很好。但我已經離開那裡一段時間了 —— 四五年了。

問題 4:是的,我想他們說 Zen3,上一個剛出來的是改寫的。所以我想有些人會認為,那仍是在您的指導下?

Jim Keller:是的,很難說。即使當我們做 Zen 時,我們也是從零開始做設計的 —— 在頂部做一個乾淨的設計。但當他們打造它時,有一大堆來自推土機(Bulldozer)和 Jaguar(美洲豹)的 RTL,它們非常好用,只需被修改並嵌入到新的 Zen 結構中。所以硬體人員很擅長使用好的程式碼。

因此,當他們說他們做了一個大改時,他們可能拿了一些片段,並在頂部進行重構,但當他們構建程式碼時,如果 20%~80% 的程式碼是相同的,或者輕微修改,這並不奇怪,很正常。

關鍵是採用正確的結構,然後根據需要重用程式碼,而不是採用一些複雜的程式碼並試圖調整它以達到某個目的。所以如果他們重寫了,可能會修正了結構。

02. 在英特爾管理 10000 人

問題 5:我不確定您是否還在接受保密協議,您在英特爾的工作像是一個全新的開始嗎?可以詳細談談您在那裡做了什麼嗎?

Jim Keller:顯然我不能說太多。我曾擔任(英特爾)矽工程集團高階副總裁,團隊有 1 萬人。他們做了很多不同的事情,這太神奇了。從設計到原型,從除錯和生產,總共大約有 60 到 70 個 SoC。這是一個相當多樣化的團體,我的員工都是副總裁和高階研究員,這是一個很大的組織。

我原以為我會去那裡,因為那裡有很多新技術要去做。我大部分時間都在與團隊一起研究組織和方法的轉換,比如新的 CAD 工具、新的方法、構建晶片的新方法。

在我加入之前的幾年,他們開始了所謂的構建晶片的 SoC IP 想法,而不是 0 歷史整體視角。老實說,這並不順利,因為他們採用了整體晶片,採用了出色的客戶端和伺服器部件,然後簡單地將其拆解。你不能只是把它拆解,而必須真正重構這些部分和一些方法論。

我們發現許多內部人員對此感到非常興奮,我還花了很多時間在 IP 質量、IP 密度、庫、特徵描述、製程技術上。你能想到的,我都在。我的日子過得有點瘋狂,有時我一天會有 14 種不同的意義。只是點選、點選、點選,很多事都在發生。

問題 6:這些會議,您是怎麼完成的?

Jim Keller:我什麼都沒做!我被告知是高階副總裁,負責評估、制定方向、做出判斷,或者嘗試一些組織變革或人員變革,過一段時間就能積累起來。要知道,實現目標的關鍵,是知道你要去哪,然後建立一個知道如何做到這一點的組織,這需要做很多工作。所以我沒寫多少程式碼,但發了很多簡訊。

問題 7:現在英特爾有了一位專注於工程的新 CEO 帕特・基辛格(Pat Gelsinger)。如果機會合適,您會考慮回去嗎?

Jim Keller:我不知道。我現在有一份非常有趣的工作,在一個爆炸性增長的市場中。所以我祝他一切順利。我認為這對於帕特來說作為 CEO 是一個不錯的選擇,我希望這是一個好選擇,我們會拭目以待。他確實非常關心英特爾,他過去也取得了真正的成功,肯定會給公司帶來更多的技術關注點。但我喜歡和司睿博(Bob Swan)一起工作,所以我們拭目以待。

03. 跳進跳出特斯拉英特爾,玩得很開心

問題 8:您當前在一家名為 Tenstorrent 的公司,和老朋友 Ljubisa Bajic(Tenstorrent 執行長)一起。縱觀整個職業生涯,您基本上都在從一家公司跳到另一個公司。您總是在尋找另一個專案、另一個機會、另一個角度。恕我直言,Tenstorrent 會成為您永遠的家嗎?

Jim Keller:首先,我在 Digital(DEC)工作了 15 年,對吧?!現在是一種不同的工作,我在中檔組,用 ECL 製造冰箱大小的計算機。我曾是 DEC Alpha 團隊的一員,我們打造了微處理器,很小的東西,但在當時我們認為它們很大,300 平方毫米、50 瓦,這令每個人都大吃一驚。

我在那兒待了一段時間,然後在網際網路高峰期去了 AMD,我們在幾年內做了很多事情,啟動了 Opteron(皓龍處理器)、HyperTransport、2P 伺服器,這是一個旋風般的地方。但我被網際網路的熱情吸引了,我去了 SiByte,它被博通收購了,我在那裡總共待了 4 年,交付了幾代產品。

當時我在 P.A. Semi 工作,我們交付了一個很棒的產品,但出於某種原因,他們並不想出售該產品,或者他們想要將其賣給蘋果。隨後蘋果買下了 P.A. Semi,我就在那個團隊工作,所以你知道我在 P.A. Semi 和蘋果之間徘徊,那已經 7 年了,所以我並不覺得跳得太多。

之後我跳槽到 AMD,我想,這是一段很有趣的時間。再後來,我去了特斯拉,在那裡,我們交付了 Hardware 3.0(特斯拉自動駕駛晶片)。這是一種現象。從靜止起步到 18 個月內駕駛一輛汽車,我認為這是前所未有的,而且那個產品發貨真的很成功。他們去年建了 100 萬套。特斯拉和英特爾是另一種旋風,所以你可以說我跳進去又跳出來,確實玩得很開心。

是的,我去過一段時間。我喜歡這樣想,我大部分時間,都用在完成我想要完成的事情。就交付具有持久價值的產品而言,我的成功是相當高的。我不是那個在生產中調整事情的人,這要麼是一張乾淨的紙,要麼是一場徹頭徹尾的災難。

這似乎是我最擅長的事情。瞭解自己真好 —— 我不是運營經理。Tenstorrent 更像是一張乾淨的紙。AI 領域正在爆發。這家公司本身已經成立多年了,但我們正在打造新一代部件,然後推向上市,開始銷售。我是 CTO 兼總裁,在公司中擁有大量股權,無論是基於財務還是對那裡的朋友的承諾,我都打算在這裡待一段時間。

問題 9:您之前說過,超越了矩陣,你最終會得到巨大的圖結構,特別是對於 AI 和 ML,關於 Tenstorrent 的全部要點,它是一個圖形編譯器和圖計算引擎,而不僅僅是一個簡單的矩陣乘法?

Jim Keller:有少量電晶體時,你可以做標量數學運算,比如 A=B+CxD。現在我們有了更多的電晶體,你可以說“我能做一個這些電晶體的向量”,就像一步做一個方程。

得到更多的電晶體後,我們可以做矩陣乘法。當獲得更多電晶體,你想進行這些大運算並分解它們,因為如果你的矩陣乘數太大,僅僅通過單元的能量就是一種能源浪費。

你會發現你想構建這個最優大小的塊,它不會太小,就像 GPU 中的一個執行緒,但它也不會太大,就像用一個矩陣乘數覆蓋整個晶片一樣。

從能耗的角度來看,這是一個非常愚蠢的想法。你將獲得這個中型大小處理器陣列,其中中型處理器像是 4TOPS。這對我來說仍然很有趣,因為我記得那是個非常大的數字。

一旦你把它分解,現在你必須把大運算對映到處理器陣列,AI 看起來像一個非常大運算的圖。它仍然是一個圖,然後將大運算分解成較小的圖。現在你必須將它放在一個有很多處理器的晶片上,並讓資料流繞在它周圍。

這是一種與執行向量或矩陣程式非常不同的計算方式。我們有時稱之為標量向量矩陣。Raja 過去稱它為空間計算(spatial compute),這可能是一個更好的詞。

問題 10:除了 Tensix 核心,Tenstorrent 還在為下一代的核心中新增向量引擎?這是怎麼一回事?

Jim Keller:還記得通用 CPU 上有向量引擎嗎?事實證明,當你執行 AI 程式時,你想有一些通用計算。在圖中,有時你想根據 AI 操作的結果執行 C 語言程式,因此將計算緊密耦合是很好的。通過將其儲存在同一晶片上,延遲非常低,來回消耗的能量也很合理。

所以,是的,我們正在為此制定一個有趣的路線圖。這是一個很小的計算機架構研究領域,比如,加速計算和通用計算的正確組合是什麼?人們如何使用它?如何以一種程式設計師可以實際使用的方式來構建它?這就是我們正研究的技巧。

04. 處理更復雜的事情,必須藉助工具和組織

問題 11:縱觀您的職業生涯,您在高效能運算和低功耗高效計算之間徘徊。現在,您正處於 AI 加速的世界。有過無聊的時候嗎?

Jim Keller:不,這真的很奇怪!它變了,變了很多,但在某種程度上,它完全沒有改變。底部的計算機,它們只是將 1 和 0 加在一起。這很簡單。011011100,沒那麼複雜。

但我曾研究過 VAX 8800,用每個晶片有大約 200 個“或門”的柵極陣列構建它。如今在 Tenstorrent,我們的小計算機,我們稱之為 Tensix 核心,每個核心每秒有 4 萬億次操作,一個晶片裡有 100 個這樣的處理器。因此架構模組已經從 200 個門轉移到 4TOPS。這有點瘋狂。

這些工具比以前好得多。你現在能做的是,除非抽象級別改變,工具改變,否則你無法構建更復雜的事情。這方面發生了很多變化。

當我還是個孩子時,我曾經認為我必須自己做每件事,我像個瘋子一樣工作,一直編碼。現在我知道如何與人合作,如何與組織合作,如何傾聽,諸如此類的人際交往技能。人際交往能力上,我可能會有一個相當不平衡的記分卡!我確實有一些。

問題 12:您認為現在的工程師需要更多的人際技能嗎?因為每件事都很複雜,都有單獨的抽象層,如果想兼顧它們,必須有相應的基礎知識。

Jim Keller:現在這是基本的事實,人們沒有變得更聰明。因此,人們不能繼續處理越來越多的事情 —— 這太蠢了。你必須建立工具和組織,來支援人們做複雜事情的能力。

VAX 8800 團隊有 150 人。但在蘋果建造第一個或第二個處理器的團隊,第一個大型定製核心,只有 150 人。現在 CAD 工具好到令人難以置信,我們使用 1000 多個計算機進行模擬,此外,我們還有工具可以佈局佈線 200 萬個門,而不是 200 個門。

因此,有些事情發生了根本性變化,但一位工程師一天內可能會交談的人數根本沒有改變。如果你有一個工程師每天和超過五個人交談,他們會失去理智。所以,有些東西是真的恆定的。

05.CPU 指令集:Arm/x86 VS RISC-V

問題 13:我想了解一下您對 CPU 指令集的看法。具體的問題是,我們應該如何處理基本的限制?如何轉向更好的?以及在 Arm、x86 與 RISC-V 方面,您如何入局?我記得有一次,您說大多數計算髮生在幾十個操作程式碼上,對嗎?

Jim Keller:(關於指令集的爭論)是一個非常悲傷的故事。它甚至不是幾十個(操作程式碼)——80% 的核心執行僅僅是 6 條指令 —— 載入、儲存、加法、減法、比較和分支。這些幾乎就涵蓋了所有。如果你用 Perl 或其他方式寫作,也許調回和返回,要比比較和分支更重要。但指令集的影響很小,你可能會因為丟失指令而損失 10% 或 20% 的(效能)。

有段時間,我們認為可變長指令真的很難解碼,但我們一直在想辦法解決這一點。你基本上預測了表格中所有指令的位置,一旦你有了好的預測器,你就可以很好地預測這些東西。

因此,當你打造小型計算機時,固定長度的指令看起來很不錯,但如果你正在打造一臺非常大的計算機,來預測或確定所有指令的位置,它就不佔優勢。所以這沒有那麼重要。

當 RISC 剛出現時,x86 有一半是微程式碼。如果你看看 die,一半或 1/3 的晶片是 ROM。RISC 人員可能會說 RISC 晶片上沒有 ROM,所以我們得到了更高的效能。但現在 ROM 這麼小,你發現不了。實際上,加法器這麼小,你幾乎找不到它?目前限制計算機效能的是可預測性,其中兩大限制是指令/分支可預測性和資料區域性性。

現在新的預測器真的很擅長這個。它們很大,兩個預測器比加法器大得多。這就是你 CPU 與 GPU(或 AI 引擎)之間爭論的地方。GPU 的人會說:“看,沒有分支預測器,因為我們做每件事都是並行的。”晶片有更多的加法器和減法器,如果這是你的問題,這是正確的。但他們在執行 C 語言程式時很垃圾。

GPU 是為在畫素上執行著色程式而構建的,如果您有 800 萬個畫素,而大型 GPU 現在有 6000 個執行緒,您可以覆蓋所有畫素,每個執行緒每幀執行 1000 個程式。

但這有點像一群螞蟻帶著沙粒,而大型 AI 計算機有很大的矩陣乘數,它們喜歡用更少的執行緒來做更多的數學運算,因為問題本身就很大。而著色器問題是,問題本身很小,因為畫素太多了。

有三種不同型別的計算機:CPU、GPU 和 AI。NVIDIA 正在做“中間人”的事情,他們用 GPU 執行 AI,並試圖增強它。其中一些顯然效果很好,有些顯然相當複雜。

有趣的是,這種情況經常發生,當通用 CPU 看到 GPU 的向量效能時,它添加了向量單元。有時這很好,因為你只有一點向量計算要做,但如果你有很多事,GPU 可能是更好的解決方案。

問題 14:回到指令集架構(ISA)問題,很多人問您對 Arm 和 x86 有什麼看法?哪款有遺留問題,哪款有效能?您在乎嗎?

Jim Keller:我有點在乎。事情是這樣的。當 x86 剛問世時,它超級簡單純淨,當時有多個 8 位架構:x86、6800、6502。我可能以前就程式設計過所有這些程式。奇怪的是,x86 是開放版本。他們授權給 7 家不同的公司,這給了人們機會,而英特爾出人意料地授權了它。然後是 16 位和 32 位,後來他們增加了虛擬記憶體、虛擬化、安全性,繼而是 64 位和更多功能。當你新增東西時,你還要保留舊的內容,以確保相容性。

當 Arm 剛出現時,它是一臺純淨的 32 位計算機。與 x86 相比,它看起來更簡單、更易構建。然後他們添加了 16 位模式和 IT(如果是的話)指令,這太糟糕了。然後(他們添加了)一個奇怪的浮點向量擴充套件集,覆蓋暫存器檔案,再之後是 64 位,這部分清理了它。在安全和引導方面有一些特殊的東西,所以它只會變得更加複雜。

現在 RISC-V 出現了,它是耀眼的 Arm 新表親。因為沒有“垃圾”。它是一個開放式指令集架構,人們在大學裡打造它,他們沒有時間和興趣去像其他架構那樣新增太多的“垃圾”。所以相對來說,僅僅因為它的血統和年齡,它才處於複雜生命週期的早期。

這是一套相當不錯的指令集,他們做得很好。所以如果我今天想非常快地構建一臺計算機,並且希望它執行地更快,那麼 RISC-V 是最容易選擇的。它是最簡單的一個,擁有所有正確的功能,並且沒有太多的垃圾。

問題 15:所以現代指令集太臃腫了,尤其是有舊的遺留問題、歷史包袱?

Jim Keller:已迭代和新增的指令太臃腫了。總是這樣。當你不斷新增內容時,工程師們會遇到困難。你可以有一個非常好的設計,有 10 個功能,然後你再新增一些功能。這些功能都使它更好,也使它更加複雜。

隨著時間推移,新增的每個新功能都變得更難,因為該功能和其他所有內容的互動都變得很糟。

營銷人員和老客戶會說“不要刪除任何東西”,但與此同時,他們都在嘗試新的東西,其功能只有老內容的 70%,但它做得更好,因為它沒有所有這些問題。

我談到了收益遞減曲線,收益遞減的原因有很多,其中之一是事物相互作用的複雜性。原本更簡單、做得更少的東西會更快,它們會讓這些速度慢下來。這種情況已經發生過很多次了,這是複雜性理論的結果,我認為是“人類的邪惡”。

問題 16:您有沒有見過這樣的情況:x86 崩了,而某些東西被重新發明?或者它只是有些遺留問題,像 RISC-V 這樣的新事物會蹦出來填補空缺?

Jim Keller:x86-64 相當乾淨,但顯然它必須揹負所有的舊包袱。他們棄用了許多舊的 16 位模式。很多東西都消失了,有時如果你很小心,你可以說“我需要支援這個 legacy,但它不一定是效能,我可以把它與其他 legacy 隔離開來”。你要麼模仿它,要麼支援它。

我們曾打造計算機,有前端、獲取、排程、執行、負載儲存、L2 快取。如果你觀察它們之間的界限,你會看到 100 根線在做一些隨機的事情,這些事情確切地取決於時鐘的哪個週期或階段。

現在,這些介面看起來不像指令邊界,如果我從這裡傳送到那裡會有一個協議。裡面的計算機看起來不像一堆東西連在一起,而看起來像 8 臺計算機連在一起做不同的事情。有一臺獲取機、一臺排程機、一臺執行機和一臺浮點計算機,如果你這樣,你可以不碰其他任何東西就改變浮點。

這與其說是指令集的東西,更像是“構建它時你的設計原則是什麼”,然後你是怎麼做到的。

如果你遇到問題,你可以說“如果我能在這兩個盒子之間有這五根線,我就可以解決這個問題。”但每次你這樣做,每次你違反抽象層,你都會給未來的 Jim Keller 製造一個問題。

我這樣做過很多次,如果你能正確地解出來,它仍然是乾淨的,但如果你稍微破壞一下,那麼隨著時間的推移,它會殺死你。

06. 抽象分層能解決更復雜的問題

問題 17:在很多演講中,您談到抽象分層的概念,不僅涉及工程的很多方面,也涉及到生活。這個概念是指您可以獨立地升級不同的層,而不會影響上下層,並提供新的平臺來構建。在您生命中的哪個階段,這種精神發生了變化?您的生活中發生了什麼,讓它成為您個性的普遍元素?

Jim Keller:我個性中的普遍元素?這很有趣!我知道我經常重複它,也許我想說服自己。比如,當我們構建 EV6 時,德克・邁耶(Dirk Meyer,AMD K7 研發主導者)是另一位架構師。我們還有其他幾個很厲害的人。我們把設計分成幾部分,寫了一個非常簡單的效能模型,但當我們構建這個東西時,對於一個壞掉的機器來說,這是一個相對短的通道,因為我們在預測方面還有點弱。事物之間有很多相互作用,這是我們一個困難的設計。

我們還使用 Digital 當時的定製設計方法構建了它。我們有 22 種不同的觸發器(flip-flop),人們會 roll 他們自己的觸發器。我們經常用電晶體建造大型結構。我記得有人問我庫裡有什麼元素,我說,兩者都是!N 型和 P 型,對嗎?然後去了 AMD,K7 是用一個單元庫構建的。

現在,那裡的工程師非常擅長佈局單元庫,能獲得良好的效能。他們只有兩個 flip-flop,1 個大的和 1 個小的,他們有一個純淨的單元庫。他們在電晶體和設計器之間有一個抽象層。那時候還沒有真正好的佈局佈線工具,這是一種更好的方式。

然後,在 EV6(後來被稱為 S2K 匯流排)上構建的介面上,我們聽取了 AMD 的意見。我們最初有很多複雜的交易來做 snoops、載入、儲存、讀取、寫入等各種事。我的一個朋友在數字研究實驗室工作,有一天我向他解釋了這是如何運作的,他聽了我的話後,只是搖了搖頭。

他說:“Jim,你不該這樣做的。”他解釋了虛擬通道是如何運作的,以及如何擁有獨立的抽象資訊通道。在開始對命令編碼之前,你需要正確處理這一點。那場教研會的結果是 HyperTransport。它有很多 S2K 協議,是以更抽象的方式構建的。

因此我想說,從 Digital 到 AMD 的轉變,讓我們有了關於如何構建高效能運算的想法,但方法是整合的,所以從電晶體到架構不能是同一個人。

在 AMD,有邁克・克拉克(Mike Clark)、架構師、微架構師和 RTL 人員編寫 Verilog,他們字面上被翻譯為 gate 庫、gate 人員,這更像是一種分層方法。

K7 是一個相當快的處理器,我們第一次在 K8 上搖擺,我們有點倒退了。當時我最喜歡的電路合作伙伴,他和我可以談論大型設計,我們把它看作電晶體,但這是一種複雜的計算機制造方式。

從那以後,我更相信抽象分層是正確的。你不會超越人類的能力 —— 這是最大的問題。如果你想構建更大、更復雜的東西,你最好解決抽象分層問題,因為人們沒有變得更聰明。如果你在上面放了 100 多人,它會減速,而不是加速,所以你必須解決這個問題。

問題 18:如果有 100 多人,需要分成兩個抽象層?

Jim Keller:沒錯。這是有原因的,就像人類很擅長追蹤。你的核心朋友圈就像 10-20 個人,像一個親密的家庭,然後根據組織方式,有 50 到 100 人,你可以記錄。但除此之外,你把 100 人之外的每個人,都視作半個陌生人。所以你必須有一些不同的合約來說明你如何做到這一點。

就像我們做 Zen 的時候,有 200 人,一半團隊在前端,一半團隊在後端。它們之間的介面是已經定義好的,不需要彼此談論合約背後的細節。

這是很重要的。現在他們相處得很好,一起工作,但他們不必經常在邊界上來回走動。

07. 關於摩爾定律,以及 X 射線光刻技術

問題 19:您曾說過不擔心摩爾定律,不擔心在工藝節點方面的演變,它最終會被人在某個地方解決。您對摩爾定律的態度是冷漠的嗎?

Jim Keller:我非常積極主動。這根本不是冷漠。我知道很多細節。人們混淆了一些事情,比如英特爾的 10nm 延期,有人說摩爾定律已經死了,臺積電的發展路線圖卻根本沒有動搖。

部分原因是臺積電的路線圖與 EUV 機器的可用性保持一致。所以當他們從 16nm 到 10nm 再到 7nm 時,他們做了臺積電非常擅長的事情 —— 做了這半步(half steps)。

因此,他們做了沒用 EUV 的 7nm、用 EUV 的 7nm、不帶 EUV 的 5nm、帶 EUV 的升級版 5nm,他們做了些調整。然後使用 EUV 機器,有一段時間以來,人們不確定他們是否會工作。但現在阿斯麥(ASML)的市值超過了英特爾。

還有一件有趣的事情,我意識到,在創新的軌跡上,我們傾向於將臺積電、三星和英特爾視為製程領導者。但許多領先地位實際上在 ASML 等裝置製造商和材料方面。如果你看看誰在製造創新的東西,以及 EUV 全球銷售,這個數字就像臺積電到 2023 年將購買 150 臺 EUV 機器之類的東西。

這些數字是驚人的,因為即使在幾年前,也沒有多少人確定 EUV 會起作用。現在 X 射線光刻技術即將出現,你可以說這是不可能的,但該死的,一切都是不可能的!

精細的印刷品,理查德・費曼(Richard Feynman)就是這麼說的,他有點聰明。他說“底部有很多空間”,我個人可以數,如果你看看電晶體上有多少個原子,有很多。如果你看看你實際上需要多少電晶體才能做一個結,沒有太多的量子效應,只有 10 個。所以還有空間。

還有一件有趣的事情 —— 當每個人都相信技術正在以這種速度發展,而整個世界都朝著這個速度前進時,就有了一個信念體系。

但技術不是一回事。有些人知道如何構建電晶體,比如製程設計師在英特爾、臺積電或三星所做的。他們使用可以做特徵的裝置,但隨後這些特徵實際上相互作用,然後會有一個很有趣的權衡,比如如何沉積和蝕刻,它應該有多高、多寬,在什麼空間裡。他們是使用工具的工匠,工具必須超級鋒利,工匠必須非常有知識。這是一出很複雜的戲。

在某種程度上,因為機器本身很複雜,你有這個小的複雜組合,機器製造商正在做不同的部件,但他們並不總是完美地協調,或者他們通過設計流程的機器整合人員進行協調,這很複雜,它讓事情慢下來。但這並不是因為物理基礎 —— 我們在物理基礎方面正在取得良好進展。

問題 20:您在 Scaled ML 大會演講中,在幻燈片上印著一個 Comic Sans 字型的 X,說隨著時間推移,由於物理定律,EUV 還有幾個步驟要走。high-NA EUV 幾年後即將推出,但現在您提到了 X 射線。有什麼時間表嗎?

Jim Keller:通常當一項技術出現時,他們會用它來做一件事。當 EUV 首次用於 DRAM 時,它實際上是一步,也許是兩步。我想起來了,可能 2023 或 2024 年?並不是很遠。這意味著他們已經啟動並運行了,人們正在使用它。

更瘋狂的是,當它們從可見光變成極紫外光時,波長大約減少了 10 倍?因此,當他們有瘋狂的多圖案和干擾之類的東西時,你可以看到那些 DUV 的圖案,當談到 EUV 時,他們可以直接印刷。但實際上(當你縮小時)他們可以在 EUV 上使用相同的技巧。所以 EUV 將是多圖案的,我想是在 3nm。然後你可以用它做很多技巧。

所以,物理真的很有趣。然後是物理、光學等,材料的純度,這非常重要,還有溫度控制,這些事不會來回移動太多。你看到的每一個地方都是有趣的物理問題,所以有很多事情要做。有成千上萬的人在研究它,並有足夠的創新空間。

08. 把老團隊帶到新東家未必是好事

問題 21:我們注意到,當您從一個公司跳槽到另一個公司時,您所做的一件事是組建一個團隊。由於團隊是由其他人組建的,我們看到有些人將他們在前幾家公司組建團隊中的工程師帶到下一家公司。您對組建團隊有什麼見解嗎?在您所在的公司是否有什麼不同的方法?

Jim Keller:你必須意識到的第一件事是,你是在組建團隊,還是在尋找團隊?威尼斯有一個很棒的博物館,大衛博物館,博物館前面有一些巨大的大理石塊。我不知道他們是如何移動的。大理石塊已經放在那裡,米開朗基羅可以看到這個美麗的雕塑,問題在於去除多餘的大理石。

因此,如果你進入擁有 1000 名員工的公司,我向你保證,那裡有一支好團隊。你不必僱傭任何人。我在 AMD 時幾乎不僱人。我們四處調動人員,重新部署了人員,那裡有很多優秀的人才。

當我去特斯拉時,我們必須從零開始組建團隊,因為特斯拉沒有人在做晶片。我僱了一些我認識的人,後來又僱了一些我以前不認識的人,這是其中一件有趣的事情。

我見過領導者從一個公司到另一個公司,帶著 20 個人,然後開始試圖複製他們以前擁有的東西。這是一個壞主意,因為儘管 20 個人足以複製(你的)現狀,但它會疏遠(在新團隊中的)你想要的東西。

當你組建一個新團隊時,理想情況下,你會得到你真正喜歡的人,或者你剛認識他們,或者你和他們一起工作,但你需要在方法和思維上有所不同,因為每個人都有一個區域性的最低要求。所以新團隊有機會一起創造一些新的東西。

其中一些原因是,如果你有 10 個真正非常好的團隊,然後你從每個團隊中抽出一個人組建一個新團隊,那可能更好,因為他們會重新選擇哪個是最好的想法。

每個團隊都有優點和缺點,因此你必須考慮,你是在建立團隊還是在尋找團隊,你想要創造的動力是什麼,它給人們提供了產生新想法的空間。

或者,如果有些人堅持一個想法,他們會與新人合作,會開始做這件不可思議的事情,你會認為他們很棒,即使他們以前沒那麼好,那麼發生了什麼?他們帶著一些不太好的想法,遇到了一個挑戰他們或環境迫使他們的人,突然間他們就做得很好了。我見過很多次這種情況。

Digital(DEC)的肯・奧爾森(Ken Olson)說,沒有糟糕的員工,只有不合適的員工。

當我年輕的時候,我認為這很蠢。但隨著我與更多人合作,我見過這種情況發生很多次,我甚至解僱過一些後續取得真正成功的人。這一切都是因為他們沒有把工作做好,被情緒困住了,他們覺得自己在做一些沒用的事情。

將他們搬到另一個地方的行為使他們自由了。(不用說)我沒有得到一句感謝。

問題 22:這之中有多大程度歸結於公司文化呢?當您為合適的職位尋找人或招聘新員工時,您是否嘗試得到一些與公司利益相悖的東西?您這裡有什麼策略嗎?還是您只是在找一個有火花的人?

Jim Keller:如果你想要創造一些真正具有創新性的內容,那麼你的想法很可能與傳統背道而馳。如果你的專案進展順利,引入激勵者會讓所有人放慢腳步,因為你已經做得很好了。

你必須在環境中觀察。有些人真的很好,他們非常靈活地適應並推動這個專案,但在下一個專案中,你可以看到他們已經建立自己的網路和團隊,在下一個專案中,他們準備做一個支點,每個人都願意工作。信任是件有趣的事情,不是嗎?

你知道,如果有人走上前來,說跳下這座橋,但你會沒事的,你可能會認為這是說胡話。但如果你已經和他們一起經歷了很多事情,他們說“看,相信我,然後跳下去 —— 你會沒事的;這會很糟糕,但會沒事的”,你會做的,對吧?

相互信任的團隊,比那些必須處理合同、談判和政治的團隊效率高得多。

所以這可能是一回事。如果你正在建立或尋找一個團隊,你開始看到人們從事政治活動,這意味著為了自己的利益操縱環境,他們必須離開。除非你是老闆!那你就必須看看他們能不能做到,有些人非常政治化,但他們真的認為自己的政治力量來自於實現目標。但在一個政治性的組織中,人們會隨意造成很多壓力。

問題 23:您是否建議早期或中期的工程師應該定期從一個專案跳到另一個專案,這樣他們就不會陷入困境?這聽起來是一件常見的事情。

Jim Keller:當你做新事情併為那些比你懂得多的人工作時,你學得最快。因此,如果你的職業生涯剛剛開始,而且你學到的東西不多,或者你為之工作的人沒有激勵你,那麼是的,你可能應該改變。

有些職業中,我曾見過一些人因為獲得經驗而換了三次工作,結果卻一無所獲。他們最好還是待在原處,真正深入研究一些事情。所以你知道,這兩種想法之間存在創造性張力。

09. 第一份工作就懟過 CTO,讀了 2 本書

問題 24:我想問您和您的導師在您早期職業生涯中的情況。您在領導能力、知識或技能方面敬仰誰?您有崇拜的人嗎?

Jim Keller:哦,是的,很多人,從我父母開始。我真的很幸運。我父親是一名工程師,我母親非常聰明。奇怪的是,當我長大後,我有點像她,在睿智的思考方面。但我有閱讀困難症,無法閱讀。我父親是一名工程師,所以我從小就認為我像他,但實際上,我在智力方面更像我媽媽。他們都是聰明人。他們都是 50 後,我媽媽養家餬口,她直到晚年才開始她的治療師生涯。不過他們都是很有趣的人。

當我第一次在 Digital 工作時,我為一個叫鮑勃・斯圖爾特(Bob Stewart)的人工作,他是一位偉大的計算機架構師。他做了 PDP-11/44、PDP-11/70、VAX 780、VAX 8800 和 CI 互連。有人說,他參與過的每個專案都賺了 10 億美元,那時候這可是個大數目。

所以我為他工作,他很棒,不過那裡還有其他六位非常偉大的計算機架構師。我當時在 DEC,DEC 有 DEC 研究實驗室,我遇到了巴特勒・蘭普森(Butler Lampson)、查克・薩克(Chuck Thacker)和尼爾・威廉(Neil Wilhelm)等人。當我還是個孩子時,南希・克羅嫩貝格(Nancy Kronenberg)是我的導師之一,她是 VMS 作業系統的主要人物之一。這是一種幸運。

所以我崇拜他們嗎?嗯,他們都令人望而生畏,又沒那麼令人害怕,因為我當時沒太意識到他們是誰,我對當時的事情有點忘了。

比如,我在 Digital 的第一週,我們接受了名為 Valid 的繪圖系統的培訓,這是在 Matrox 圖形時代之前的東西。有個人走了進來,問了一些問題,告訴我們關於分層設計的事情。

我向他解釋了為什麼這一部分是好主意,一部分是愚蠢的,我們就此進行了一個小時的辯論,然後他離開了。

有人說那是戈登・貝爾(Gordon Bell,被稱作 DEC 的技術靈魂)。

我問:“那是誰?他是 Digital 的首席技術官?真的嗎?好吧,他剛才說的一半話都錯了 —— 我希望我能把他理順過來。”

但你知道,我認為這只是血清素啟用或其他什麼。我覺得這更像是我的心理問題,而不是功能問題!

問題 25:你是說你已經成熟了嗎?

Jim Keller:一點也不!

問題 26:這就是樂趣所在嗎?

Jim Keller:我是說,有很多東西。當我年輕時,我在演講時會緊張,我意識到我必須更好地瞭解周圍的人。但你知道,我並不總是被說服。

(當時)我寧願他們只是做正確的事情或什麼的,所以有很多東西已經改變了。現在,我對人們的想法和他們為什麼想很感興趣,我對此有很多經驗。每隔一段時間,您就可以真正幫助調節某人,或讓團隊更好地工作。

我一點也不介意做公開演講,只覺得從緊張中獲得的能量很有趣。我還記得在英特爾的某個會議上走上舞臺,大約 2000 人,我本應該非常緊張,但相反,我感到非常興奮。所以有些事情改變了,但那部分是意識的,部分是練習。

我仍然對計算機設計之類的東西感到興奮。這真的很有趣。改變世界,太棒了。

問題 27:聽起來你花了很多時間研究人類的經驗。如果你瞭解人們的想法和操作方式,這與對戈登・貝爾花一個小時說話是不同的。

Jim Keller:這很有趣。我喜歡讀書。你可以從書本中學到很多東西。順便說一句,如果你知道書是怎麼回事的話,那麼書很有意思。

有的人活了 20 年,滿懷熱情地寫下他們最好的想法(有很多這樣的書),然後你去亞馬遜上找到最好的想法。這超級有趣,就像一本書中真正濃縮的體驗,寫好了,你可以選擇更好的書,誰知道呢?我已經讀了很多書很久了。

很難說,“讀這 4 本書,它會改變你的生活”。有時(1 本)書就能改變你的生活。但讀 1000 本書會改變你的生活,這是肯定的。太多人類的經驗是有用的。

誰知道莎士比亞對工程管理真的有用,對吧?這些故事都是什麼呢 —— 強權政治、狡猾的傢伙、做所有工作的爪牙、偶爾拯救一天的英雄?這一切是如何發生的?你總是處在 500 年前的位置,但它適用於美國企業界的每一天。所以如果你不認識莎士比亞或馬基雅維利,你什麼都不知道。

問題 28:我記得您說過,在您擔任第一個重要的管理職位之前,您讀了 20 本關於管理技巧的書,最終您如何意識到您比其他人多讀了 19 本書。

Jim Keller:是的,差不多。我聯絡了 Venkat(Venkatesh)Rao,他以部落格 Ribbonfarm 和其他一些事情而出名。我真的很喜歡他在部落格上關於組織的想法,他在底部寫著點選這裡為他買一杯咖啡,或者得到一個諮詢,所以我給他發了一封電子郵件。我們因此開始閒聊。

在我加入 AMD 之前,我們聊了很久。他說我應該讀這些書,我讀了,我以為每個從事大管理工作的人都這樣做了,但沒有人這樣做。

你知道那很搞笑,好像 19 本很豐厚。我比大多數管理者多讀了 20 本管理類書籍,或者他們讀了一些膚淺的東西,比如《從優秀到卓越》(Good to Great),裡面有些好故事,但在管理方面沒那麼深刻。如果你想了解管理,讀卡爾・榮格(Carl Jung)要好過讀《從優秀到卓越》。

問題 29:你喜歡讀小說還是非小說類作品?

Jim Keller:小時候,我讀過各種非小說類書籍。後來我父母開了一個讀書俱樂部。直到上四年級,我才真正學會閱讀,但在七或八年級左右,我已經讀過家裡所有的書。有約翰・厄普代克(John Updike),約翰・巴特(John Barth)是我小時候最喜歡的作家之一。所以有很多故事。

還有多麗絲・萊辛(Doris Lessing),多麗絲・萊辛寫了一系列科幻小說,這些書也是心理調查,我讀後簡直不敢相信。每隔一段時間,這些事情就會讓你大吃一驚。顯然它發生在正確的時間。

現在我讀了各種各樣的東西。我喜歡歷史、人類學和心理學,喜歡神祕主義,有很多不同的東西。過去 10 年裡,我可能讀的小說越來越少。不過當我年輕的時候,我讀的可能大多是小說。

問題 30:在這次採訪之前,我從觀眾那裡得到了一些關於您在接受萊克斯・弗裡德曼(Lex Fridman)採訪時所做的評論。您說您每週讀兩本書。您也非常擅長引用關鍵工程師和未來學家的話。我相信,當您開始讀新書時,如果您開始在推特上分享您閱讀的書籍,你會得到很多粉絲。一種被動的 Jim Keller 讀書俱樂部!

Jim Keller:我想說我每週讀兩本書。現在我讀了很多,但大多是部落格和各種瘋狂的東西。我不知道,就像做萊克斯(萊克斯的播客)超級有趣,但我不知道我是否有足夠的注意力在社交媒體上來做這樣的事情。我每次都會忘掉好幾周。

問題 31:您如何確保自己在閱讀時全神貫注,而不會將注意力分散到其他可能會擔心的問題上?

Jim Keller:我並不在乎這些。我認識一些讀書的人,他們真的很擔心他們是否會記住這些書。他們一直花在強調和分析上。我讀書是為了興趣,我真正記得的是,人們必須寫 250 頁的書,因為這是出版商的規則。不管你的想法有 50 頁還是 500 頁的想法,你都可以很快地得出結論。

我讀過一些只有 50 頁的好書,你也可以閱讀 50 頁,你會想,“哇,真的很棒!”,但接下來的 50 頁都是一樣的。然後你意識到,它只是補充地更充實,那時我希望他們出版一本更短的書。

但事實就是如此。但是如果想法有趣,那很好。我定期冥想,思考我正在思考的東西,這有時與我正在閱讀的內容有關。如果它很有趣,它就會被納入。但你的大腦是一種奇怪的東西,你實際上無法接觸到你讀過的所有想法和事物,你的個性似乎通過它得到了充分的資訊,我相信這個過程。

因此,如果我記不起(書中)某人的名字,我並不擔心,因為他們的想法可能已經改變了,我是誰,我不記得它來自哪本書。我不在乎那些東西。

問題 32:只要您在某種程度上被動地吸收它?

Jim Keller:是的,有被動和主動的結合。我跟萊克斯說過,很多時候,當我處理問題時,我會為夢想做準備。這真的很有用。這是一件相當直截了當的事情。在你入睡之前,你會想起你真正在做什麼,在想什麼。然後是我的個人經歷,有時候我真的在那方面努力,有時候那只是我真正需要思考的一個問題,我會夢到其他的東西。我會醒得很好,不管怎樣,這真的很有趣。

10.“我是特斯拉最懶的人”

問題 34:關於時間的話題,我們將討論個人健康、學習、冥想和家庭,以及您如何專業地執行。您是那種每晚只需要睡 4 個小時的人嗎?

Jim Keller:不,我需要 7 小時。有一天,我算出我理想的一天應該有 34 個小時。因為我喜歡鍛鍊、花時間和孩子在一起,喜歡睡覺和吃飯,你知道我喜歡工作。我也愛看書,所以我不知道。

工作很奇怪,因為它佔據的時間,比你想花在它上面的時間多得多。但我也非常喜歡工作,所以把它壓下去是一個挑戰。

問題 35:當有截止期限時,首先應該做什麼?您曾在公司工作過,在那裡,產品上市時間一直是您工作的一個關鍵因素。

Jim Keller:過去六年,對我來說,重要的事情是,一旦我有太多事情要做,我就會找到一個比我更想做這件事的人。我主要處理未解決的問題。

你知道,我是特斯拉最懶的人。特斯拉有一種每天工作 12 個小時的文化,讓你看起來像在工作,而我工作,朝 9 晚 7,這就是很多小時。但我也會在午餐時間去跑步和鍛鍊。他們有一間舉重室。鹿溪就在大機械車間旁邊,我會去那裡鍛鍊一個小時,吃點東西。

在 AMD 和英特爾,他們是非常大的組織,我有非常好的員工。因此,我發現自己花了太多時間在演講上或者在做一些特定的事情上。我會找到一些想做的人,把它交給他們,然後我去度假。

問題 36:您對做這種媒體採訪有什麼感覺,您知道,更多的是營銷和公司討論?這些不一定與實際挑戰極限有關,而只是說說而已。

Jim Keller:這不僅僅是說說而已。我做了一些非常有趣的事情,所以我喜歡談談它。當我在英特爾工作時,我意識到這是影響英特爾工程師的方式之一。就像每個人都認為摩爾定律已死一樣,而我想:“天哪,這是摩爾定律公司!”

如果(作為一名工程師)你的主要事情是(摩爾定律已死),那就真的是個拖累,因為我認為它沒死。所以我和不同的人交談,他們放大我說的話併為之進行討論,然後轉身而去。

我實際上通過對外交談,接觸到了更多英特爾內部的人。所以這對我有用,因為我的任務是製造更快的計算機。這就是我喜歡做的。

因此,當我與人們交談時,他們總是提出各種各樣的東西,比如我們的工作是如何影響人們的。

像你這樣的人,會認真思考,然後互相交談。我再和你交流,你問了很多問題,這有點刺激,很有趣。如果你能非常清楚地解釋一些事情,你可能知道它。很多時候,你認為你知道它,然後你去解釋它,但你卻四處碰壁。

我做了一些很難做的公開演講,比如演講看起來很簡單,但要進入簡單的部分,你必須拿出你的想法,重新組織它們,然後扔掉哪些廢話。這是一件很有用的事情。

問題 37:是費曼還是薩根說過:“如果你在大學一年級不能解釋這個概念,那麼你並不是真正地理解了它”?

Jim Keller:是的,這聽起來很像費曼。他做得很好,就像他的物理系列講座一樣,非常有趣。費曼的問題在於,他對數學有如此出色的直覺,他的簡單想法往往沒那麼簡單!就像他可以用 5 個“簡單”步驟計算一些軌道幾何形狀一樣,他對它的簡單程度感到非常興奮。但我想他是房間裡唯一一個認為這很簡單的人。

問題 38:我猜他有在自己腦海中想象並操縱事物的能力。我記得你曾經說過,當涉及到電路級設計時,你可以這樣做。

Jim Keller:是的。如果我有一種超能力,我覺得我可以想象計算機是如何執行的。當我做效能建模之類的工作時,我可以在腦海中看到整個事情,我只是把程式碼寫下來。這是一個非常有用的技能,但你知道,我可能有一部分是天生的,一部分是發展而來,部分源於我成年後診斷出閱讀困難症。

問題 39:我正要問先天和後天因素有多少?

Jim Keller:很難。有趣的是,對於超級聰明的人來說,事情往往對他們來說很容易,他們不用努力工作,就能走很長的路。所以我沒那麼聰明。毅力,以及他們所說的堅韌,是非常有用的,尤其是在計算機設計方面。當很多事情需要很多調整時,你必須相信自己能做到。但很多時候,有很多微妙的迭代要做,實踐真的很管用。

所以,是的,每個人都是一個組合。如果你沒有任何天賦,那就很難有所成就。但有時真正有天賦的人並不會學習如何工作,他們只能做一些顯而易見的事情,而不是那些在混亂中堅持不懈的事情。

問題 40:認識自己的天賦也很重要,尤其是當你不知道自己擁有它的時候?

Jim Keller:是的,但另一方面,你可能有足夠的天賦,但你只是沒有努力工作,有些人過早放棄。你得做一些你真正感興趣的事情。

當人們在掙扎時,比如他們想成為一名工程師或營銷或這個或那個,(問問自己)你喜歡什麼?對於想成為工程師,但父母或某人希望他成為一名經理的人來說,尤其如此。你會過著艱難的生活,因為你不是在追逐你的夢想,而是在追逐別人的夢想。你為別人的夢想感到興奮的機率很低。因此,如果你不興奮,你就不會投入精力,或者學習。這最終是一個艱難的迴圈。

11. 推動每個人都成為最好的人

問題 41:您在多大程度上花時間指導他人,無論是在公司內部,還是在指導外部以前的同事或學生?您是否曾設想過自己做一些更嚴肅的事情,比如“Jim Keller 半導體設計學院”?

Jim Keller:不。所以這很有趣,因為我大部分時間都是受任務驅動的。比如,“我們要做 Zen!”或“我們將造自動駕駛晶片!”,還有一些人為我工作。當他們開始為我工作時,我就開始瞭解他們是誰,他們中的一些人很好,另一些人則有大問題,需要以這樣或那樣的方式處理。

所以我會告訴他們我想要什麼,有時我會給他們一些針對性的建議。有時候我會做一些事情,你可以看出來有些人真的很擅長跟隨學習。後來人們告訴我,我在指導他們,但我在想我以為我很厲害?這是一次有趣的經歷。

有不少人說我以某種方式影響了他們的生活,但對於其中一些人,我關注了他們的健康或飲食,因為我認為他們看起來缺乏活力。你可以做出很大的改進。順便說一下,這值得一做。要麼是那這樣,要麼他們做錯了事,他們只是對此並不興奮。(那時)你可以看出他們應該做其他事情。

因此,他們要麼必須弄清楚為什麼自己不興奮,要麼變得興奮,很多人開始對自己或其他人的地位或其他事情大驚小怪。

擁有地位的最好方法是做一些偉大的事情,然後每個人都認為你很棒。通過試圖攀爬來獲得地位是可怕的,因為每個人都認為你是一個攀登者,有時他們沒有能力或技能在那裡做出正確的選擇。它主要來自任務驅動。

我確實關心別人,至少我試著去,然後我看到結果。我是說,完成一個複雜的大專案真的很令人高興。你知道你開始的時候在哪裡,接著你知道它完成的時候在哪裡,人們在成功的事情上工作時,他們會把領導和團隊合作作為其中的一部分。這真的很好,但並不總是會發生。我很難做到”指導他人 ",因為我的任務是什麼?比如,有人來找你,說“我想變得更好”。好吧,什麼更好?如果這就像想更好地拉小提琴一樣,那好吧,我不擅長。

當我說“嘿,我們將要造世界上最快的自動駕駛晶片”時,每個人都需要在這方面做得更好。事實證明,他們 3/4 的問題,實際上是個人問題,而不是技術問題。

因此,要獲得自動駕駛晶片,您必須去除錯所有這些東西,還有各種各樣的個人問題 —— 健康問題、父母童年問題、伴侶問題、工作場所問題和職業停滯問題。名單太長了,我們都很認真對待。事實證明,每個人都認為自己的問題很重要,對吧?

你可能認為他們的問題不重要,但我告訴你,他們確實重要,他們有一個清單。隨便問一個人,你最關心的 5 個問題是什麼。他們可能會告訴你,或者更奇怪的是,他們給你 5 個錯的,因為那也發生了。

問題 42:但他們給了您,他們認為您想聽的 5 個,而不是實際的那 5 個嗎?

Jim Keller:是的。人們也有禁區,所以他們最大的問題可能是他們不想談論的事情。但是,如果你幫助他們解決這個問題,那麼專案會進行得更好,然後在某個時候,他們會感激你。然後他們會說你是一名導師,你會想,我不知道。

問題 43:您提到您的專案成功了,人們會為他們的產品感到自豪。您有職業生涯中、專案或榮譽的“最自豪的時刻”嗎?有什麼具體的時刻嗎?

Jim Keller:我有,而且有很多。我和英特爾的貝基・盧普(Becky Loop)合作過,我們在除錯一些高質量的東西。結果發現有一大堆東西,我們反覆討論如何分析它,如何展示它,我對資料和正在發生的事情感到沮喪。有一天,她想出了這張圖,它非常完美。我真的很為她興奮,因為她已經找到了真相。我們實際上看到了一條可以修復的視線等。但這種事情經常發生。

問題 44:頓悟?

Jim Keller:是的。有時和一群人一起工作,進入其中就像一團糟,但後來情況會好轉。特斯拉自動駕駛晶片的事情很瘋狂,Zen 的成功是驚人的。每個人都認為 AMD 團隊無法很好地完成任務,而我對與每個人都認為已經過時的團隊一起構建一臺真正偉大的計算機很感興趣。就像沒有人認為 AMD 有一個偉大的 CPU 設計團隊。但是你知道,那些創立 Zen 的人,他們在 AMD 有 25 到 30 年的工作歷史。這是瘋狂的。

問題 45:是說邁克・克拉克(Mike Clark)和萊斯利・巴恩斯(Leslie Barnes),他們已經在那裡工作了 25 到 30 年?

Jim Keller:Steve Hale,Suzanne Plummer。

問題 46:終身工作者?

Jim Keller:是的,他們是那種終身工作者,他們在那裡做過許多偉大的專案,有良好的記錄。但我們做了什麼不同的事情?我們設定了一些非常明確的目標,然後進行重組以達到目標。

我們對公司人才狀況進行了一些非常徹底的分析,有幾個人真的被淘汰了,因為他們對永遠做不出正確的事情而感到沮喪。你知道我聽了他們的話,天啊,我喜歡聽人的話。

我們開了個非常有趣的會議,這是我一生中最好的經歷之一。Suzanne 打電話給我,說 Zen 團隊成員不相信他們能做到。

我說:“太好了 —— 我會開車去機場,我在加州,明天早上 8 點在那裡見。”

確保你有一個有很多白板的大房間。就像 30 個憤怒的人準備告訴我所有不起作用的原因,我把所有原因寫在白板上,我們花了兩天時間解決了問題。

這很瘋狂,因為一開始我在抵禦組團,但後來人們開始加入。只要有可能,我就想,當有人會說“我知道我們如何解決這個問題”時,我會把筆給他,他們會站起來在黑板上解釋,效果非常好。事實是,他們所做的事情很誠實,這很棒。

這些都是我們不知道如何解決的所有問題,因此我們把它們擺在桌面上。他們沒有給你兩個理由,但保留了 10 個,然後說“你解決這兩個問題”。

根本沒有那種狗屁的事。他們都是有實際問題的嚴肅的人,他們經歷過一些專案,人們說他們可以解決這些問題,但他們不能。所以他們可能在找我,但好像我不是個臭屁的人。我不是個胡說八道的人,我告訴他們,有些我們能做到,有些我不知道。不過我記得,邁克・克拉克在那裡,他說我們可以解決所有這些問題。

你知道,當我們的東西相當好的時候,我走出房間,人們感覺很好,兩天後問題又都出現了。你要多久去說服別人一次?但這就是他們熬過難關的原因。這不僅僅是我從場外威嚇他們,還有團隊中的很多人、很多成員都表示,他們願意為此投入精力,這太棒了。

問題 47:在您的職業生涯中,有沒有什麼人被您認為是一個沉默的英雄,他們所做的工作沒有獲得足夠的讚譽?

Jim Keller:大多數工程師。這麼多,真是讓人難以置信。你知道,工程師並不真正被理解。與矽谷每小時賺 800 美元的律師相比,工程師們往往希望獨自工作,做事。有很多人都是很棒的人。我和那些說“這是我的第八代記憶體控制器”之類的話的人談過,他們非常自豪,因為它工作正常,沒有 bug,RTL 乾淨,提交也很完美。像那樣的工程師到處都是,我真的很喜歡那種情況。

問題 48:但他們不自我推銷,或者公司不自我推銷?

Jim Keller:工程師更內向,認真負責。內向的人往往不是自我推銷的人。

問題 49:您是不是有點像我,隨著您的成長,您學會了如何變得更外向?

Jim Keller:嗯,我決定要做更大的專案,為了做到這一點,你不得不假裝自己是一個外向的人,你必須提升自己,因為有一大群決策者不做這樣的工作來找出誰是最好的架構師。他們將挑選每個人都認為是最好的架構師,或者聲音最大,或者最有能力。

所以在某種程度上,如果你想在“首席工程師”之上取得成功,你必須理解如何在相應的環境中工作。有些人天生就非常擅長這一點,所以他們在組織中沒有太多的天賦的組織,有時不需要努力工作,就能獲得很高的職位。

然後你要處理的團隊,主管或以上的人,他們的技能與大多數工程師不同。所以如果你想成為其中一員,即使你是一名工程師,你也必須學會它是如何執行的。其實沒那麼複雜。讀莎士比亞,一些書,馬基雅維利,你可以從中學到很多。

12. 安全、道德倫理和群體信仰

問題 50:未來計算的一方面是安全性,我們已經經歷了側通道漏洞。這是一些潛在的蠕蟲,攻擊我們用來製造快速計算機的技巧。當您在設計晶片的時候,您會在多大程度上考慮安全方面的問題?您發現自己是主動的還是被動的?

Jim Keller:市場支配需求。關於安全性的有趣之處在於,只有當有人關心它時,它才需要是安全的。多年來,作業系統中的安全性就是虛擬記憶體 —— 對於特定程序,其虛擬記憶體無法檢視另一個程序的虛擬記憶體。但作業系統中它隱藏的程式碼非常複雜,以至於你可以欺騙作業系統來做一些事情。所以基本上你從正確的軟體開始安全,但是一旦你不能證明軟體是正確的,他們就開始在那裡設定額外的硬體障礙。

現在我們正在構建一個作業系統看不到使用者資料的計算機,反之亦然。我們試圖將這些額外的界限放進去,但每次這樣做,你都會讓它變得更復雜一點。

您可以欺騙作業系統來做一些事情。所以基本上你從正確的軟體開始安全,但是一旦你不能證明軟體是正確的,他們就開始在那裡設定額外的硬體障礙。

在某種程度上,全球範圍內的安全性主要是通過模糊實現的安全,對嗎?沒有人特別關心你,因為你只是 70 億人中的一員。就像有人能破解你的 iPhone 一樣,但他們大多不在乎。這是一場有趣的軍備競賽,但這絕對是漸進的。他們發現了側通道攻擊,而且它們並不難修復。

但還會有一些其他事情,你知道,我不是安全專家。構建安全特性的開銷大多較低。困難的部分是思考和決定做什麼。

每隔一段時間,就會有人說“這是安全的,因為軟體會做……”之類的話,我總是在想,“是的,只要等 10 分鐘,軟體就會變得更復雜,這將在其中引入一個缺口”。所以裡面需要有真正的硬體邊界。

有很多電腦是安全的,因為它們不與任何東西通訊。就像有很多地方,電腦通常在硬防火牆後面,或字面上與任何東西斷開連線。所以只有物理攻擊才起作用,他們有物理守衛。這很有趣,但在我看來,它不是很高階,我主要關注正在發生的事情,然後我們就會做正確的事情。但我對軟體的安全性沒有信心,因為它總是會發展到它有點違反自己前提的地步。這種情況已經發生了很多次了。

問題 51:您在特斯拉工作過,專門為特斯拉設計過產品。您也曾在銷售多種用途產品的公司工作。除了這種客戶工作負載分析之外,您是否考慮過您正在構建的產品將用於何種用途的無數可能性?您考慮它其背後的倫理問題嗎?還是您只是在那裡解決造芯的問題?

Jim Keller:通用計算的有趣之處在於它可以用於任何事情。所以,如果純好處比純壞處好,道德就會更多。在大多數情況下,我認為純好處於可能的壞處要好。但人們確實對此非常擔憂。人工智慧的倫理方面有很大的變化,老實說,人工智慧的能力到目前為止已經超越了人們在這方面的思考。我不知道該怎麼想。

當前的系統可以做的是已經把我們剝得一乾二淨,它知道我們在想什麼,我們想要什麼,以及我們正在做什麼。接下來的問題是,有多少人有這個理由來構建一個低成本的人工智慧和可程式設計的人工智慧。我們正與相當多的人工智慧軟體初創公司進行交流,它們希望人工智慧硬體和計算能掌握在更多人手中,因為這樣就會有一些相互對峙的局面,而不是一個贏家獲得一切。

但現代科技界一直是贏家通吃。有幾十家大公司彼此之間有著競爭關係。這有點複雜。我想了一些,但是我沒有什麼可以說的,而且你知道到目前為止的好處是積極的。讓技術掌握在更多人手中,而不是集中少數人手中,似乎更好,我們將拭目以待。

問題 52:你為許多大人物工作過。比如埃隆・馬斯克、史蒂夫・喬布斯等等。看起來,你和埃隆的聯絡還很密切。你去年與萊克斯一起參加了 Neuralink 演示,這並非沒有被注意到。你和埃隆現在是什麼關係,是他邀請你的嗎?

Jim Keller:我是受到 Neuralink 團隊成員的邀請。我想說埃隆,我現在和他聯絡不多。我喜歡那裡的開發團隊,所以我去和他們交談。很有趣。

問題 53:這麼說你沒有和埃隆保持聯絡?

Jim Keller:沒有,我最近沒有和他說過話。

問題 54:當時您在特斯拉工作時,這在很大程度上是一個專業的關係,而不是私人關係?

Jim Keller:是的。

問題 55:我想問的是,埃隆是加密貨幣的堅定信仰者。他經常討論與計算和資源需求有關的問題,因為這些東西沒有內在價值。您對加密貨幣有什麼看法嗎?

Jim Keller:不多。不完全是。我的意思是,人類真的很奇怪,他們可以把價值放在像黃金、金錢或加密貨幣之類的東西上,你知道這是一個共同的信仰契約。據我所知,它基於什麼並不重要。我的意思是,加密人員喜歡的是,它似乎超出了某個中央政府的控制。無論這是真的還是假的,我說不準。我不知道會有什麼影響。

但作為一個人,你知道,群體信仰真的很有趣,因為當你建造東西時,如果你沒有一個有意義的群體信仰,那麼你就不會做成任何事情。

群體信仰非常強大,它們影響著貨幣、政治、公司、技術、哲學和自我實現。所以這是一個超級有趣的話題,但是對於加密貨幣的細節,我不太在意,除了作為某種關於群體信仰的心理現象的表現,這其實很有趣。但這似乎更像是一種症狀,或者說是一個隨機的例子。

13.AI 能設計出晶片嗎?

問題 56:就處理器設計而言,目前使用 EDA 工具,可以實現一定程度的自動化。人工智慧和機器學習的進步正在擴充套件到處理器設計,您是否曾設想過 AI 模型可以設計出一個有目的的、數百萬裝置或晶片,而人類工程師無法理解的時代?您認為這會發生在我們的有生之年嗎?

Jim Keller:是的,而且發展得很快。因此,高階 AMD、英特爾或蘋果晶片的複雜性已經幾乎是任何人都無法理解的。然而,如果你今天深入研究細節,你最多可以閱讀 RTL 或檢視單元庫,然後說,“我知道他們做什麼”。但如果你深入研究過一個經過訓練的神經網路中,問為什麼這個權重是 0.015843?沒有人知道。

問題 57:這不是更多的資料,而非設計嗎?

Jim Keller:嗯,有人告訴我這個。傳統上,科學家會做一系列觀察,然後說:“嘿,當我扔下石頭時,它會像這樣加速。”他們計算它的加速度,然後曲線擬合,他們意識到“天哪,有這個方程”。

物理學家多年來提出了所有這些方程,然後當他們提出相對論時,他們不得不彎曲空間和量子力學,他們必須引入概率。但仍然有一些可以理解的方程式。

現在有一種現象,機器學習的東西可以學習和預測。物理是某個方程輸入、方程輸出,或函式輸出。但如果那裡有一個黑盒子,其中人工智慧網路作為輸入,一個人工智慧輸出的黑盒子,你看這個盒子,你不知道它是什麼意思,沒有方程。所以現在你可以說神經元的設計顯而易見的,小處理器,四萬億次運算的計算機,但是權重的設計不是很明顯。這就是問題所在。

現在,讓我們去用人工智慧計算機來構建人工智慧計算器,如果你去檢視人工智慧計算器呢?你不知道為什麼它會得到一個值,你也不知道它的權重。你不懂它們下面的數學和電路。這是可能的。所以現在你有兩個層次的東西你不明白。但你想要什麼結果?你可能仍然按照人類的經驗來設計的。

計算機設計師過去用電晶體設計東西,現在我們用高階語言設計東西。所以這些人工智慧將成為未來的基石。但很奇怪,有些科學領域的功能是無法理解的。過去有解釋物理,比如 1500 年前的亞里士多德,他對很多事情都是錯誤的。然後是方程式物理,比如牛頓、哥白尼等。

斯蒂芬・沃爾夫勒姆(Stephen Wolfram)說,現在將有程式物理。很少有程式可以用一個方程來編寫。定理很複雜,他說,為什麼物理不是這樣的?在計算世界中,現在蛋白質摺疊已經由人工智慧程式設計,它沒有可理解的方程或表述,那麼為什麼物理學不能做同樣的事情呢?

問題 58:會是那些抽象層,甚至到電晶體。最終,每一層都將被 AI 取代,被一些難以理解的黑盒子所取代。

Jim Keller:組裝電晶體的東西,會製造出我們甚至不理解為裝置的東西。就像人們已經盯著大腦看了多少年,他們仍然無法確切地告訴你為什麼大腦會做任何事情。

問題 59:是 20 瓦的脂肪和鹽?

Jim Keller:是的,他們看到化學物質來回移動,電訊號來回移動,他們發現了更多的東西,但這相當複雜。

問題 60:我想問您關於超越矽的問題。我們已經研究矽 50 多年了,矽正規化一直在不斷優化。您是否想過,如果我們在有生之年達到理論極限,矽之外會發生什麼?或者任何東西都能實現,因為沒有 50 年的追趕優化時間?

Jim Keller:哦,是的。計算機是從算盤開始的,然後是機械繼電器,再之後是真空管、電晶體和積體電路。現在,我們製造電晶體的方式就像第 12 代電晶體。他們太棒了,還有更多事情要做。光學研究人員一直在取得進展,因為他們可以通過多晶矽引導光,並做一些非常有趣的轉換。但那是 10 年、20 年以後的事了。他們似乎正取得進展。

這就像生物學經濟學。製造一個複雜分子比製造一個電晶體便宜 1 億倍。經濟是驚人的。一旦你有了可以複製蛋白質的東西,我知道有一家以生產蛋白質為生的公司,我們做過數學運算,每個分子的資本實際上比我們在電晶體上花費的少 1 億倍。所以當你列印電晶體時,這很有趣,因為它們以非常複雜的方式組織和連線在一起。

但我們的身體是自我組織的,它們把蛋白質準確地帶到了需要的地方。這有點神奇。正如費曼所說,在底部,有很大的空間,發展關於化學物質是如何產生和組織的,以及它們是如何被說服以某種方式發展的。

我和一些考慮做量子計算初創公司的人聊過,他們用鐳射來讓原子安靜下來,並將其放在 3D 網格中。超級酷。我認為我們只是觸及了可能性的皮毛。物理學是如此複雜和難以預料,誰知道我們要用它來構建什麼。所以我考慮了一下,我們可能需要一種人工智慧計算方式來組織原子,來讓我們進入下一個階段。但可能性是如此不可思議,簡直是瘋狂。是的,我也這麼想。