比特網(wǎng) 發(fā)表于:14年05月09日 09:17 [轉(zhuǎn)載] 比特網(wǎng)
關(guān)于軟硬件誰(shuí)為主導(dǎo)這個(gè)話題,套用一句諺語(yǔ)就是三十年河?xùn)|三十年河西,風(fēng)水輪流轉(zhuǎn)。軟件和硬件一定是相互促進(jìn)、相互拆臺(tái)又相互搭臺(tái)的。一些之前被詬病的上層架構(gòu),或許若干年之后會(huì)被發(fā)現(xiàn)成了最合適的選擇,而再過(guò)若干年,又會(huì)變得不合適。軟件定義亦或是硬件定義,同樣也是這樣,硬件定義的結(jié)果是性能夠強(qiáng)但是不靈活,此時(shí)軟件定義便會(huì)開(kāi)始醞釀翻盤,但是任何事情都有慣性,軟件“過(guò)度”定義之后,會(huì)發(fā)現(xiàn)很多事情搞不定,還得靠硬件來(lái)加速一下,此時(shí)開(kāi)始進(jìn)入硬件定義周期,然后循環(huán)往復(fù)。我們可以用幾個(gè)例子來(lái)窺探一下這種規(guī)律。
CPU和OS
一對(duì)不離不棄的夫妻,陰抱陽(yáng),陽(yáng)抱陰。一開(kāi)始沒(méi)有所謂中斷,更沒(méi)有所謂OS,只有順序執(zhí)行指令計(jì)算機(jī)和被寫(xiě)死的程序,很不靈活。后來(lái)才有了OS,CPU先執(zhí)行OS這個(gè)大循環(huán)程序,然后載入所需要執(zhí)行的用戶程序執(zhí)行,執(zhí)行完退出,可以繼續(xù)載入其他程序執(zhí)行。哪怕最簡(jiǎn)單的OS要想玩轉(zhuǎn),CPU起碼也得至少提供IO和時(shí)鐘中斷機(jī)制。OS呱呱墜地,就得不斷長(zhǎng)大,不斷地進(jìn)化,單任務(wù)不靈活,就得多任務(wù)分時(shí)執(zhí)行,所有任務(wù)共享內(nèi)存空間,導(dǎo)致了安全性問(wèn)題,這就不得不引入虛擬內(nèi)存技術(shù),所以軟件越來(lái)越復(fù)雜,性能逐漸就不行了。此時(shí)CPU出來(lái)說(shuō)話了,我來(lái)搞定虛擬內(nèi)存,提供頁(yè)表極致,提供專用的控制寄存器,并提供專用的查表加速硬件部件。多任務(wù)分時(shí)OS的生產(chǎn)力被初步釋放,但是性能還是較差,還得依靠CPU搞定。CPU繼續(xù)發(fā)力,引入超線程技術(shù),讓多個(gè)線程的代碼可以并發(fā)執(zhí)行,這得益于流水線的設(shè)計(jì);為了能夠更好的實(shí)現(xiàn)線程并發(fā)執(zhí)行,后來(lái)繼續(xù)出現(xiàn)多核心多CPU的SMP技術(shù), OS不得不做出改動(dòng)。但是多CPU/核心并不是任何時(shí)候都很高效地并發(fā)多線程的,隨著軟件復(fù)雜度提升,線程同步、緩存一致性等問(wèn)題導(dǎo)致需要大量狀態(tài)和數(shù)據(jù)同步,傳統(tǒng)的共享式的前端總線效率太低,所以不得不改為交換式Fabric比如IntelQPI,訪問(wèn)內(nèi)存經(jīng)過(guò)太多跳器件效率上不去,所以也改為直連CPU分布式共享架構(gòu),這也是當(dāng)今的形態(tài)。再往后會(huì)怎么發(fā)展,應(yīng)該可以順著慣性往前推導(dǎo)一下,交換式Fabric的出現(xiàn),意味著CPU和CPU之間可以離得越來(lái)越遠(yuǎn),只要有足夠高速的鏈路連接,這一形態(tài)其實(shí)就是大型NUMA計(jì)算機(jī)的形態(tài)了。這一形態(tài)的輪回意味著軟件架構(gòu)的變化,傳統(tǒng)領(lǐng)域需要高性能的場(chǎng)景不得不使用大型機(jī)、小型機(jī),但它們是極其昂貴的——就是因?yàn)椴婚_(kāi)放,而且又不可能像互聯(lián)網(wǎng)領(lǐng)域一樣投入開(kāi)發(fā)資源在分布式系統(tǒng)上定制化自己的應(yīng)用。而開(kāi)放式大型NUMA系統(tǒng)出現(xiàn)之后,可能之前的被“過(guò)度”定義了的分布式系統(tǒng)生態(tài)又會(huì)沉寂下來(lái),這個(gè)循環(huán)進(jìn)入新的周期紀(jì)元,在這個(gè)紀(jì)元里,曾經(jīng)光鮮的分布式系統(tǒng)可能會(huì)被新生代工程師/架構(gòu)師認(rèn)為是一種很不可思議的“野路子”:“你看,以前這種架構(gòu),好坑爹啊!”。這就像我們現(xiàn)在回頭看之前的有些設(shè)計(jì)一樣,也會(huì)感覺(jué)到不可思議,那時(shí)候的人都這么“腦殘”么?恩,如果換了你回到那個(gè)時(shí)代,或許更腦殘:)。不管誰(shuí)腦殘,一個(gè)事實(shí)是始終不變的,那就是硬件性能的絕對(duì)值是一直直線上升的,不管分布式還是集中式。
公司簡(jiǎn)介 | 媒體優(yōu)勢(shì) | 廣告服務(wù) | 客戶寄語(yǔ) | DOIT歷程 | 誠(chéng)聘英才 | 聯(lián)系我們 | 會(huì)員注冊(cè) | 訂閱中心
Copyright © 2013 DOIT Media, All rights Reserved. 北京楚科信息技術(shù)有限公司 版權(quán)所有.