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