鐵之狂傲

 取回密碼
 註冊
搜尋

切換到指定樓層
1#
  ARM處理器在低功耗領域如日中天,但在伺服器及工作站之類的市場還是非主流,除了性能因素之外指令不相容目前的主流X86應用軟體也是關鍵原因之一,兩種不同的指令架構如何能做到統一呢?
  一種可能就是X86模擬器,如今已經不存在的全美達就做過這樣的事,他們開發的架構是順序超長指令體系,執行X86指令時會動態轉換成X86指令,雖然保留了低功耗的特色的,但是全美達處理器的性能一直偏弱,最終沒能在市場上存活下去,後來NVIDIA吸收了不少全美達的工程師,他們的丹佛計畫據說也會相容X86指令,用的也是模擬器的方式。
  ARM陣營也有廠商在做這樣的事。Calxeda是最早發布ARM伺服器處理器公司之一,一家名為Boston Server的英國公司使用Calxeda的ARM處理器設計了Viridis伺服器。日前他們宣佈在Eltech的幫助下,其Viridis伺服器成功運行了X86代碼
  Eltech之前發明了一種二進制轉換器,實際上就相當於一個模擬器,最初的性能是具備了45%的原生ARM性能,但是在他們的合作努力下,在Viridis平台上發揮了65%的原生ARM性能。該公司表示還會和Eltech公司繼續合作,目標是提供至少80%的原生ARM性能。
  Anandtech網站也報導這一事件並做了分析,Eltech的模擬器是動態二進制轉換,這會使得代碼變得過大,與VMWare這樣的binary translator(BT)軟體模擬器相比確實會更大,因為後者是從X86轉換到X86,而Eltech是在兩種不同的指令集中轉換,代價肯定會更高。
  Eltech使用了1MB轉換器快取,與VMWare的BT基本相同,這意味着它可以利用之前的模擬器。如果大部分關鍵的指令循環都位於快取中,那麼轉換的損失就會大幅降低,但是(較低的快取容量)也意味着只有相對較少的代碼才能享受這個福利,比如他們所說的40-65%原生性能。
  大部分伺服器應用都需要相當大的指令記憶體定址,因此還不清楚這個X86模擬是否會對重負載伺服器軟體有幫助,一些HPC軟體倒是會使用較小的指令記憶體,但是HPC往往對處理器性能要求比較高,這又不是ARM處理器的強項,因此很難說服使用者棄用X86而改用ARM處理器。
  因此,ARM的X86模擬器用途有限,只能在部分場合發揮獨特的作用,比如Web應用有些軟體是不開源的,開發商也不提供ARM分支,這時候就只能用X86模擬的方式來實現ARM處理器支援。
  總之,Eltech的X86模擬器是一個很好的功能,但是大部分ARM伺服器運行的還是專門最佳化。編譯的Linux伺服器,這才是ARM伺服器的正確出路。
 
轉播0 分享0 收藏0

回覆 使用道具 檢舉

你需要登入後才可以回覆 登入 | 註冊

存檔|手機版|聯絡我們|新聞提供|鐵之狂傲

GMT+8, 25-1-27 22:05 , Processed in 0.016200 second(s), 16 queries , Gzip On.

回頂部