ARM 架構伺服器觀測:核心是主角?抑或協同的部份才是主角

2013.06.18 03:11PM
是ARM 架構伺服器觀測:核心是主角?抑或協同的部份才是主角這篇文章的首圖

去年開始,市場上開始看見廠商投入 ARM 架構伺服器的開發, Computex 也有幾家廠商展出原型機與參考設計;事隔一年,整個產業又有明顯的動作,包括被百度導入大規模的雲端儲存應用, HP 宣佈 Project Moonshot ,以及 AMD 宣佈將會把 ARM 的授權應用在伺服器領域、 NVIDIA 亦針對幾年前的 Project Denvor 作更進一步的宣佈。

從過去僅被應用在 MCU 、手機等的 ARM 架構,在近期急起直追、效能與架構不斷翻新,終於也被承認擁有運算級的效能,並且獨特的商業形式,讓客戶得以應用在不同領域;在這個 ARM 架構開始被應用在過去視為 x86 天下的領域的萌芽期,筆者想分享約一年來所觀測以及與廠商對談的過程所了解到的 ARM 伺服器發展的現況。

跳轉繼續

對於這些投入 ARM 架構伺服器的廠商而言, ARM 架構到底是什麼呢?一言以蔽之就是擺脫 x86 受限於少數廠商的籌碼;畢竟在伺服器的世界, x86 架構多年以來是唯一的選擇,加上 CPU 萬能論在數年前也是業界信奉的準則,故最重要的核心架構就由少數廠商把持,其它廠商最多只能作為紅花旁的綠葉陪襯。

不過隨著某些不願一輩子當配角的廠商,試圖證實純 CPU 運算不是唯一且效率最好的選擇,以 GPU 為主的異質運算的興起,開始改變市場對於運算的既有概念。 GPU 運算雖無法脫離 CPU ,但藉由將特定的運算內容、尤其是針對大規模運算如數據分析、金融計算等,擁有較多運算單元的 GPU 就能大幅提昇運算能力。

從 NVIDIA 去年公佈 Kepler 架構能夠減少 CPU 與 GPU 的繁複溝通,以及今年在 GTC 宣佈明年將推出搭載統一虛擬記憶體的 Maxell GPU 規劃,加上 AMD 宣佈的 hUMA 統一存取記憶體技術,都能看出 GPU 廠商在簡化 CPU 與 GPU 的溝通模式,提昇異質運算的效率。

cd9498b9ce09103f53d911b042f935df

另一方面,也由於大數據與雲端儲存,除了高效能運算之外,數據管理也變得日益重要;不同於運算型伺服器,儲存管理重視的是針對內容資料的管理與整合,相較傳統高效能運算不需要那麼高的效能,另外能源議題近期也相當受到重視,廠商開始思考殺雞是否需要用到牛刀。

這時,容易客製化的 ARM 架構就浮出檯面,陸續有開發者以及晶片商宣佈將 ARM 架構投入儲存相關伺服器的應用,目前最顯著的成果就是 Marvell 成功打入大陸百度的雲儲存服務,並且從目前狀況來看,還有不少不願浮出檯面的廠商與零星的應用案例,今年 Calxeda 也展出三家台灣廠商的參考設計,表示 ARM 架構用於儲存已經開始有市場需求。

85d41a0ca3d894e10cbb5d625e585031

HP 的 Project Moonshot 的推出,對於 ARM 架構有相當大的鼓舞作用,此伺服器產品線不是為通用高效能運算規劃,重視的是低功耗,並且重點在於最佳的功耗效能比的專用設計,故採取的思維是讓大量而省電的模組在容易擴充且可共用電源、散熱的機箱內,故堅守 x86 架構已經不是重點,重點在於針對特定的應用榨乾所有的效能並且能發揮到極致。

從 HP 的一些實驗室計畫當中, ARM 架構所扮演的不僅只是針對儲存的應用,更以異質運算的方式打算投入如地震分析、石油探勘等應用,顯示雖然目前的應用著重在儲存,但這些試探性的應用證實 ARM 架構在伺服器領域還有很多的可能性。

