伺服器架構:x86、RISC、ARM誰主江湖?
文章推薦指數: 80 %
在當今時代,說網際網路支撐起了整個世界的半邊天毫不過分。
無論金融、工業,還是機關、社會,各行各業都被網際網路串聯起來。
那麼你對支撐起網際網路的伺服器有了解嗎?伺服器的構架又是怎樣的呢?
伺服器可不是你的電腦主機
要了解伺服器構架,首先要先知道伺服器是什麼。
在不少人眼中,伺服器無非就是一個大機箱,和PC主機沒什麼區別。
事實上,這種觀點只是說對了一半。
伺服器與pc主機在結構上確實有很多相似之處,都包括了中央處理器、內存、晶片組、I/O總線、I/O設備、電源、機箱和相關軟體等。
但從本質上來講,伺服器有固定的地址,可以為網際網路用戶提供服務節點,實現網際網路資源共享,並具備承擔和保障服務的能力。
而且,由於用戶數量的不同,伺服器與電腦主機還有很多的區別。
PC主機一般只針對個人,提供給單個用戶計算等服務。
而伺服器作為網絡的節點,需要為多用戶、多任務提供可靠的服務。
伺服器存儲並且處理了網際網路80%的數據和信息,是網絡的中樞和信息化的核心所在。
而從要求方面來看,伺服器需要為很多共享服務(如資料庫、web應用、網絡等)提供高性能服務,這就要求其必須具備高速計算能力、長時間運行的穩定性和強大的外部數據處理吞吐能力。
與PC在處理能力、安全性、可擴展性、可管理性、穩定性等多方面性能有著本質差異。
也正是因為這些不同,伺服器在安全和穩定方面的要求也變更高,應對突發事故能力更強。
當遭遇停機、斷網、斷電、網絡攻擊時,PC機往往會產生數據丟失等後果,而這是伺服器所不能允許的事件。
伺服器面對的是整個網絡大量的用戶,需要保障7×24小時的穩定不間斷的工作。
為了保障伺服器的安全,其採用了大量技術也是PC機所不具備的。
這其中,冗餘技術、系統備份、故障預警技術、內存糾錯技術、在線診斷技術、遠程診斷技術以及熱插拔技術等,由於這些技術的存,大多數情況的系統故障可以在不關閉服務去的條件下得到解決修復,這也增加了伺服器的可管理性和風險應對能力。
採用對稱多處理器技術的伺服器
那麼如何才能保障伺服器的穩定工作呢?我們都知道,伺服器和pc機的核心組件叫做中央處理器,即CPU(Central Processing Unit)。
而一般的PC機內部只有一個CPU,這足以運轉單個用戶正常的處理要求。
而伺服器則往往採用對稱多處理技術(Symmetrical Multi-Processing,SMP技術)。
採用了SMP技術的伺服器可以安裝插入多個CPU,提高處理能力。
但是相對的,這樣的處理器可擴展性則會較差。
一般國產的小型伺服器以2路、4路、8路為主,即內部裝有2/4/8個CPU。
而16路和32路伺服器近年來也開始變得常見,UNIX伺服器,也就是我們所說的小型機,可支持多達64個CPU,而且近年來已經開發到了恐怖的128路伺服器。
而且,伺服器的CPU與普通PC機不同,其穩定性、緩存能力、接口、指令集、多路支持能力以及價位都有著明顯的差異。
而相應的,作為網絡節點,伺服器的內存在容量、性能、技術等更多方面有著根本的不同。
伺服器架構該怎麼分
現在的伺服器多種多樣,而關於伺服器分類的辦法也各有不同。
最貼近用戶分類辦法為按照伺服器檔次劃分,這也是目前最普遍的一種分類方法。
這種分類主要根據伺服器在網絡中的層次或者檔次進行劃分。
而所謂的檔次並非是指伺服器CPU主頻的高低,而是以伺服器的綜合性能為依據,尤其是伺服器的專用技術不同而進行的劃分。
以這種分類方法來看,服務可以被分為:入門級伺服器、工作組伺服器、部門級伺服器、企業級伺服器和視頻伺服器。
但是這種分類無法幫助大家認清伺服器本質,而且分類太多,特點不夠明確。
而另一種分類方法是以伺服器的CPU設計模式,即其指令集類型來對伺服器分類。
這樣的話可以將伺服器分為兩類:
CISC和RISC的區別
一類是CISC(Complex Instruction Set Computer複雜指令集)架構伺服器,也叫作IA(Intel Architecture,Intel架構)架構伺服器,即通常所用的PC伺服器。
這類伺服器基於PC機體結構,採用英特爾或者與之兼容的其他處理器晶片,這一架構以小巧穩為特點。
另一種則是RISC(Reduced Instruction Set Computing精簡指令集)架構伺服器。
這類服務所採用的CPU與日常所用CPU完全不同,使用RISC晶片並且一般會採用UNIX作業系統。
此類伺服器價格昂貴,但性能和數據處理能力強大。
而還有種分類則比較極端了,這種分類是以市場情況來進行劃分,將伺服器分為x86伺服器和非x86伺服器。
這種分類方法事實上是對上一種分類方法的補充和改進,CISC伺服器目前以x86為其代表,但RISC伺服器卻並不是伺服器市場剩餘的全部,一些新興的CPU設計模式正在崛起並搶占市場。
但是由於x86伺服器所在份額巨大,達到伺服器市場的九成左右,因此採用這種分類也更為合適。
x86:帝國崛起
提到晶片巨頭英特爾,每一個網際網路用戶應該都不會感到陌生,英特爾的CPU製造技術冠絕全球,但是你知道這家巨頭企業是如何發家的麼?
事情要從1978年6月8日說起,Intel發布了一款新型的微處理器「8086」。
而這款處理器在新出現時並沒有得到什麼關注,可是他卻創造了一個新的時代。
8086意味著x86架構的誕生,而x86作為特定微處理器執行計算機語言的指令集,定義了晶片的基本使用規則。
8086也直接帶動了Intel成為全球首屈一指的晶片巨頭。
而x86不僅僅使Intel平步青雲,也成為了業界的一種標準。
在過去的幾十年里,無論是筆記本、伺服器、超級計算機還是編寫設備,都可以看到x86的身影。
而且,x86架構還在通過不同的方法進行改進,無論AMD、VIA都可以通過X86指令集的彈性來對付Intel,迫使x86進行改變。
通過幾十年的技術積累,x86伺服器在伺服器領域的地位幾乎是獨孤求敗。
小巧靈活的x86伺服器在市場上應用十分廣泛,網際網路以及區域網內的文件、列印、通訊、web、電子郵件、資料庫以及應用服務等多個領域都可以一展身手。
x86:江湖紛爭
x86伺服器最大的特色在於可以兼容Windows作業系統,全部都採用了Intel的CPU。
而Intel的x86伺服器也可以分為兩代,最初採用的80x86系列在發布了產品80486後,Intel對該系列產品進行了重新命名並註冊,這也就是現在Intel的Pentium系列,當然,這個系列在中國還有個更響亮的名字,即奔騰系列。
目前奔騰系列的CPU包括:Pentium、Pentium MMX、Pentium Pro、PII、PII Xeon(至強)、PIII、PIII Xeon、P4 Xeon、Celeron2(賽揚)等。
IBM ThinkServer情歸聯想
x86伺服器的CPU由Intel一家獨大,可伺服器的競爭缺頗為激烈。
2014年初,聯想以23億美元併購了IBM x86伺服器業務,一舉成為伺服器領域全球頂級的企業。
可是即便聯想得到了IBM的x86業務,整個x86市場依然混亂非常,惠普、戴爾、Oracle以及壯士斷腕的IBM依然實力強勁。
回看國內,浪潮、曙光、華為等國內企業也把不同級別的伺服器市場做的風生水起,伺服器江湖一片混亂。
x86:廉頗未老
x86老么?從時間上來看,確實老了。
x86從1978年至今已經將近40年。
可經過各種風雲變幻之後,x86依然是伺服器行業絕對的領導者,說這樣的一個伺服器行業領袖已經老去,那無非便是在指摘支撐起整個網際網路的伺服器行業已老。
而且,經歷了很多代的改進和變革,x86架構伺服器依然是最快的架構之一。
而且現在x86也是整個行業的標杆,從技術上來看x86從未落後過,只不過是和其他架構的伺服器相比差距大小是否被拉近了。
從指令集架構來看,CISC確實是有些陳舊了。
即便是Intel也已經承認,CISC架構確實限制了CPU的發展。
在CISC微處理器程序的各條指令相互串聯執行,指令操作也需要串行執行,按照這種方式來進行任務執行,其控制當然十分簡單,但計算機的整體利用率卻被拖了後腿,執行速度相對偏慢。
這也是CISC架構為中低檔伺服器所採用的原因之一。
複雜指令集是一種伴隨著計算機誕生便存在的一種指令集。
其擁有較強的處理高級語言的能力,對於提高計算機性能有一定好處。
而日趨複雜的指令系統不僅帶來的效率的低下,還致使系統結構的複雜性增加,這種複雜性也將導致了CISC的通用性不佳。
RISC:高手對決
事實上,CISC的問題存在並非一兩年了,在1979年,也將是x86誕生後的次年,美國的加州大學伯克利分校便發現了這一問題,而針對這些問題,一些人提出了精簡指令的設想,也就是將指令系統中使用頻率較高的少量指令提出,並提供一些必要的指令來支持系統操作和高級語言。
而這個原則經過發展,於1980年IBM 801計劃完成,精簡指令集,也就是RISC正式面世。
RISC要比CISC精簡太多
RISC與CISC出生的時間相差不多,但是技術上確實針對了CISC的弱點,可謂是高手過招,滴水不漏。
而RISC的特點則是指令的格式全部一致,指令周期也一樣,並採用了流水線技術。
而與CISC小巧靈活的定位不同,RISC在中高端市場的優勢會更大。
也許有的人會有疑問,既然RISC 在技術上要比CISC精簡,那麼為何現在稱霸伺服器市場的是CISC的代表x86而不是RISC呢?這是一個很矛盾的事情,事實上,採用精簡的一系列指令來完成相同的任務要比採用單一的複雜指令會更慢。
因為微處理器的設計者一般沒有時間去調整每一條可能會用到的指令,因此他們只會優化那些常用的指令,而RISC的速度自然會慢一些。
而且在上世紀80年代,CISC會使得程序變得更加緊湊,雖然操作複雜但是速度確實會更快。
而RISC在輸入指令完成簡單程序時,需要從存儲器中度日指令的次數會更多,因此需要的時間也更長,在當時的工業和設計領域都對RISC的前景產生過擔憂。
但隨後人們也開始認識到一些問題,微處理器的運行速度開始變得要比內存更快了,這也就意味著增加處理器的利用率會使得整個過程變得更快。
而這種趨勢正在隨著時間變得越來越強,很明顯,更多的緩存支持更高頻率的操作正在變得越發有必要,而降低CPU原本的複雜度才可能節省出一定的空間,來留給新增的緩存。
RISC:爭久必合
降低CPU複雜程度促進了RISC地位的提升,可是Intel是不會允許自己一手打造的X86就此沒落的。
而事實也是如此,我們今天x86依然是行業絕對的主角,那麼他是如何做到以弱克強的呢?
準確來講,現在的x86架構已經不是標準的CISC了,他吸收了RISC和CISC雙方的性能的有點,形成了獨特的、自主的x86架構。
這種X86架構依然是CISC 的骨和皮,卻加入了很多RISC的特色技術,因此雖然在高端市場無法與RISC競爭,但是在占了市場主流的中低檔x86架構仍然是最快的。
而且,RISC和CISC之爭在上世紀就已經見了分曉,Pentium和P6時代二者幾乎都走向了融合的方向。
CISC指令集發展為現在的x86,而RISC 指令集提醒結果則發展為現在的ARM和MIPS為代表的高性能RISC 指令集。
IBM大型機便是採用RISC構架
RISC指令位數較短,內部有快速處理指令的電路,使得指令的解碼和數據處理等能力更強,執行效率更高,但這一切的前提都是需要編譯程序的處理,也就是上世紀所困擾RISC 的原因。
而CISC指令解碼較長,還需要機構微指令協助執行,但開發較為容易,可執行效率低,處理數據的速度慢,因此這項技術更多的被應用在中低檔的伺服器構架之中。
RISC:戰火點燃
RISC和CISC握手言和,這並非伺服器市場競爭結束,而是新一輪戰火點燃的信號。
雙方短暫的和平還因為現在的處理器速度與指令集構架的關係越來越小,指令集構架的影響力早已被CPU微結構,甚至更為貼近底層的設計所超越。
而反觀伺服器市場,在中低檔伺服器全盤被x86所統治的情況下,高端伺服器的競爭形勢也很激烈。
在高檔伺服器市場中,Compaq的Alpha、惠普的PA-RISC、MIPS公司的MIPS、SUN公司的Sparc,以及IBM的PowerPC。
在非x86伺服器當中,藍色巨人IBM在技術方面的領先使其無人能當。
而這一領先優勢也是讓IBM可以大膽的放手將x86業務全盤賣給老合作夥伴聯想的原因之一。
無論是IBM的Z系列還是P系列,其穩定可靠性方便都得到了市場廣泛的認可。
而RISC的前景已經不再像過去的年代一樣模糊,各大公司也都意識到這一領域的重要性,開始競相發力,IBM的優勢也不再像過去一樣穩如泰山。
ARM:異軍突起
在PC領域,Intel的CPU一枝獨秀。
而在移動端呢?那就當屬ARM了。
ARM全稱為Advanced RISC Machine,也就是進階精簡指令集機器。
ARM是RISC微處理器的代表作之一,其廣泛的在嵌入式系統設計中被使用。
而且ARM處理器最大的特點在於節能,這也是其在移動通信領域無人能敵的原因之一。
谷歌高通聯手打造ARM64位伺服器
在過去,ARM專注於發展32位架構,在移動端稱霸多年,讓Intel眼饞不矣。
而在PC和伺服器領域,Intel的市場也讓ARM十分眼紅。
ARM於2011年底發布的ARMv8為其首款64位處理器,而戴爾在2013年發布了其首款基於ARM64位構架的伺服器,相應的伺服器解決方案也被開發出來。
專家認為,儘管Intel的x86處理器在伺服器領域依然無敵,但64位的ARM構架應該可以找到自己的一席之地,ARM在內存和網絡接口同計算核心間的距離會被儘可能的拉近,並藉此承載起密度極高的大量計算進程,這種特性與Web伺服器及其應用十分契合。
在伺服器領域,Intel的晶片也有很多水土不服的領域,比如內存容量、I/O和處理性能不成比例時,ARM處理器的表現會更加合格。
ARM處理器的ISA複雜程度要低很多,開發成本也要低,相應的,ARM伺服器廠商針對這些應用場景所開發的伺服器也就擁有了打敗Intel的前提條件。
而從這些應用環境所切入伺服器市場的ARM架構伺服器其針對客戶也正是x86的原有部分客戶。
而Intel是不會輕易放手的,在伺服器領域,其工藝對ARM保持領先,其處理器性能也遠高於ARM處理器,可在功耗方面一直是Intel的一個心病。
此外,Intel也想進軍移動端,要打敗ARM,在低功耗的伺服器領域發力便是一個好的選擇。
採用了14nm工藝的Xeon-D,其包括的2個1.4G的Broadwell內核和GPU的功耗才僅僅為6W,在性能功耗比方便比ARM要高出不少。
在2008年,Intel推出了Atom處理器,這款處理器是Intel史上體積最小,功耗最低的處理器,其開創出去便是之中彌補自己在移動計算領域先天不足的問題,而這一領域被ARM霸占多年,在技術和經驗中Intel都不占優勢,想要打敗ARM又談何容易?
ARM:虎口奪食
既然雙方都對對方的領域虎視眈眈,那麼ARM和Intel的大戰絕對是不可避免的。
那麼想要進入Intel的伺服器領域,ARM就需要拿出來真本事了,以其64位元處理器作為基礎的晶片設計,功耗低、成本低,具備構架彈性,以這些優勢去硬碰Intel又能有幾成勝算呢?
換個角度看,ARM晶片架構具備一定的靈活性,可以實現很多企業的特性需求,比如緩存一致性以及容錯和高可用性等,其軟體的生態環境成熟度卻不及Intel,即便是有了更多的企業關注也未必就能有把握擊敗Intel,那麼又是什麼支持這ARM來客場挑戰Intel呢?
決戰,無可避免
虛擬機的興起,讓ARM看到了反擊的機會。
ARM64位元處理器的處理能力越來越強,而以雲計算為代表,伺服器的需求產生了新的變化,ARM構架伺服器作為雲計算的支撐構架有了新的形勢和優勢。
而且隨著行動網路和網際網路融合互通日趨明顯,ARM發展後台數據中心已經是大勢所趨,所以與其說ARM虎口奪食倒更像是背水一戰,無論是ARM還是Intel,雙方都沒有任何退路可言。
早在2013年,百度位於南京的雲計算數據中心首度對外曝光,這也是全球首個ARM架構伺服器端的規模應用。
在此之後,ARM架構用於雲支持的案例便越來越多,相比節省能耗的x86晶片,ARM處理器功耗還要更小,這對於動輒上千台伺服器需求的雲計算數據中心來講,無論是成本還是能源消耗都有著不小幅度的節省。
而且ARM構架本身是開放的, ARM本身也不生產晶片,以授權的商業方式與各種半導體晶片廠商聯手,這種商業模式也對於ARM伺服器的進一步發展提供了更強的生命力。
如果有一天,ARM伺服器挑戰Intel x86伺服器成功,請千萬不要驚訝。
MIPS:另一個攪局人
RISC的代表作ARM已經展現出足夠的強大去對抗x86,而另外一個代表MIPS則展現了足夠的潛力。
MIPS體系
MIPS(Microprocessor without interlocked piped stages )架構是有潛力和ARM相抗衡的另一個種採取精簡指令集(RISC)的處理器架構。
該架構基於一種固定長度的定期編碼指令集,採用了導入/存儲(load/store)數據模型,具有從32位到64位的可擴展性。
MIPS構架有科技公司MIPS公司在1981年開發出來,經過長時間的發展,其相應的軟體開發工具和廠商支持較廣的一種嵌入式架構。
MIPS包含有大量的寄存器、指令數和字符、可視的管道延時時隙,而這些特色也讓MIPS的能耗低到可以和ARM相抗衡。
MIPS的高性能緩存區及緩存管理方案具有很強的靈活性,增加了密集型數據處理、數據量、斷言操作等功能,在嵌入式市場不斷增長的計算需求里仍然可以保持領先。
而且作為 MIPS最初是面向高性能科學計算支持,所以在指令集設計的時候更注重速度和性能,而非功耗和面積。
此外,相比ARM,MIPS的兼容性會更強。
MIPS架構可完全向後兼容,也就是說MIPS32位架構可以在MIPS64位上無障礙運行。
這一點也是MIPS可能打敗ARM的殺手鐧之一。
RISC-V:顛覆者
如果說MPIS威脅到了ARM的地位,那麼RISC-V便是直接威脅到了RISC的存在。
RISC-V從2010年開始設計,花費了大約四年的時間才完成了RISC-V的開發過程。
顛覆者RISC-V
值得注意的是,RISC-V是一款完全開源的架構。
這也就意味著RISC-V是一個現代化、完全沒有專利問題、沒有歷史問題的全新指令集,並且以BSD許可證發布。
相比之下,ARM指令集架構的許可證可能高達千萬美元。
RISC-V的開發者認為,開源是這個時代不可逆轉的潮流,RISC-V不僅能讓公司受益,也可以讓大學和研究機構更好的研究全新的處理器技術和架構。
這種新的商業模式不僅提高了企業的效率也降低了成本,從雲計算、大數據到容器技術無一不是開源項目的受益者。
與ARM架構對比,RISC-V在功耗、性能、面積等各種層次都不輸給ARM,甚至有些層面已經超越了ARM,並且相比之下,其可擴展性更強、指令更豐富,提供免費的開源編譯和仿真環境,目前唯一需要期待的便是RISC-V的相應生態進一步的建立和成熟,當相關的產品產生後資本流入並且進一步發展,那麼RISC-V取代RISC,指日可待。
高密度帶來的質變 PayPal宣布部署ARM架構伺服器
自從專注於企業級ARM處理器市場的Calxeda宣布燒光現金無法融資被迫倒閉知乎,ARM在企業級領域的聲音就急劇減少。但企業對這種靈活、低成本、高密度的架構卻始終抱有興趣。而這也是Calxeda...
如何看待ARM與RISC-V之爭,未來將何去何從
從2010年夏天開始,伯克利研究團隊大約花了四年的時間,設計和開發了一套完整的新的指令集。這個新的指令集叫做RISC-V,指令集從2014年正式發布之初就受到多方質疑,到2017年印度政府表示...
Wintel聯盟正式破裂!微軟布局ARM與AMD夾擊Intel
【PConline 雜談】2016年,在深圳舉辦的WinHEC微軟宣布高通的晶片支持運行傳統x86 EXE程序的時候,小編就已經想好要聊一下微軟的跨平台夢以及ARM的未來了~只不過最近終於空出來...
超能課堂(144):X86、ARM有何不同?
一台伺服器、一台電腦、一台手機最重要的電子零部件是什麼?沒錯,就是CPU處理器。它主要負責數據計算、控制功能,是最核心的部分。不過你又知道有多少種CPU架構嗎?主流的X86、ARM到底有什麼區別?
性能更強的SPARC和Power為啥鬥不過x86
相比x86,IBM的Power架構和Sun的SPARC架構都曾有著很明顯的性能優勢。但時至今日,已經接近40歲的x86架構占據了超過90%的伺服器市場。根源來看,是由於封閉系統和企業屬性不符,盲...