真的,你的筆記本電腦賽過千萬億臺 60 年前的大型機(jī)
每當(dāng)我聽到有人大談特談我們現(xiàn)在的計(jì)算機(jī)要比上世紀(jì) 60 年代阿波羅登月時(shí)期的計(jì)算機(jī)強(qiáng)大得多時(shí),我都會感到震驚。這些比較通常嚴(yán)重低估了差異。
1961 年,世界上的一些大學(xué)已經(jīng)購買了 IBM 7090 大型機(jī)。7090 系列是第一個(gè)全晶體管計(jì)算機(jī)系列,以今天的貨幣計(jì)算,它的成本為 2000 萬美元,相當(dāng)于今天的頂級筆記本電腦的 6000 倍。它的早期買家通常將計(jì)算機(jī)作為整個(gè)校園的共享資源來部署。很少有用戶能幸運(yùn)地每周獲得一小時(shí)的計(jì)算機(jī)時(shí)間。
7090 的時(shí)鐘周期為 2.18 微秒,因此其工作頻率略低于 500 KHz。但在那個(gè)年代,計(jì)算機(jī)指令沒有流水線執(zhí)行,所以大多數(shù)指令需要一個(gè)以上的時(shí)鐘周期來執(zhí)行。一些整數(shù)運(yùn)算需要 14 個(gè)時(shí)鐘周期,而一個(gè)浮點(diǎn)運(yùn)算可能需要 15 個(gè)時(shí)鐘周期。因此,通常估計(jì) 7090 每秒鐘可以執(zhí)行約 10 萬條指令。而大多數(shù)現(xiàn)代計(jì)算機(jī)的 CPU 核心能夠以每秒 30 億條指令的速度持續(xù)運(yùn)行,甚至其峰值速度要快得多。這就是 3 萬倍的差距,所以一個(gè)有四核或八核的現(xiàn)代芯片很容易達(dá)到比 7090 快 10 萬倍的運(yùn)算速度。
與 1961 年那個(gè)得到一小時(shí)計(jì)算機(jī)時(shí)間的幸運(yùn)兒不同,你可以一直運(yùn)行你的筆記本電腦,每周你可以累計(jì)得到超過 1900 年的 7090 計(jì)算機(jī)時(shí)間。(我不想問其中有多少時(shí)間是花在“我的世界”游戲上的)。
繼續(xù)這個(gè)比較,考慮一下訓(xùn)練流行的自然語言人工智能模型 GPT-3 所需的指令數(shù)量。在云服務(wù)器上執(zhí)行這些指令相當(dāng)于 355 年的筆記本電腦時(shí)間,這在 7090 上就是超過 3600 萬年。當(dāng)你等待這項(xiàng)工作完成時(shí),你會需要大量的咖啡。
但是,說真的,這種比較對今天的電腦還是不公平的。你的筆記本電腦可能有 16 GB 的主內(nèi)存。而 7090 的最大內(nèi)存為 144 KB。要運(yùn)行同樣的程序,需要將大量的數(shù)據(jù)從 7090 中換入換出,而且必須使用磁帶來完成。當(dāng)時(shí)最好的磁帶機(jī)的最大數(shù)據(jù)傳輸率為每秒 60KB。雖然一臺 7090 計(jì)算機(jī)上可以連接 12 個(gè)磁帶設(shè)備,但這個(gè)速率是在它們之間共享的。而且,這種共享需要一組人類操作員來交換驅(qū)動器上的磁帶;以這種方式讀取(或?qū)懭?16GB 的數(shù)據(jù)將需要三天時(shí)間。因此,與今天的速度相比,數(shù)據(jù)傳輸也慢了大約 10 萬倍。
所以現(xiàn)在 7090 看起來運(yùn)行速度是你 2021 年的筆記本電腦的千萬億分之一(10-15)。在現(xiàn)代的筆記本電腦上運(yùn)行一周的計(jì)算任務(wù),就算是 7090 從宇宙誕生就開始運(yùn)行也做不完。
但等等,不止如此。筆記本電腦中的每個(gè)核心都有內(nèi)置的 SIMD(單指令、多數(shù)據(jù))擴(kuò)展,在用于向量運(yùn)算時(shí)可以大幅提升浮點(diǎn)運(yùn)算速度。而在 7090 上甚至沒有這些東西的影子。然后是 GPU,最初用于圖形加速,但現(xiàn)在用于大部分的人工智能學(xué)習(xí),如訓(xùn)練 GPT-3。最新的 iPhone 芯片 A15 Bionic 上就不止一個(gè) GPU,而是有五個(gè) GPU,以及一個(gè)額外的神經(jīng)引擎,在我們所做的所有其他比較的基礎(chǔ)上,它可以每秒運(yùn)行 15 萬億次算術(shù)運(yùn)算。
短短 60 年的差異讓人難以置信。但我想知道,我們是否有效地利用了所有這些計(jì)算能力,可以像我們的祖先從紙筆到 7090 的飛躍那樣做出改變?
這篇文章將以《摩爾如此之多》為題發(fā)表在 2022 年 1 月的印刷版上。