ARM與x86的較量 未來誰更適合云計算時代
傳統(tǒng)的Windows和Linux實例——這是如今我們所熟知的傳統(tǒng)的IT工作負載。用戶希望運行各種隨機的Windows或Linux工作負載。在這一應用中,應用軟件的兼容性是關鍵所在。硬件必須能夠在各種應用間提供出色的性能。x86在該情況下大放異彩。目前,微軟正在研究面向ARM的Windows端口。雖然這將幫助遷移部分工作負載,但是它不能幫助遷移已經在x86上運行的數(shù)十萬企業(yè)應用。
功能單一、控制嚴格的工作負載——如果您可以嚴格控制所運行的應用,那么您就可以優(yōu)化硬件,從而提供最出色的價格、性能和功耗。數(shù)據(jù)庫就是一個很好的例子,它非常重要,因此值得這么做。目前,Oracle等已經意識到這一點,甚至提供了Exadata等優(yōu)化的硬件系統(tǒng)。ARM是否適合,都取決于您是否對功耗或性能進行優(yōu)化。例如Oracle的Exadata優(yōu)化了性能并使用英特爾至強處理器,而沒有使用ARM,但是其他工作負載可能更適合使用ARM。
云計算——云計算在許多方面都與傳統(tǒng)的Windows和Linux實例類似。如果服務提供商不能準確預測將要運行的應用,那么將默認提供基于x86的廣泛兼容服務。此外,如果對云提供商的性價比指標進行判斷和對比,那么高端的至強處理器將是。
大型web資產——有時候在一句話中能看到ARM與Facebook等名稱同時出現(xiàn)。大型web資產是一項特殊資產。首先,它規(guī)模宏大,因此節(jié)能對于整體來說非常重要。其次,工作負載受到相當嚴格的控制,足夠穩(wěn)定。Facebook的數(shù)據(jù)庫運行構成Facebook應用的所有個體工作負載,但是這些工作負載通常具有相對較高的穩(wěn)定性。如果公司可以隔離部分這樣的工作負載,那么就適當優(yōu)化基礎設施。例如,可能部分與IO捆綁的Facebook處理無需大量處理。這是向環(huán)境推出ARM的最好時機。Facebook嚴格控制在ARM處理器上運行的應用并可以移植它們所需的信息。大量Facebook應用都是以PHP格式編寫的,可以在HipHopJIT編譯引擎中執(zhí)行。如果Facebook將JIT擴展至支持ARM,那么公司可以在此后快速遷移大量PHP代碼。其他web資產也可以采用類似戰(zhàn)略。但是Google和微軟都已經就使用所謂的“wimpy核心”進行處理進行了撰文,而且得出了不同的結論:Google表示不會使用,但是微軟則持謹慎的樂觀態(tài)度。
由此,得出一個共同主旨:在應用兼容性方面x86相對于ARM來說具有明顯競爭優(yōu)勢。如果您運行控制嚴格的應用,那么使用ARM進行功耗優(yōu)化則可能適合您;但是如果您希望處理各種工作負載和應用,那么x86則是更好的選擇。
因此,英特爾最近推出的凌動產品可能是最理想的選擇。雖然它沒有ARM那樣絕對的高能效,但是它大幅降低了功耗,而且還保持了x86的軟件兼容性,并能提供服務器級別的特性,如64位處理能力、虛擬化和內存糾錯。微軟發(fā)現(xiàn),使用凌動處理器處理Bing工作負載時,雖然為了滿足性能需求需要進行悉心優(yōu)化,但可帶來大量優(yōu)勢。
結論
軟件兼容性這一強大影響因素幫助英特爾x86家族攀上了現(xiàn)代CPU的頂峰。雖然在低功耗方面ARM較x86具有明顯優(yōu)勢,但是ARM要求用戶放棄x86軟件的兼容性。在某些情況下,這是可以接受的,比如智能手機、平板電腦和高度受控的數(shù)據(jù)中心和云計算工作負載。無論是用戶不需要或者不想運行現(xiàn)有x86二進制還是代碼庫太小,遷移至ARM都是一個現(xiàn)實的任務。但是,除了這些使用情形外,ARM還面臨著一件棘手的事情。英特爾最近針對微服務器優(yōu)化的凌動處理器不僅可實現(xiàn)低功耗,而且還保留了x86的兼容性。雖然面臨著這些挑戰(zhàn),但是ARM在智能手機和平板電腦這些無需x86兼容性的市場還是實現(xiàn)了大幅增長。最終,智能手機/平板電腦市場的擴大將幫助創(chuàng)建一個基于ARM的大型生態(tài)系統(tǒng),該生態(tài)系統(tǒng)可在數(shù)據(jù)中心內對x86發(fā)起挑戰(zhàn),但是要想在專門應用以外的領域實現(xiàn)這一目標還有很長的路要走。
內幕
雖然ARM架構提供了令人不可思議的潛能,但是它仍然還處于起步階段而且面臨著許多巨大挑戰(zhàn)。首先,最新一代的ARM芯片尚未在第一時間為企業(yè)的數(shù)據(jù)中心做好準備。到目前為止,ARM架構僅支持32位指令集,這會導致在企業(yè)中出現(xiàn)問題。大部分服務器操作軟件和企業(yè)級應用都基于64位架構,無法在當前的ARM芯片和平臺上運行。Calxeda、AppliedMicro和AMD都已經意識到這一大問題,因此都宣布將在2013年末或2014年初發(fā)布64位版本。
其次,即使64位ARM芯片可用,也需要針對ARM架構對許多企業(yè)應用進行重新編寫或重新編譯。微軟已經開始開發(fā)面向ARM的64位版本,而Facebook、惠普、AMD、三星和其他廠商最近發(fā)起成立了LinaroEntepriseGroup,以加速基于ARM架構的軟件開發(fā)。目前尚無廠商使用ARM處理器構建商用云。雖然去年7月,Rackspace、惠普、Canonical和其他OpenStack成員宣布了他們開發(fā)基于ARM的云的意圖,但是目前唯一上市的產品僅是ARMsandbox上可通過TryStack使用的OpenStackEssex。
此外,尚存的疑慮還包括ARM服務器是否在數(shù)據(jù)中心內支持特定工作負載,或者它們是否能夠真正取代x86架構。ARM特別適合web
評論