參考閱讀內容:HP 談 Project Moonshot :對處理器架構採取中立,專為特定應用量身打造最佳方案

談到下一步,每一家的想法也不一,如 Marvell 、 Calxeda 暫時仍以儲存應用為主,運算方面根據筆者在 Computex 與他們閒聊之下則採取保留的態度;德州儀器 TI 以及 NVIDIA 相較下應該會朝針對特殊領域的高效能運算之路,但同樣想走高效能之路,TI 與 NVIDIA 的想法卻仍不同。

先從 Marvell 與 Calxeda 談起,它們一致認為 ARM 架構正式走入 ARMv8 ,也就是 64 位元指令集之前, ARM 架構談高效能運算都還言之過早;但它們也一致認為 ARM 架構並非沒有機會走向高效能運算,不過關鍵在於業界、尤其是軟體相關的產業是否願意支持。

c1bd96db662184044714f6d2e1fd87a1

Marvell 這家公司的最大資產,就是擁有儲存管理以及網路管裡的技術,故它們目前認為,透過客制化的核心設計與它們現有的網路、儲存技術結合,就能提供合乎成本與效能,並相較 x86 架構擁有更低功耗的儲存伺服器。

Marvell 在 ARM 伺服器領域賣的不僅是核心,更是從核心、儲存到網路的整套的解決方案,以從 PC 架構獲得的多樣技術轉戰到 ARM 平台,並且針對 ARM 平台的特性提供合乎成本、效能的規劃,並且又能提供各關鍵組件的驅動程式節省軟硬體整合的困擾,這也是 Marvell 認為與其他競爭對手最大的差異。

參考閱讀:Computex 2013 : Marvell 以儲存技術為底,提供不同方案合適的架構

9cdac5ad49de023c859560362e697dc2

Calxeda 在架構選擇方面不打算求快,會按照 ARM 的規劃持續研發,理由是目前 ARM 架構的伺服器仍處於萌芽期,相較於 x86 , ARM 架構對開發者的誘因是成本相對低廉,故搶先導入新架構並採用最新製程並非最好的選擇。

Calxeda 也從去年展示的伺服器中了解客戶需要更彈性化、更低成本的設計,故今年的展示的公板模組也降低上面的核心數量,並且將原本置於機箱上的四路高速網路介面取消,改為可於伺服器的模組上選擇提供兩路高速網路介面的方案,最多一個機箱可擁有兩張搭載高速網路介面的模組,客戶更能依照建制成本與網路速度需求調整架構。

參考閱讀: Computex 2013 : Calxeda 談 ARM 伺服器,合適的成本與正確的應用才是王道

371ff1cc1798ad749d435027da512a93

至於 TI 的 ARM 伺服器架構則是將先前應用於電信基地台用於基頻管理的產品線,根據 TI 的說法,在大量數學運算領域,相較於採用 CPU 運算, DSP 擁有相對更好的效率,而 TI 原本用於管理大量且複雜的電信基基地台訊號的 Keystone 處理器內就蘊含 TI 的高效能 DSP ,而在近日能源議題下,亦有廠商向 TI 詢問是否能將該產品線用於伺服器運算的領域。

TI 也在日前轉型決定將 Keystone 產品線投入伺服器應用,這不光只是由於 TI 的 DSP 效能夠高,也是由於 ARM 架構的效能已經能合乎運算級架構的需求,加上針對特定領域的運算可藉由與 DSP 的異質運算提供不亞於傳統 x86 架構的效能。

參考閱讀:  以強勢 DSP 為技術優勢,德州儀器嵌入處理器轉戰伺服器

874a073bfcdc305e926f7f7ca609dfe7

NVIDIA 則是在數年前由執行長黃仁勳提出 Project Denvor 後震撼業界,雖然該計畫一直至最近才逐漸掀開其神秘面紗,不過 NVIDIA 的想法就是透過 ARM 核心與其 GeForce 圖形技術的結合,提供具備高效能運算能力的 SoC ,藉此擺脫在運算領域需要與它廠 CPU 組合的現況。

