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