EP 1042020-06-271:49:51
從 RISC 到 RAID 的黃金年代
David Patterson
圖靈獎得主回顧 RISC 與 RAID 如何誕生、摩爾定律放緩之後怎麼辦,以及教學與摔角教會他的事。
David Patterson: Computer Architecture and Data Storage | Lex Fridman Podcast #104在 YouTube 看 ↗
重點6 條
- RISC 如何贏過 CISC:Berkeley、Stanford、IBM 在 1980 年代主張指令集要精簡,一開始被業界視為異端;後來 UNIX 證明作業系統能用 C 寫,編譯器接手翻譯的工作,精簡指令不必再靠人工寫組合語言,RISC 反而跑得更快。
- RISC-V 從教學工具意外變成產業焦點:2010 年 Berkeley 團隊記取舊 RISC 專案的教訓做出開放指令集,原本只是自用,直到業界主動找上門詢問,才發現市場一直缺一個開放標準。
- 摩爾定律正在放緩,不是行銷話術:Patterson 堅持這是可以量測的事實;電晶體數量不再每兩年翻倍,逼著業界轉向為特定應用打造的加速器,時機恰好碰上機器學習興起。
- Benchmark 文化決定一個領域能不能進步:從 RISC 時代業界共同訂出的 SPEC,到他參與催生的 MLPerf,他認為沒有公平、公開的量測,公司只能各說各話,領域也很難真正進步。
- RAID 從一顆放在 Macintosh 旁邊的硬碟開始:他與 Randy Katz、Garth Gibson 想到能不能把很多顆便宜的 PC 硬碟湊成陣列,既加速又靠備援解決可靠度問題。
- 教學與研究不是取捨,而是互相成就:他在退休時發現,系上拿過傑出教學獎的五個人全是國家工程院院士,其中三人拿過圖靈獎;摔角則教會他自信與帶團隊的方法,一路延續到他怎麼帶研究團隊。
時間軸26 段
從電腦 50 年來的巨變聊起:電腦有輸入輸出、記憶體、控制與算術單元五個基本元件,微處理器就是把處理器塞進一片晶片。
Gordon Moore 在 1965 年預測電晶體數量未來十年會每年翻倍,1975 年改成每兩年翻倍,還預言電腦會出現在汽車和超市買得到的東西裡,後來被稱為摩爾定律。
電腦靠一層層抽象化來處理複雜度,過去只有軟體能開放原始碼,如今硬體的設計本身也開始走向開放。
指令集是硬體與軟體溝通的詞彙,x86 屬於 Intel、ARM 屬於另一家公司,長年都是私有財產。
1980 年代 Berkeley、Stanford、IBM 主張指令要精簡,對抗業界「指令越複雜越好」的主流看法。
精簡指令要多執行約 50%,但編譯器能把複雜程式翻成簡單指令,換來每指令執行速度快上數倍。
UNIX 證明作業系統能用 C 語言寫,指令集因此能被編譯器藏起來,不必再靠人工寫組合語言,精簡指令的優勢才真正發揮。
Intel 沒有放棄 x86,而是讓晶片內部即時把複雜指令翻譯成類似 RISC 的指令執行,既保留舊軟體相容性又吃到 RISC 的速度紅利。
他與 Hennessy 合著教科書,把電腦架構的設計從「憑經驗判斷」變成可以用公式與 benchmark 比較的量化科學。
把執行時間拆成指令數、每道指令的平均時脈週期、時脈長度三項;RISC 指令多 25–50%,每道指令的週期卻只要五分之一左右,1984 年前後業界就接受了這個論點。
2010 年 Berkeley 團隊記取 1980 年代四個 RISC 專案的教訓,做出一套開放指令集,取名向它們致敬。
原本是 Berkeley 自己做研究、上課用的,採 BSD 授權讓其他學者敢拿去用,直到業界主動反映想用同一套指令集,才發現市場一直缺一個開放標準,順勢成立基金會推廣。
雲端幾乎全被 x86 把持、手機被 ARM 主宰,物聯網因為沒有龍頭反而是 RISC-V 最有機會切入的市場。
ARM 的授權分兩種:直接用現成設計,或花上千萬美元買下自行設計的權利。同樣用 ARM 指令集,Apple 買了後者、組了頂尖團隊,這才是它比其他 Android 陣營廠商快的原因。
他最欣賞「小而美」,RISC-V 只用約 40 條核心指令就能撐起所有軟體,其餘功能都是可選、不是必需。
過去電腦每一兩年就快一倍,如今 Intel 處理器一年只進步幾個百分點,業界轉而替特定應用做加速器,恰好碰上機器學習興起:機器學習的核心是矩陣乘法,而這正是硬體設計者最會加速的運算。
他參與催生機器學習硬體的公開評測標準 MLPerf,讓不投入軟體堆疊的公司在跑分上無所遁形;以色列的 Habana 在 MLPerf 拿到好成績,Intel 則收掉不公布分數的 Nervana 產品線,花 20 億美元買下 Habana。
他認為量子運算像核融合,兩份國家級報告都指出能除錯的量子電腦大概還要十年,目前不該指望它解決眼前的效能問題。
他堅持摩爾定律「趨緩」是量測出來的事實,不是行銷話術,也不是說半導體技術從此停滯不前。
他擔心多數人還沒意識到雲端伺服器不會再像過去一樣年年變快,軟體工程師得開始正視這件事,重新學怎麼把軟體寫得更有效率。
他與 Randy Katz、Garth Gibson 從 Macintosh 旁邊那顆比洗衣機小得多的硬碟得到靈感,想把許多便宜的 PC 硬碟湊成陣列。
硬碟從會轉動的磁性材料逐漸換成快閃記憶體,但 RAID 用備援換可靠度的精神,換了技術照樣適用。
退休派對上看到一張照片,照片裡五位拿過校內傑出教學獎的同事全是國家工程院院士,其中三人拿過圖靈獎;他也同意 Feynman 的看法,教學逼著人把事情想得更透徹。
高中與社區大學時期的摔角經歷,給了他身體上的自信,後來轉化成敢在研究上據理力爭的底氣,也學到怎麼帶一支互相支持的團隊。
他引用同事的話:人生的分量不是銀行存款裡的零,而是訃聞在報上占了幾吋版面;回顧生涯,真正在意的是影響過的人,不是論文數量。
結婚超過五十年,被問到怎麼維持,他給出九個英文單字:「我錯了,你是對的,我愛你」。