看板 PC_Shopping作者 a58524andy (a58524andy)標題 [情報] Alder Lake沒有AVX512,於是Linus又開嘴惹時間 Tue Jul 14 01:16:06 2020
不過嘴的不太是針對「啊你怎麼拔了AVX512」這部分
而是針對AVX512本身這部分
背景:
phoronix發現Intel最近替GCC 11新增自家Sapphire Rapids、Alder Lake系列CPU
支援的程式碼中,並沒有AVX512相關的部分
也就是Intel新的大小核Alder Lake架構
不會支援Intel常常拿來廣告的AVX512指令集擴充
然後創世神Linus Torvalds又双叒開始嘴砲了
source:
https://www.realworldtech.com/forum/?threadid=193189&curpostid=193190
https://reurl.cc/exN7Q7
個人渣翻:
------------------------------------------------------------------------------
我希望AVX512會一敗塗地,而Intel會開始做些比較實際的工作
而不是多塞些奇怪的指令
然後替那些指令量身訂做些跑分。
我希望Intel能夠腳踏實地些:繼續推進製程節點,並且不要整天只是想在
高效能運算或是其他冷門領域耍些花招
而是把這些心思放在該如何讓一般的程式都能跑得更快上
我之前就提過了,這次我再重申一次:
就算是在x86架構最輝煌的那個年代
那個Intel錢淹腳目、除了Intel沒一個能打的年代
Intel的浮點運算其實是弄得最爛的那家
單論浮點運算的相對效能,根本是Intel反過來被各家壓著打的
不過這根本無足輕重
因為除開跑分的時候根本沒人在乎
目前AVX512的處境基本上是一樣的,而我會說未來也會是這樣。
對啦,你要找的話當然可以找到一些應用非常倚賴AVX512的支援
不過宏觀來說根本沒幾隻貓會專門為了這類應用而真的掏錢添購機器。
並且AVX512是有其負面影響的。
我反而更希望Intel把那些電晶體花在其他真正緊要的刀口上。
例如拿去加速GPU的浮點效能啦
甚至單純只是給我更多的實體核心,單線程性能強大、而沒有AVX512這種垃圾的核心
基本上就是AMD目前弄的這樣。
我希望我的CPU頂到功耗上限的原因是真的在跑日常的整數運算
而不是其他AVX512之類燙到爆炸、只會讓處理器降頻
──畢竟,多數人會用AVX512的理由是拿來memcpy (*1)──
以及浪費矽晶圓面積,導致塞不下更多實體核心的指令。
是的,我有些偏見。
我恨透了浮點數跑分這檔事,但我也知道的確有些人很看重這部分的效能。
不過我還是認為AVX512本身就是個餿主意,怎麼想也不該用它做為解決方案。
可能我有些反應過度,不過我就是這樣認為的。
Intel有過一些錯誤決定,而AVX512本身絕對是其中最經典的那幾個
部分原因也是因為它助長了x86市場的碎片化。
不要再弄這類專門加速
冷門應用的玩意了
你該做的是盡心盡力地去讓那些最常見、多數人真正在意的場景跑得更快些。
隨便弄個不要太鳥的浮點運算,單單這樣人們就會買單了
我會說AVX2就已經非常足夠了。
對,我很容易被戳到。
------------------------------------------------------------------------------
(*1)
以C的語法來說,要快速初始化/複製一段記憶體區塊
你需要的是<string.h>裡面的memset啦memcpy之類的東西
前者把一塊MEMory都SET成某個預設值
後者幫你把一塊MEMory CoPY到其他地方
(對,部分人士真的很懶得打字)
而一般x86-64來說,這部分可能是以64-bit為單位去操作的
而處理器如果額外有avx512擴充的話
裡面的其中幾個指令可以達成一樣的效果,而且是用512-bit為單位去操作
想當然爾能夠快上許多──AVX512指令CPI跟普通指令一樣、並且不要降頻的話
小結:
浮點數運算不是所有應用都用得到的
而專注於浮點數的指令層平行化的AVX512更然
kernel就是一個用不太多的例子
嗯雖然我根本不懂,暫且這樣說吧
而AVX512又耗電又佔面積
會被Linus嘴也是合理
歷史上有過不少CPU附了專用的指令
基本上也是當時有需求才會有這樣的設計
不過這需求是否真的是需求則見仁見智
以前甚至有單個指令完成某段記憶體區段的傅立葉變換的
然後就沒有然後了
TL;DR
Intel自己搞出來AVX512,結果也不是普及到自家所有產品
用途又相對稀少
Linus認為Intel不該費心在這類
冷門應用上
那些電晶體拿來改進IPC啦或是單純多塞核心啦有用多了
喔對這邊有另一個觀點,這篇洪教授的文算平衡打擊
https://www.facebook.com/shihhaohung/posts/4148325648543225
沒問就轉貼的關係,就不講內容了
有興趣自己點個
--
※ 文章代碼(AID): #1V39RQsy (PC_Shopping)
※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1594660570.A.DBC.html
推 AreLies: 這樣粉粉怎麼吹AVX5121F 07/14 01:25
→ yymeow: 我只知道只要測試軟體一操AVX512,大概就等同後燃器4F 07/14 01:28
→ WARgame723: 連Avx512都能噴,你怎麼不去噴zen2加了完整的2565F 07/14 01:28
→ yymeow: 全開。溫度跟功耗都衝到頂點6F 07/14 01:28
推 AreLies: 此Linus非Linus7F 07/14 01:28
推 ceming: 723你真的丟臉到家 哪個Linus你也不知道
不懂就滾回去躲棉被哭比較不會被人笑你8F 07/14 01:31
推 Oxyuranus: 某樓看一下是哪個Linus再說話好嗎...10F 07/14 01:34
推 AreLies: 有一個Linus是Linux核心的首要架構師
另一個Linus是Linus Media Group創辦人11F 07/14 01:34
推 k2450: Linus Torvalds有兩個?13F 07/14 01:36
推 AreLies: 723是在嘴哪個Linus
Linus Torvalds跟LINUS SEBASTIAN啊14F 07/14 01:36
推 WARgame723: 看錯,原來是那老人那不意外阿,仇i都仇多久了16F 07/14 01:38
推 AreLies: 其實Linus Torvalds也有嘴過其他團隊跟公司 比較有名的Nvidia, fuck you!
還有說OpenBSD的團隊是一群
“Masturbating Monkeys”18F 07/14 01:43
推 birdy590: 這次嘴的有道理啊 根本走火入魔了 到底誰定的方向22F 07/14 01:44
→ AreLies: 還有Linus今年才從intel換AMD 要仇Intel也想太多23F 07/14 01:44
→ birdy590: Intel 會一路下坡 跟這種迷航絕對脫不了關係24F 07/14 01:45
推 asiakid: 靠北 我原本想護航723只是反串而已XD25F 07/14 01:45
推 MK47: AVX512你不如用顯卡去算26F 07/14 01:56
----------------------幫你highlight-------------------------------------------
推 Bencrie: 去翻 glibc 的 source 你就知道 memcpy 一堆版本
各種 SIMD 實作。因為要滿足特定條件的長度才能用27F 07/14 02:00
------------------------------------------------------------------------------
推 miname: 版上不少跑深度學習的就因為MKL買intel啊,MKL就靠AVX撐啊,所以就取向的不同啦,Linus講的是PC,洪教授講資料中心,至於intel PC產品線明明就是分開的還有AVX就...
那個洪教授也是個嘴砲仔就是了,Linux kernel 要是真如他所說要用AVX就變成要多一個intel64的branch了29F 07/14 02:08
感覺他觀點不太像這樣(?
https://reurl.cc/kdz3Yd
推 miname: 所以我說他是以資料中心觀點出發啊
然而你要是裝一張NV顯卡,深度學習還是只會跑在顯卡上面,AVX還是無用35F 07/14 02:29
我是指洪有說他不是硬要kernel去應用AVX512的部分
誠然不同專業的人會有不同觀點
除了推文提到的MKL之外
可能做多媒體的人也真的覺得AVX512不錯快、Linus只顧kernel之類(?
不過我也沒寫過就是(逃
→ dieorrun: 723要嘴LTT都還不夠格了 更何況創世神38F 07/14 02:30
推 miname: 說他嘴砲就是明明這件事情扯不上kernel要不要用浮點數,他硬要扯遠說他們抗拒浮點數39F 07/14 02:34
原來XD
推 Shauter: 沒讀過白算盤的c52又要咬人了41F 07/14 02:38
→ friedpig: 居然拔掉了 這樣怎麼讓溫度突破天際42F 07/14 02:38
→ friedpig: 不過牙膏王特規的還不只這個勒 未來ml還多做一堆int4 int8的運算指令集 也是各種搞事的兇手45F 07/14 02:43
→ AreLies: AVX512跑分好看 實際應用又是另一回事47F 07/14 02:44
→ friedpig: 其實兩邊就在意的東西不同而已 做kernel的喜歡乾乾淨淨 越不特規越好 最好都堆滿電晶體衝傳統效能
做AI的當然有方便的ASIC幫忙加速屌打通用電路48F 07/14 02:46
推 miname: 然後洪教授最後一句我有些意見,要單一核心又快是可以從架構上改善的,最無腦就把AVX的空間拿去塞cache啊,你教計算機結構那麼久了不知道嗎?51F 07/14 02:47
→ friedpig: 牙膏廠是商業取向的 同樣面積去換一點點效能差異的通用效能 還是有商業市場的AI特規效能 哪種好賣錢就不好說了
cache也不是無腦塞永遠都有用 整體設計都要對著調啊 重點是cp值不夠的問題吧 同樣面積換到可能5%不到的進步 拿去換成ASIC可能幾倍在算的差距
牙膏王之前更極端還有考慮塞FPGA進去 也有prototype出來 不過好像有點沒搞頭54F 07/14 02:48
推 labbat: 原來linux 核心會用浮點指令浮點暫存器(惶恐)62F 07/14 02:52
現在才發現這樣寫怪怪的XD
改了
推 miname: 但是作ML的人隨便一張顯卡就屌打你的AVX了,所以純CPU跑分很讚,但是用不到63F 07/14 02:53
→ karta1897830: jacky大 AMD一直以來路線都是把浮點運算放在顯卡,CPU是直接放生,沒記錯是這樣65F 07/14 02:54
→ friedpig: 牙膏王現在在推的是混合的拉 cpu前處理加減扣點時間 還是多少有幫助67F 07/14 02:54
推 wres666: avx512實際上是有用的吧,我的1035g1跑matlab比同學的10210u快超多的,那個時候用cpuz看就是多了avx51269F 07/14 02:55
→ friedpig: 接下來大概是想推深度跟自家顯卡結合的cpu+gpu方案看能不能勉強幹過純nv gpu方案吧71F 07/14 02:56
→ jior: 自己搞AVX512然後又要做大小核,結果小核不能跑AVX512又把他拔掉,以後難道只有XEON能跑?73F 07/14 03:00
→ friedpig: 不過我記得之前爆料好像只有小核阿痛不支援512吧
大核有不支援嗎 有點忘了75F 07/14 03:03
→ yymeow: 沒有也好,會涼一點77F 07/14 03:08
推 hsparrot: 需要AVX512的去買I,不需要的去買A,問題解決78F 07/14 03:24
推 DoBahaha: 反正就是嘴Intel不要只會先射箭再畫靶
實際一點整天打高空80F 07/14 03:39
推 BFer: 723不意外82F 07/14 05:51
推 brovet: 洪講的Linus Torvards 是哪位??有這個人嗎 有夠不專業83F 07/14 05:51
推 will3509111: 而且AVX-512本身也很雜....
Xeon和Xeon Phi跟Desktop用的AVX-512也有各種微妙的差異85F 07/14 05:56
推 AKSN74: 他早就放棄I皇了XD90F 07/14 07:28
推 miname: 洪教授的專業可多了,一下資安專家,一下硬體專業,一下OS大師,一下深度學習,還有啥不是他專業的?91F 07/14 07:35
推 tonyian: 要浮點加速丟給gpu好嗎,不要拿核心運算來浪費,分工,比起洪我更相信Linux93F 07/14 07:38
推 basacola: 沒有讀過白算盤的C52 XDDDDDDDDDDDDDD95F 07/14 07:51
推 felaray: 記憶體區塊的fft轉換...聽起來好雞肋但又好酷XD96F 07/14 08:15
推 goldie: 推白算盤XDDD97F 07/14 08:15
推 wenli978: 創世神的觀點很白算盤啊,就是加速日常最多用到的指令集,而不是浪費電路去做其他奇怪的東西99F 07/14 08:28
→ friedpig: 現在都強調edge了拉 local要有簡單訓練能力local最佳化模型210F 07/14 14:41
推 kimisawa: 等一下723你說Linus 仇i搞錯什麼了嗎
他撐著用i多久了 是幾個月前才受不了212F 07/14 15:10
→ AreLies: 兩個Linus其實都是今年才把自己的主機換成AMD214F 07/14 15:45
推 AJizzInPants: 自己搞不清楚狀況被笑還要嘴硬講年紀
可憐哪.jpg
不管是反串還是真的fanboy都是可憐215F 07/14 16:14
--