PTT推薦

Re: [情報] Linux將停止AMD 3D Now!指令集支援

看板PC_Shopping標題Re: [情報] Linux將停止AMD 3D Now!指令集支援作者
oopFoo
(3d)
時間推噓31 推:31 噓:0 →:41

※ 引述《hn9480412 (ilinker)》之銘言:
: https://www.tomshardware.com/news/linux-says-goodbye-to-amd-3d-now
: Linux預計將在核心版本5.17中停止AMD的3D Now!指令集支援,也代表著這個活了23年的: 指令集也即將退出舞台
: 3D Now!是AMD在1998年推出的SIMD指令集,用來強化x86的3D影像處理的效能,也是為了: 抗衡Intel的MMX指令集,不過MMX只支援整數運算,浮點運算還是要靠x87協同處理器。而: 3D Now!支援單精度浮點運算,AMD也在K6-2加入3D Now!的支援,在單精度浮點運算效果: 方面是x87的四倍。同時微軟在DirectX 7為3D Now!進行最佳化使得AMD首此在遊戲效能上: 超越Intel。K6-2和K6-III也成為當時市場上的熱門產品
: 在1999年的Athlon上AMD又加入了5條新指令並改稱為Extended 3DNow!。後來Intel也為了: 抗衡推出SSE,SSE完全支援3D Now!的所有功能,至此AMD在往後都是跟進Intel支援SSE: 的相關指令集而不再更新3D Now!
: 在硬體方面AMD早在Bulldozer後的架構就不再加入3D Now!的支援,並建議開發者改用SSE: 取代,最後一顆支援3D Now!的CPU是AMD的A8-3870K

真的是時代的眼淚了。不過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!的延伸與改良。

真的是有競爭對消費者才是福音,感謝AMD打趴Intel才能讓Pat回來帶來更多競爭。

--

※ PTT留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.138.41 (臺灣)
PTT 網址

CORYCHAN 12/17 10:17解說推

brianuser 12/17 10:23看不懂推

kuninaka 12/17 10:31

kuninaka 12/17 10:33AMD64指令集也造福很多

applejone 12/17 10:34K6就是被詬病浮點運算很差

soapmactony 12/17 10:34x86還是x87?

applejone 12/17 10:34Athlon就是拿21264改的不是XD?

Litfal 12/17 10:35stackmachine就我的理解是postfix

Litfal 12/17 10:35,操作者用堆疊去放expression tre

Litfal 12/17 10:35e,stackmachine會幫你做完,釋放

Litfal 12/17 10:35掉register的概念。要頻繁下xch的

Litfal 12/17 10:35確怪怪的

x87主要問題是stack(8)滿了會overflow。應該是要push到memory stack上。 所以需要常用xchg去儲存一些數值。

applejone 12/17 10:35X87就是浮點運算器阿

supersu1a 12/17 10:36當年幾乎沒有遊戲發揮3Dnow 所以最

supersu1a 12/17 10:36後k6-2還是文書機專用 玩遊戲不是

supersu1a 12/17 10:36買Pentium II就是賽揚300超頻去了

roseritter 12/17 10:39300A 大鵰的年代 當初影像處理用

roseritter 12/17 10:40K6-2跑 LAG到爆炸

flipflap 12/17 10:42300A超到450好玩

oopFoo 12/17 11:00陞技還出賽揚雙cpu神板

※ 編輯: oopFoo (36.231.138.41 臺灣), 12/17/2021 11:07:05

supersu1a 12/17 11:22原po真老人 連Abit都記得

ang728 12/17 11:43我第一張自組板子就ABIT的BH6 xdddd

oopFoo 12/17 11:56真老了。第一台電腦是IBM XT(8088)

syura945 12/17 11:57abit的板子我那時是買 be6 ii, 做

syura945 12/17 11:57的比三大廠的還要好

syura945 12/17 11:58然後slot 1轉卡斷掉 還免費送一個

syura945 12/17 11:58給我

Bencrie 12/17 12:41x87 不是 486 的時候整成同一顆?

Bencrie 12/17 12:41386 之前還要另外買

EdYu 12/17 12:44推U質文

kuninaka 12/17 12:49就是80487阿

kuninaka 12/17 12:49https://i.imgur.com/cQDlpt6.png

圖 Linux將停止AMD 3D Now!指令集支援

Bencrie 12/17 12:52喔喔 ... 那就是 DX 後的事

Tatsuya72 12/17 13:14優文推

athlun 12/17 13:35推優文

allyourshit 12/17 13:44respect

birdy590 12/17 14:198087 是硬加上去 甚至不能直接溝通

birdy590 12/17 14:20直接存取 memory 又太慢 別忘了這是

birdy590 12/17 14:201970 年代的設計, 而且上市後十幾年

birdy590 12/17 14:21一直到 486DX 才真的合而為一

ttping 12/17 15:13推優文

gmkuo 12/17 15:49AMD有列出支援3DNow!的遊戲及軟體清

gmkuo 12/17 15:49https://tinyurl.com/mtt6x96s

gmkuo 12/17 15:50外國人留下來的網頁檔案

gmkuo 12/17 15:52那時候Intel還另外有486SX

howareuuu 12/17 16:28推推

lostkimo 12/17 17:46看不懂[email protected][email protected]

TWN48 12/17 18:02第一次看 x87 instruction set 真的

TWN48 12/17 18:02覺得我究竟看了什麼

TWN48 12/17 18:0880486DX 是 x86+x87 做在一起

TWN48 12/17 18:09另外有出 486SX 是把 DX 的 x87 部

TWN48 12/17 18:09分 disable 掉賣你。

TWN48 12/17 18:09如果哪天後悔了可以再買 487 插上去

TWN48 12/17 18:10補齊。

TWN48 12/17 18:10妙的是 487 其實也是一顆 486DX。

TWN48 12/17 18:10所以你等於插了兩顆 486DX,一顆只

TWN48 12/17 18:10有 x86 的部分有作用,另一顆只有

TWN48 12/17 18:10x87 部分有作用。

applejone 12/17 18:48是阿 當年的板子上面會有兩個插槽

applejone 12/17 18:48一個就是給X87用的 當年的傳說是X87

applejone 12/17 18:49是X86的不良品

aegis43210 12/17 19:34當時用在ps2模擬器效果不錯

xiaotee 12/17 20:27認真推~

FCPEWN375 12/17 20:35

goldie 12/17 20:37

goldie 12/17 20:40推陞技qq

avans 12/17 21:15推解說

sdbb 12/17 23:06有卦有推

soapmactony 12/18 07:55這樣我了解了,給推

ATND 12/18 10:22

apley 12/18 16:22有年代的味道~ XD

ken720331 12/18 18:29老前輩