• 8

Intel「被迫移除」編譯器中「讓AMD變廢」的功能

lafish wrote:


因為那些comp...(恕刪)


當然是不會發生的, 如果換成是微軟可能還有機會.

就好像當年AMD 收購ATI後, 亦隨即停止Intel 相容晶片組的開發一樣. (ATI CEO: 我瘋了, 花錢出力來支援敵人的東西?!)

所以, 小弟才有以上的看法及想法......
優化自家CPU, 和劣化對手CPU是兩回事.

軟體執行時其實不需要知道CPU廠牌.
因為compiler完的機器碼, 只需要知道CPU能支援哪些指令.
如果只支援SSE3 或 支援到SSE4就會跑不同的Path.
由於PC的CPU有新有舊, 這是compiler本來就會做的.
只是Intel compiler支援新指令的速度會比MS那些軟體廠商的進度領先一點
(因為CPU還沒量產以前, CPU廠商就已經先知道指令規格了)

Compiler在軟體中加入偵測CPU是否支援最新的指令,例如SSE4,SSE5......
然後讓程式 在新指令集的CPU上跑最佳的版本. 這算對CPU優化.
Intel自家CPU當然最先支援自家開發的新規格的指令.
那Intel Compiler就有可能因此達到優化自家CPU的目的.
如果只是這樣, 就算被告也不會有事.

......但其實Intel和AMD支援的指令集幾乎一模一樣.
目前都互相支援對方開發的新技術......
X86-64bit指令甚至是AMD先開發, Intel再去做與其相容的CPU.
"優化自家CPU"很難有成果.....所以或許有人開始不走正道.

如果Compiler除了在軟體中加入偵測CPU是否支援最新的指令,
還加上檢查CPU是不是AMD或廠牌非Intel的程式碼.
然後明明軟體可以偵測到AMD CPU支援最新的指令,
但是因為系統回報的廠牌不是Intel就封殺.
刻意不讓程式在AMD的CPU跑最佳的版本.
.....那就是用不正當的手段讓對手變廢.

看新聞的意思, Intel是針對非Intel的CPU. 讓擁有同樣功能的對手變廢.
這和優化自家CPU是不太一樣的.
Waffenss01 wrote:
優化自家CPU, 和...(恕刪)


反過來說

INTEL優化自己的 Compiler 的時候,
因為是自家的CPU,
所以知道哪些指令可能有問題、哪些指令沒問題
因此優化的時候加以處理
但是,
對於VIA/AMD的CPU,Intel的工程師只能知道有支援這些指令,VIA/AMD實作的好不好其實無從得知

或許會有人說可以叫工程師一個指令一個指令去追蹤
但是回到最初的起點,
INTEL本來就只打算對自己的CPU進行優化.....
這是INTEL提高自己附加價值的手段,沒有道理也沒有義務幫VIA/AMD 優化,不然就不必叫 Intel Compiler.....

而且為了確保利用該Compiler編譯出來的程式拿到非Intel平台不會有破壞性的桔果,
判斷CPU ID之後,
如果是Intel CPU 則執行優化過的程式碼,快
如果非Intel CPU 則執行較慢較穩定的程式碼,慢,但是保險

這種作法我想並沒有什麼不妥


Waffenss01 wrote:
優化自家CPU, 和...(恕刪)


最麻煩的是, 不知道AMD 的SSE 是否等於Intel 的SSE......

舉個例子, Intel 當時引用了AMD 的x86-64, 初時是完全沒有改變的 (所以就有人說Intel 連AMD-only 的功能都抄過來了......).

但是, 後來Intel 改變了設計, 打造成自己的Intel 64 時, 在設計方面已有了改變, 有些Register 是AMD 64 有而Intel 64 沒有的 (x86-64確是AMD較完善, 這裡要讚揚一下). 如果AMD自己有編譯器, 在Intel 的CPU 上呼叫了那些register, 豈不大條了......

現在, SSE 搬到AMD 上, 我們誰也不知AMD 有否改變SSE 的設計來配合自己的CPU, 畢竟相容不等於相同, 我想Intel 未必會犯這種險. 如果到時出了包, 誰負責(多數是找賠得起錢的Intel 負責吧, 找自顧不暇的AMD 有何用)?

狗拿耗子用意本好, 但失敗了也不過是被人落個「多管閒事」的評語.

除非AMD 肯將自己的CPU 設計曝光, 又肯付錢讓Intel 來做R&D, 要不然, 小弟實在想不到Intel C Compiler 需要特別處理AMD CPU 的理由......
從Intel的立場來看沒什麼不對........消滅敵人是正常的商業行為

但從CPU獨占市場的角度來看......政府介入的方向是要有市場競爭.......畢竟獨占最大的受害者是使用者




所以這故事告訴我們..還是買Intel / VIA 的CPU為佳嗎?

可是許多測試中,許多AMD的效能不是也不錯?
riklin wrote:
從Intel的立場來...(恕刪)


是呀, 所以適當的立法還是重要的, 但不能保護到像溫室裡的花兒, 那樣是沒有意義的.

有一個故事......有一個人看見蠶蛾破繭十分辛苦, 於是就用剪刀幫牠在繭上開個口, 想讓牠輕鬆一點......

最後, 那蠶蛾死了......
lcvs1214 wrote:
所以這故事告訴我們....(恕刪)


同意......

其實市場上的編譯器效能不會差太遠, 選擇編譯器的權力在軟體開發公司那裡而不是在Intel 那裡. 軟體公司自然會想到它們直接客戶(包括我們)的要求的. 您想想看, 得罪單一一間編譯器提供者以及得罪我們兩者之間, 對軟體公司來說哪一個後果比較嚴重?

所以......我們這些end-user 要擔心的事其實並不多.
如果政府不扶持AMD.......在這個市場環境下就算AMD的編譯程式寫的比Intel更好還是沒用的.....因為市場環境就是讓AMD活不下去........所以某些政府提出控訴的目的只是不希望一家獨大.

當第一名與第二名的「差距太大」時.........政府應該出來壓制第一名以便讓第二名有機會趕上第一名

自由市場本來不應該打壓第一名的..............但是從大眾的權益來看......有第二名的存在相信是比較符合多數人的期望。


另外有第二名的存在只會讓第一名的更努力..............





riklin wrote:
如果政府不扶持AMD...(恕刪)


基本上同意大大您的意見, 小弟只有點小意見而已......

1. 當第一名與第二名的「差距太大」時.........政府應該出來幫助第二名以便讓第二名有機會趕上第一名. 個人覺得這樣會有多點建設性. 如果Intel提出抗議, 政府可以說:「老子高興, 你管得著?!」

2. 另外有第二名的存在只會讓第一名的更努力..............

確實同意......您看看, Intel 自2003年到現在已經tick tock tick tock tick了, 但AMD 只是tick tick tick而已......
  • 8
內文搜尋
X
評分
評分
複製連結
請輸入您要前往的頁數(1 ~ 8)
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?