先問是不是,再問為什麽。
為啥當年x86 on IA64(安騰)確沒有弄出來?有,但是效能實在沒眼看。
最早的安騰是直接在片上整合了解碼器用於處理x86指令(右上角區域)
但是這部份的晶體管數非常少,效能更是拉中拉,667MHz的安騰,效能和N年前0.1GHz的老奔騰有來有回 [1]
後面為了挽救頹勢,又加入了軟體模擬層
[2]
,效能比以前強了不少
然而效能還是感人至深,2006年90nm制程的1.4GHz安騰2,開一個核心,轉譯後效能還不如臭名昭著的第一代Atom——要知道06年王炸級的酷睿架構已經有了,哪怕是老的Netburst架構至強,因為頻率夠高,效能也比安騰強。
而且安騰CPU的價格也沒有優勢,x86-64的勝利更是勢不可擋
最後,安騰的超長指令路線從思路上就有一個問題。
理論上把多個短指令合並成一個長指令執行,並列效率可以達到很高。
但這種放棄JIT全部采用AOT的方法顯然不現實——一些指令的執行應當如何做最佳化排序,編譯階段並不能獲知,只有在執行時才能獲知。所以再怎麽最佳化,安騰的實際效能也就這樣了,被淘汰是一點不冤。
參考
- ^https://tweakers.net/reviews/204/8/intel-itanium-sneak-preview-benchmarks-rc5-chess-en-stream.html
- ^https://www.intel.sg/content/dam/www/public/us/en/documents/reference-guides/itanium-ia-32-execution-layer-reference-guide.pdf