Re: [閒聊] AVX指令集實際應用是甚麼功能?
※ 引述《superRKO (挖洗RKO)》之銘言:
: 小弟菜雞
: 最近看INTEL的AVX512被嘴爆了,I皇QQ
: 又看了某幾集極客灣他們介紹說烤機烤AVX,I家的U會變很燙,而A的反而不會
: 然後這幾年有聽到AVX有實際在遊戲上應用的就刺客教條-奧德賽
: 但還是想問一下這AVX指令集的實際應用到底是甚麼?
AVX 是做什麼用的?
簡單一句:向量資料計算
仔細一點:INT8x32/16x16/32x8/64x4 加減乘飽和比較
FP32x8/64x4 四則運算﹑根號﹑逼近倒數...
FP32/64 <-> INT32
其他還有 bitwise ops, permute, mask, broadcast...
給 GPU shader 算會:
花太多步驟在交換資料
或是計算流程太複雜的
都可以給 AVX 算
而
對用 AVX 的人來說,說 AVX 這東西沒用實際上是:
『不是它沒用,是你沒 用』
^在
Intel x86 有一長串 SIMD 指令集擴充歷史
每次都是為了擴充處理資料能力的價值(Intel Inside)加的
1. 將近三十年前的 Pentium 時代
Intel 為了要讓 x86 有 DSP 處理整數域向量資料的功能
所以加了 64bit INT8x8/16x4/32x2/64x1 MMX 指令集,造就 PentiumMMX
那時候如果沒 MMX 而用整數指令做 filter 或 converter 譬如做色域轉換
效率最差可能剩下不到一成
在這之前,TI 爽爽賺賣很貴的 DSP, Creative Labs 也在賺賣很貴的 SB...
2. 二十幾年前的 Pentium!!! 時代
一堆初階 3D 顯示卡出現,只有算整數域像素顏色卻沒有計算浮點向量的 GPU
要是沒有 FP32x4 的 SSE 而用 x87 處理頂點向量,你只會得到少了 3/4 以上
多邊形的 3D 畫面
3. 二十年前第一個有 ucode cache 的 x86 Pentium4
是該把 MMX & x87 移給有"正常"通用暫存器的 SSE 做了,所以有了 SSE2
SSE2 包山包海 FP32/64, INT8/16/32/64 都有,只是不包超越函數還有那 FP80 x87 也開始慢慢淡出浮點數處理的功能
4. 過沒多久更燙的 Prescott Pentium4
Intel 開始加了一些可以直接處理同個暫存器內相鄰浮點數對加減的指令集 SSE3 SSSE3 則是把相同功能又做到了處理整數資料上
這時候的 GPU programmable shader 還不是個咖小 @.@
5. 十幾年前大賣的 Core2
Intel 把向量的分量遮罩選擇功能做進了 SSE4.1 ,也補了整數的最大最小值指令 好不容易這時候 GPU 終於開始出頭了
6. 第一代 Core 處理器出了
GPU 開始標榜各式各樣的 shader
Intel 把腦筋動到字串比對&糾錯碼上,所以又做了 SSE4.2
7. 十年前第一代 Core 處理器改製程
想想處理加解密用一般指令計算還是要很久,所以 Intel 把加解密的 AES & GF 用到的無進位長整數乘法加進來
要 GPU 加這種功能?吃x比較快...
8. 128bit SSE1/2/3/4.1
這些處理 FP32x4 是可以,但是對 FP64x4 卻只剩下一半效能
也不能指望那時連 FP64 都不知道是啥的 GPU
於是 Intel 在第二代的 Core i7 把 AVX 做上去了
終於...終於... 多了一倍數量&寬度的暫存器
目的暫存器也不需要再跟其中一個來源暫存器共用了
但這兩倍寬只局限於處理浮點數
9. 為什麼 GPU 都喜歡偷精確度用 FP16 ???
這樣跟 CPU 交換資料很麻煩咧...
所以 Intel 加了 FP16 在第三代 Core 處理器,做 FP16<->FP32 轉換
10.馬的8.啦
為什麼 AVX 256bit 暫存器只能用在浮點數,那整數域的咧???
所以 Intel AVX2 就把整數的部分也補上了,在第四代 Core 處理器上
---------------------------------------------------------------------
然後...
然後就沒有了...新 SIMD 指令集一段時間
---------------------------------------------------------------------
11.做過超長寬度的 SIMD 處理器 Larrabee & Xeon Phi 的
Intel 在第六代 Core 的 Xeon 版上做了 AVX512 (不是全套,只是部分類別) 這東西比之前的至少好用在
a.多了獨立的 64bit 遮罩暫存器八個
(以往要遮罩結果,得拿完整的 SSE/AVX 暫存器來用)
可以決定對目的暫存器各分量是否要寫入運算結果或是清除
b.暫存器數量跟寬度也多 AVX2 一倍
譬如 AVX2 要實作 SHA3 得要額外記憶體放常數表或中間值
AVX512 可以全塞進暫存器裡
所以!!!
如果要說 AVX512 沒必要
要嘛是額外加價買自己用不到的
要嘛像第十代 Core 處理器,只做了一組 512bit FP pipe 給 AVX512 FP 指令用
搞得 AVX512 FP peak performance 跟 AVX2 一樣
要是用得到AVX512
這東西比現在標榜 10+TFlops 但是只有 FP16/32 的 GPU 用途更多
GPU 廠商會說 GPU 浮點運算超強,但也只強在 FP16/FP32
一旦是其他精確度,衰減的幅度就比有 AVX 的 CPU 要大很多
不像 CPU 是對半砍,而是對半砍"五次"
如 FP64
2nd gen Xeon scalable 8280 的 AVX512 比 RTX2080 Titan
前者 peak 超過 2TFlops, 後者只有前者 1/4 不到
CPU 自始至終追求的都是通用度
所以在某個 coprocessor 還沒有必要被獨立特化出專門用途之前
我們就只得拿 CPU 來做
換句話說至少我們還有個啥都行但不是最快的貨色能擋
如果現在出了一個便宜的 x86 CPU ,但代價是把所有 SIMD 指令砍掉 (只留 x87)
各位還會想買單嗎?
至於 PPC 的 Altivec 跟 ARM 的 Neon
嗯...指令集都固定長度了是能加多少新的???
萬年標配 FP32x4...
所以我們該感謝 Intel 訂 x86 是可變長的指令集 lol
讓我們不知道啥時才能擺脫它...
--
專業推
所以都用V100的話就沒有問題了是嗎?
這篇有歷史性 推一下
推整理
專業文必推
清楚 推
專業
對只打遊戲的根本雞肋 頂多模擬器有用
專業
好像很厲害 快推
i9-7900x開始就有兩組AVX512 pipe。可以看到很明顯
推這篇的歷史 以前的確MMX/SSE就夠嚇人了
的效能提昇。Icelake才有avx512,cometlake是沒有的
普通USER要碰AVX512現在只能用筆電的Icelake
因為Intel太喜歡區隔市場,很多人只碰低階Xeon Gold
那只有一組AVX512 pipe。所以才會誤會AVX512對比AVX
沒有性能提昇。但AVX512比avx2好用太多了,光是
很不幸的全世界使用普通cpu會用到這個指令的可能比
你想的還少
gather/scatter就讓寫程式容易許多。說AVX512不好的
是真的沒寫過vector的程式。
這幾篇都寫了不少有意思的AVX的知識
但其實大家想知道的是:那些應用AVX的幫助大?
這些應用我們有在用嗎?
還有ARM現在有SVE,SVE2。所以還是有在增加指令集
不是懷疑你沒用。是怕我家風扇不夠用。
ffmpeg,常見的轉檔程式就支援avx512。
是,影片轉檔確實是AVX最常見的運用之一
但這塊不就是有人在質疑GPU會取代的部分?
CPU能靠2PASS提升畫質,GPU不行啊畢竟不能未卜先知
看不懂但推
那AMD的SSE4a是拿來幹嘛的?
轉檔部分其實爭議點在 低碼率 表現
以前h264的時候,GPU要相當高碼率才會有不錯的水準
但近期我所看到的RTX系列的轉檔表現也比以前強超多
其實你不用自己用 某os會幫你調用 從mmx sse 乃至後
來avx 你不做 他們就在某耗電規格或者反應時間卡你
讓你拿不到他們認證 除非他們有特殊目的才放行
vectorized columnar olap database
我現在比較想得到的是數值分析軟體,這個AVX的優點
拿Q8400跑跑win7以後OS 那種延遲感是非常顯而易見的
就很大
用在"富岳",全世界最快的超級電腦,完全不用GPU
好奇os拿來幹嘛
專業推
看不懂還是推
借問一下,以前聽過3DNow!好像很屌,後來怎麼都沒聽
到了
推 這篇講的比上一篇好太多了
我好像又多懂一點點了
有懶人包有推
上面兩位問題本身關鍵字就有 wiki跟GOOGL得到答案
甚至有完整文件說明 怕陷入引戰 就這樣
推
3DNow!的3000+打的噴火龍3G吱吱叫
那時候拿3000+配6600GT玩全民公敵正夯
太專業了 但我要去消化一下
專業推一個,也順便幫我複習了一些指令集演進
在用matlab的時候感覺很明顯啦,真十代icelake比起
同學的牙膏十代快多了
專業推
上一篇比這篇好很多吧....這篇.....
上一篇講未來,這篇講古
其實都是很好的分享 不需要去分高下 人家願意分享就
不錯了
嗯聽不懂
根本不是在講同一件事,哪有啥好比?
是說如果AVX512真的這麼好,編譯器要聰明到自動調用
用起來自然就會讓使用者有感,現在就是大多使用者無
感,才會讓人質疑它的價值
AVX512被嫌棄的地方在於降速求控球會拖累其他人
這篇問題很大阿 什麼每次都是為了擴充處理資料能力
是不是連AMD的指令集都不認識? 而且AES還是AMD強項
專業推
3dnow都被sse幹掉了還在打噴火龍??
k6-3內建3dnow跑3d遊戲還是被低階celeron打趴...
買這些指令集的好處不就是有intel花錢去幫你弄compi
ler這髒活?不然要自己優化嗎?
這篇很好 我在上篇留言想打的這裡都解釋的很清楚
不知道哩,3000+跑全民公敵比噴火龍3G還要順
不過燒光碟還是乖乖拿有HT的噴火龍比較安全
推這篇
AMD比較成功的指令集就x86-64而已
其他都是跟著Intel走
以前AMD也有想弄自己的SSE5 intel直接放話不會去支
援AMD SSE5 弄自己的AVX最後也真的沒人理AMD的SSE5
後來AMD處理器一樣要去相容intel AVX
上面說的AES也是intel提出的指令集
專業推
市佔夠高就是任性
以前i皇市佔高沒人理A家,但再牙膏下去,可能以後也
換他沒人理…
AVX512是大客戶有需求intel才放進去的
專業推
簡單來說追求通用計算的話就會繼續留著這堆電晶體
所以FMA是AMD這邊提出來的SIMD?
因該是說fma是從sse5拆出來的 而sse5是amd提出的
轉檔喔 現在的i被amd單純用核心按著摩擦
Amd想推指令集大多不太成功因為基數太小
都有推自己的MKL
AMD就是菜雞市場小 別人說什麼就聽話啊
尤其大量的運算上 AMD沒有吃下份額 出這種接近專
用指令集 別說硬體不見得跟得上 軟體都趴了先
降速求控球 都如球球是好球也不錯
你可以想著種花聯盟來就還是一堆壞球
Maddux來你很快就早安午安晚安
所以簡單說是一般人看不到整個市場的需求?所以無法
了解intel的決策...如果一味追求通用就會變成GPU界
的AMD?
AMD GPU的問題跟追求通用沒啥關係
NV CUDA本身就是往通用方向邁進的設計
這東西還是要算使用率的 對一般民眾日常來用
最常見的就是OS 轉檔 會用到
AMD菜到連聽話的機會都沒有吧 只能事後看人家的東
西乖乖做了
當初x86-64有機會成功,也是因為intel內部在路線之
爭的內鬥
而且早期板本 多開幾個 那速度根本對半
不過CPU二十年前歷經一波多頭...大概一些common的部
Intel當時決定押寶IA64 ,放棄了他們自己64位元方案
份也做到差不多了...是時候去服務其他的20%這樣?
理論上 在HPC應用上 會快60X
其實這件事情就是最大謬誤阿 人家又不是做一堆ASIC
原本的就沒優化 到底為啥以為都只能做一件事情 人
家人多的是
實際上HPC 上 我還真沒看過這麼高的
我覺得Intel比較大的麻煩是他們的AVX比AMD熱很多XD
我自己算是常常使用數值分析軟體的人,樂見AVX進展
大家都想搶HPC市場啦
只是牙膏王爽太久 架構發現不太行的時間比AMD晚
設計完的新產品本來就好幾年 又遇到製程大烙塞才看
起來好像只能吹這些舊世代最後的feature
我的工作算有點廣 做點 cpu 設計 做點底層 做數值
我是很想幫AMD吹AVX,但一般人用到的還真的沒那麼多
分析的軟體 偶爾跑 hpc
新架構的東西也不是都沒產品 只是烙塞到還沒辦法大
量商業化而已
自己結論就是 專業是事還是batch交給專業單元
只是AVX目前的應用都還算滿穩的
現在的GPU就能做到雙精度了 (雖然目前最大宗的是 16
一般軟體裡面使用GPU加速的機能都滿鳥的
其實512的不太穩 .... 他造成了蠻多其他單元的問題
現在這麼多YTer...這類指令集在工作處理上有幫助吧?
要轉yter 你買台 ipad pro比較快....
@protoss 這就要看GPU轉檔現在怎樣了
不過剪輯應該還是會吃到AVX
至少我看Adobe Cloud那些應用,AVX仍有很大幫助
我以為剪輯預覽會吃到GPU...匯出則CPU/GPU都可以選?
真要我說的話...我當下看到Linus狂噴AVX挺意外的
我說 ipad pro 比較CP值高 逗逼就不說了 那個雲
GPU雙精度要錢要電晶體啊 老黃精美的運算卡價格hen
刺激
我不是很清楚他到底是那裡被陰到了
不過我自己被陰過 至今還無法解 (應該)
就不喜歡特規吧 而且可能linux kernal沒那麼大需求
ms玩比較多怪招吧
老黃那個是單精搞雙精吧 (如果我沒有記錯 )
老黃最厲害的是對市場反應快 很會recycle
運算卡好像真的有花錢砸fp32吧 所以也反應在成本上
了 價差這麼大
fp32單精啊~~ 他現在本來就單精
64才對
然後往上往下 再做變化啊~
純64的我到是不知道 最近沒去看他們的 arch了
不過老黃現在滿腦子AI 雙精度根本賺不到錢 誰管你
現在是tf32的時代了
答對哦~~~~AI好撈啊 看看那個精美的DGX A100
好香
不過tf32真的蠻有創意的 真的AI魔人耶
還可以啦 等那天不用GD他就可以收攤了啊
老黃現在除了硬體以外 軟體社群也深耕的夠好就是
要抽離也是很痛 其實蠻類似牙膏王在做的事情
老黃九命怪貓 他只要還在NV就是厲害
不過他肯定會被三星坑 (聰明反被聰明誤)
XDXD 各位等著看 XD
人家真正重中之重還是乖乖跪舔GG啊 A100那種怪物
三星在過個十年可能都做不出來(?
linus不爽的只有AVX512,超吃晶片面積一般用戶卻幾
乎用不到
AVX指令集還是有必要,高性能處理器和指令集也脫不
了關係
真正讓它賭爛是AVX512太耗電會降頻
為了1種指令能高性能,其他全部低性能
導致不見得比較快
降頻降不小外 還有另外啟動時間 算下去cost不低
AVX反到是還好 綜合性下去性能有提升
之前其實有蠻多文章講到底會降多少 點個十顆左右
頻率剩下一半 = ="
他又沒反對 AVX2...是反對 AVX512, 覺得賺的不夠賠
推
雖然看不太懂但專業推
什麼是你沒用它是有點錯誤
因為它有降頻問題,你軟體除非跑分
否則不可能永遠一直跑AVX512
其實指令因為降頻全部變慢了
其他指令
所以你可能努力用它結果賠的比賺得多
GPU砍FP64主要還是商業考量
而且從老黃maxwell以後一去不回頭
然後牙膏又差不多獨佔x86很多年 即使現在也是寡佔
大家應該是看不太到擺脫這些東西的一天
五年前說GPU交換資料太慢我可能信
現在2020 pcie gen4 要DDR4 4000才餵的飽
AVX512就是雞肋~食之無味棄之可惜
而且你拿一顆40幾萬的CPU比2080會不會太看得起老黃
V100 一張30萬 DP 是7TFLOPS 足足是8280三倍有找
37
[情報] Alder Lake沒有AVX512,於是Linus又開嘴惹不過嘴的不太是針對「啊你怎麼拔了AVX512」這部分 而是針對AVX512本身這部分 背景: phoronix發現Intel最近替GCC 11新增自家Sapphire Rapids、Alder Lake系列CPU 支援的程式碼中,並沒有AVX512相關的部分37
[情報] Linux將停止AMD 3D Now!指令集支援Linux預計將在核心版本5.17中停止AMD的3D Now!指令集支援,也代表著這個活了23年的 指令集也即將退出舞台 3D Now!是AMD在1998年推出的SIMD指令集,用來強化x86的3D影像處理的效能,也是為了 抗衡Intel的MMX指令集,不過MMX只支援整數運算,浮點運算還是要靠x87協同處理器。而31
Re: [情報] Linux將停止AMD 3D Now!指令集支援真的是時代的眼淚了。不過3D Now!不是用來對抗MMX的,3D Now!是架構在MMX上的。我應該是少數有經驗寫3D Now!程式的。 先回來講x87。x87是一個搞砸的架構,我當年寫x87組合語言時,覺得有點怪,一直要FXCH,不好用但ok啦(其實也是我不懂StackMachine的寫法)。後來有看到當初設計x87的訪問,才知道美國設計的人跟以色列實做的人溝通不良,以色列的人不懂Stack Machine是什麼,所以才實做成x87那樣。我用過Forth之後就更能體會一個正常的x87 Stack Machine其實是超好用的。x87現在還有用因為它支援80bit的精度,有些用途無法取代。 3D Now!的誕生是因為k6的x87浮點運算比Intel的x87慢(25%?), 但3d遊戲開始起飛需要大量的浮點運算,這點k6很吃虧。AMD設計的人很聰明,發展3D Now!架構在MMX的registers上,可以同時運算兩個32bit浮點。容易寫(register),又提昇性能,變成Intel的1.5倍(?) 我第一次寫的時候,Assembler還不支援,還要自己inc一些Macro,就跟當初MMX一樣。3d遊戲性能確實在k6-2上有提昇,但最後有沒有跟遊戲一起出就不記得了。後來的Athlon浮點還比Intel的強,那真的是AMD的第一個黃金時代。 Intel的SSE是128bit vector,3D Now!是架在MMX的64bit vector(3D Now!用的時候MMX不能用),所以其實SSE算是3D Now!的延伸與改良。19
[情報] 12代Intel犧牲Ecore小核可獲得AVX512指令剛解禁的第 12 代 Intel Core 處理器,預設上以 P-core 與 E-core 進行混合運算 並且預設上關閉 P-core 的 AVX512 指令,而目前得知 ASUS、ASRock 的 Z690 主機板 可通過 BIOS 來啟用此指令。 只不過,對於一般電腦、遊戲使用下,根本用不到 AVX512 指令 因此經過詢問 Intel 得到以下對於預設關閉 AVX512 指令的說明。15
[情報] 如果 AMD 也支援 AVX-512 指令集會發生原文標題:如果 AMD 也支援 AVX-512 指令集會發生什麼事? 情報來源:TechNews 原文網址: 最近有國外媒體報導某 Twitter 爆料大神,透露 AMD 下世代 Zen 4 核心,將支援 AVX- 512 指令集和人工智慧深度學習常用的 bfloat16 浮點格式(接著是 EPYC 核心數會從 6415
[情報] AVX512指令集終於滿血11代Core8核穩 4.8G與AMD處理器相比,Intel在高性能計算上有個殺手鐧,那就是AVX-512指令集 它可以讓浮點性能提升數倍,之前主要用於XEON 現在10代Core行動版、11代Core行動、桌上型也開始支援 然而AVX-512指令集有個很尷尬的地方,那就是一旦使用了這個指令集 往往會因為功耗較高而導致CPU大幅降頻。13
[情報] i皇打算在硬體上隱藏12代的AVX512指令集Intel打算進一步限制12代酷睿的AVX-512,接下來會從硬體上隱藏這指令集 -- 關於Intel第12代酷睿處理器對AVX -512指令集的支援情況,其實挺讓人迷惑的,Alder Lake處理器裡面有Golden Cove和Gracemont兩種核心,其中Golden Cove在硬體上是支援10
Re: [情報] Alder Lake沒有AVX512,於是Linus又開嘴惹Linux之父怒罵Intel AVX-512:「我希望它死得痛苦點...」 ............ Intel在Skylake -Server架構中首次引入了AVX-512特性,但它並沒有像之前引入AVX和
89
[請益] 高雄幫忙裝機店家推薦19
Re: [心得] 組裝完全靜音ITX主機超簡易心得52
[情報] 站立式辦公桌真的有益健康嗎?英國研究9
Re: [情報] 站立式辦公桌真的有益健康嗎?英國研究12
[情報] X870I AORUS PRO ICE 售價/TK-0 海景ITX3
[菜單] 52K 白色遊戲機8
[請益] 螢幕 Benq RD320U vs EX3210U 價格差異1
[菜單] 20K舊機升級 顯卡+電供