杠上了,Linus 再次怒噴英特爾
推出日子:2020-07-16 09:01:42
自上個月嚴辭拒絕 Intel 安全漏洞相關補丁之后,Linus Torvalds 再次對 Intel 開噴,直言 “我希望 AVX-512 趕緊‘去死’ ”,脾氣一如既再次怒噴英特爾
近日,Linux 內核維護者 Linus Torvalds 對 Intel 的 Advanced Vector Extensions 512(AVX-512)指令集提出了一些激進的看法,稱其為 “功率病毒”,其創建目的單純只是為了使 Intel 公司的 CPU 硬件在基準測試中跑分更高。此外,Linus 還坦承了自己 “脾氣暴躁”,并且對 Intel 確實 “有偏見”。
AVX-512 是 Intel 公司在 2013 年發布的一套擴展指令集,其指令寬度擴展為 512 bit,每個時鐘周期內可執行 32 次雙精度或 64 次單精度浮點(FP)運算,專門針對圖像 / 音視頻處理、數據分析、科學計算、數據加密和壓縮和深度學習等大規模運算需求的應用場景。
事情的經過是 Intel 近日曝出了關于下一代 CPU 將采用大小核芯片設計的細節,搭載這項技術的 Alder Lake 系列處理器將于明年正式推出。知名 Linux 技術網站 Phoronix 跟進了這則消息,并透露 Alder Lake 將限制 AVX-512 等大型擴展指令集,僅完全支持 AVX-2 和其他輕量級的擴展指令集。如此一來,芯片大核的數據吞吐量和時鐘頻率更高,同時小核的能效更加顯著。也就是說,Intel 限制了某些指令集(比如 AVX512 / TSX / FP16)只能在大核上運行。
Linus 本人看到了這篇文章,并在該文章的討論中發表了自己的觀點:
我希望 AVX-512 趕緊 “去死”(dies a painful death),這樣 Intel 就可以開始解決實際的問題,而不是去嘗試創造這些花里胡哨的指令集,然后圍繞它們做一些自欺欺人的基準測試。
我希望 Intel 能夠返璞歸真:讓他們的進程再次正常運行,更多地專注于提升用戶基本體驗的常規代碼,而不是糾結于所謂的高性能運算或一些毫無意義的特殊情況下才會出現的問題。
我之前已經說過這一點,我會再說一遍:在 x86 的鼎盛時期,當 Intel 一直向銀行大笑并殺死所有競爭對手時,在 FP 負載方面,其他廠商絕對都比 Intel 做得更好。Intel 的 FP 性能(相對而言)總是略遜一籌,但大家似乎都忽視了這一點。
因為所有人都只在乎所謂的基準測試跑分結果。
不論是現在還是將來,AVX-512 的情況是不會改變的,是的,你們可以在 AVX-512 上找到需要的東西,但那些東西并不會帶來你們預期的收獲。
AVX-512 具有很明顯的缺點,我寧愿看到這些 CPU 芯片的性能用于其他更相關的事情。即使仍然要做 FP 運算(我寧可它們發生在 GPU 中,而不是在 AVX-512 中),或者像 AMD 那樣給我更多的內核(具有良好的單線程性能,但沒有像 AVX-512 這樣的垃圾)。
我希望使用常規的整數代碼來達到功率的極限,而不是使用某些像 AVX-512 這樣的 “功率病毒”來達到最高頻率(因為人們最終還是要用它來跑 memcpy 的!),但這占據了大量的內核資源(因為那些無用的垃圾單元占用了空間)。
是的,是的,我承認我有偏見。我非常討厭 FP 基準測試,盡管我意識到其他人會深切關注這玩意兒。我只是認為 AVX-512 的存在完全是個錯誤,是我絕對不能忍受的事情。這是 Intel 犯下的一個錯誤的案例,這將導致市場碎片化加劇。
停止使用這種只適用于特殊情況的垃圾,讓所有人都在乎的系統核心盡其所能地運行好其基本的性能。然后做一個專為這些特殊情況準備的 “FPU”,這樣所有人都會很高興的。AVX-2 真的已經綽綽有余了。
是的,我的脾氣就是這么暴躁。
—— Linus Torvalds
總而言之,Linus 認為 Intel 為了提高 CPU 的性能跑分,強行在 CPU 中塞入了像 AVX-512 這樣的東西,導致 CPU 內核臃腫,為了提升少數特定使用場景下的運算性能而影響了大部分普通用戶的使用體驗。
早前有傳聞稱,Intel 可能放棄對 AVX-512 的支持,但 Alder Lake 仍然沒有砍掉,只是將 AVX-512 限制在了大核中。事實上,該擴展指令集對主流家用臺式機市場的影響確實不大,但可能對數據中心和移動設備(或任何計算負載劇烈波動的場景)產生較大的影響。
Intel 于 2013 年推出了 AVX-512,其最初只是 Xeon Phi x200 和 Skylake-X 處理器產品線的一部分。但現在 AVX-512 已經進入包括 Ice Lake 在內的諸多 Intel 旗下的主流 CPU 架構。
值得一提的是,這早已不是 Linus 第一次沖 Intel 發飆。2018 年初,為了修補 Spectre 漏洞,Intel 工程師提供了一個間接分支限制推測(indirect branch restricted speculation, IBRS)功能的補丁。Linus 當時就在郵件列表中公開指出 IBRS 會造成系統性能大幅降低,直言該補丁 “就是徹徹底底的垃圾”,“Intel 真的要做這個 X 一樣的東西?” 。
上個月,Linus 還嚴詞拒絕了 AWS 工程師提交的一個關于修復 Intel 安全漏洞的補丁,并嘲諷其 “像一朵矯情的花一樣”。
一直以來,Linus 都在抗議 Intel 把 CPU 核心做得越來越臃腫冗雜。
自從把自己用了 15 年的 Intel CPU 換成 AMD Ryzen Threadripper 后,Linus 似乎在懟 Intel 的道路上越走越遠了。