abc003 wrote:
2.X86的分支預測命中率的確是成本比RISC高 而且指令長度不對稱 因為要加寬流水線或是加深指令平行度X86都不利
X86 CISC code都是由Predecode unit解成RISC的uOP執行, 所以指令長度不等長解決了. Out of order是X86系的強項, 連Nehalem都有96 uOPs的ROB.
還有當年為了應付Pentium 4過長的執行管線, 發展trace cache來提高cache命中率.
不論是降低branch prediction失誤性能損失或Out of order技術Intel比ARM都強多了.
4.為了向前兼容性X86 80%常用的指令只是不足20%的指令 很浪費電路面積和成本 成本一值比較高
實際上現在的CPU最佔電路面積是L2/L3 cache, Predecode unit用不了多少電路面積.
6.你只要看看這10年X86的進步幅度就知道了 這個架構已經碰上瓶頸很可能是來自本身的自身架構的缺陷
ARM有今天的快速進展, 不過就借用過去RISC大廠(IBM HP MIPS DEC SUN)成功的研究和實作經驗去縮短開發時程, RISC能用的大絕也差不多用完了. 除非ARM獲得什麼外星科技, 否則今天IBM POWER碰上的瓶頸, ARM也不可能躲得掉.
X86指令長度不對稱雖然被罵到爆, 可是注意看他的指令集從MMX, AA-64, 3D now!, SSE1~4.2 到AVX1~2. 注意到嗎? 有哪一顆RISC可以這樣擴充指令集. X86指令不等長有時候是會意外變成優點的.
如果你有測過Intel的DRAM的Read/write性能, 會注意到memory controller有多暴力. X86能跟POWER競爭高階是伺服器不是運氣.





























































