自去年宣佈 Kepler 架構 GPU 的特性後,可以看出來在架構特性一直試圖減少與 CPU 的反覆溝通這點,就能看出 NVIDIA 設法讓 GPU 架構減少與 CPU 的繁複溝通以提昇運算速度;今年的 NVIDIA GTC 更進一步宣示明年與後年的重要計畫,明年的 Logan 加入正式導入具有 CUDA 核心的 Kepler 架構,至於後年的 Parker 更是重頭戲,因為 Denvor 核心將會正式導入。

可以說 Parker 才是整個 Project Denvor 的完成型,藉由 64 位元架構以及運算級的 GPU 核心,完成單晶片運算級架構,透過大量的 Parker 群集,以運算效能方面應該不容小覷;相較於目前已經有許多成功案例且被列為大專院校教學內容的 CUDA 平行運算,屆時的問題恐怕還是 64 位元架構的軟體支援情況。

參考閱讀: 一個 NVIDIA 佈了許久的局, Tegra Parker 可能改寫 HPC 定義

7316c7eb7394b0a77d6327741bd2dcf3

總和幾家導入 ARM 架構用於伺服器廠商的現況, ARM 架構用於伺服器到底是主角還是配角?這是個很詭譎的狀況,因為在目前的應用案例中, ARM 架構扮演的多半不是運算的主體,而是為了運作系統或是作為管理中樞的單元。

到了 ARMv8 64 位元架構會否改善?筆者個人認為 ARMv8 架構推出後的第一年恐怕還無法發揮其價值,因為軟體開發不會那麼快成熟,在軟體開發環境不成熟下, ARMv8 又比目前的 ARMv7 的架構更為複雜,若以非先進製程生產,功耗與發熱可能會是問題,但若以先進製程生產,成本與價格又可能偏高。

23612af1f54904ce8ab4f4a7febe9972

畢竟目前的運算世界仍是以 x86 為基礎建立起來的, ARM 雖然提供一個新的選擇,但畢竟目前還在萌芽階段,即便證實可用於高效能運算,軟體環境、成本若無法比起 x86 有優勢,想必廠商也不會有導入的意願,這一兩年內的發展情形,將是決定 ARM 架構能否在高效能運算嶄露頭角的關鍵?

2 則回應

  • 其實廠家或用家有否想過ARM與x86在軟硬件的升級/維修上成本問題

    最大分別是 ARM為專用系統而x86為泛用系統

     

    ARM server的情況如下

    硬件出問題時需要向廠家訂製零件,零件也不容易找到

    升級cpu(應該要整塊主機板換吧)很大機會需要重新修改及匯編kernel

    更新系統程式時或運行庫需要自行交叉匯編

    升級作業系統時需要重新向廠家訂購及要求客製化系統

    ......

    ......

     

    2013-06-19
    • AnthonyHK wrote:

      其實廠家或用家有否想過ARM與x86在軟硬件的升級/維修上成本問題

      最大分別是 ARM為專用系統而x86為泛用系統

       

      ARM server的情況如下

      硬件出問題時需要向廠家訂製零件,零件也不容易找到

      升級cpu(應該要整塊主機板換吧)很大機會需要重新修改及匯編kernel

      更新系統程式時或運行庫需要自行交叉匯編

      升級作業系統時需要重新向廠家訂購及要求客製化系統

      ......

      ......

       

      仔細看一下 Calxeda 那片 2 CPU + 2 Ethernet 的卡,它 CPU 好像是可以拆下來的?

      Server 用的 x86 也相當「專用」。
      Xeon 跟 Opteron、Registered ECC DDR3 模組、SAS,這些都不是隨便買的到的。

      至於編譯,看是要 cross compile 或是直接在機器上 native compile 都可以,應該沒有強迫一定得 cross compile 的問題
      作業系統的話,Linux 已經支援 AArch64 好一陣子了,把 Debian 丟上去跑應該不會太困難。
      所以看你想「客製」多少,客製的部份越多當然越麻煩。

      2013-06-19