Re: [閒聊] 為何GPU比CPU貴那麼多?

作者: karta1897830 (冰嵐)   2022-04-03 19:25:17
根據之前高人指教跟個人見解,有誤請指正
CPU應該早就要被GPU取代了
假如同時要做四個算式ABCD
CPU的作法是先算A,然後算B,然後算C,最後算D
也可以說CPU的計算是有序的
而GPU則是直接同時跑ABCD,也就是平行化計算
而CPU為了彌補這部分的差距,發展出了分支預測的技術
也就是猜答案,例如A必須等待B的答案,但A跑完時B還沒答案
CPU就會猜一個答案去解A,等到B跑完有解之後再檢查A
而分支預測越準確,相對的CPU的IPC就越高,執行效率也會跟著提高
但也說明了CPU的執行效率取決於分支預測的準確度
而GPU的平行運算性能則取決於可程式化核心,
在NV上叫做CUDA,最多可同時處理的運算正比於核心
也是為什麼GPU的性能可以直接從核心數看出來的原因
所以在發展上,CPU提升性能的方式主要取決於分支預測,但GPU只需要堆核心即可
因此GPU的性能大幅度跟製程掛鉤,而CPU的架構影響更重
但這也表示,要取得更好的GPU表現,就需要更多的可程式化核心
這點直接就反應在材料價格上,所以終端產品就一直變貴
但CPU則不是靠堆核心的方式,因此漲幅也就較為可控
未來的發展性上,GPU必然會更加吃重,但取代不了CPU的原因還是在x86
CPU的單一核心必須要可以計算從過去以來所有的x86運算
所以CPU也很難像GPU一樣堆核心,轉而向提高頻率的方式來進步
但也不可能放棄x86,這已經是歷史共業了,放棄後整個科技業都是大洗牌,
尤其是舊有程式幾乎無法繼續使用這點就不可能
除非像蘋果那樣才有可能直接拋棄x86開始堆核心
說來好笑,限制CPU發展的是x86,但把CPU命吊著的也是x86
大概4John

Links booklink

Contact Us: admin [ a t ] ucptt.com