云計算的核心是信息處理與計算的高效能,它提供的服務,無論是公有云、私有云,還是混合云,都是為了解決一個效能問題。因此,沒有效能也就沒有云計算。
云計算是計算技術(shù)的一次重大變革,但凡應用模式的重大創(chuàng)新都伴隨著技術(shù)的重要跨越。無論從商業(yè)運作還是從用戶使用層面,或是從服務理念上,云計算都將開辟一個新的事業(yè)。
云計算:不同人群的美好愿景
當前,云計算之所以如此紅火,就在于不同的人群和利益攸關(guān)方對它寄予了眾多美好的憧憬,而這些美好的憧憬在不同人群中表現(xiàn)出不同的訴求。
從個人和企業(yè)用戶角度看,他們對云計算的理解是:希望能夠得到按需使用的服務,最好不要在計算機上下載那么多軟件,也不要花很大精力去維護這些軟件和文件庫。為了實現(xiàn)信息化,人類已經(jīng)付出太過沉重的代價。因此,迫切希望能有一種“信手拈來就用,不用就收回去”的便捷服務方式。此外,人們已不再止步于大眾服務業(yè)態(tài),希望獲得更多的個性化應用,而個性化服務在現(xiàn)今社會如果沒有規(guī);,也就不具備商業(yè)價值。
“云”的統(tǒng)計復用本質(zhì),能夠在大尺度空間上匯聚某個局部看似非常個性化的應用,成為有規(guī)模支撐的商業(yè)服務。當然,“云”的統(tǒng)計復用也會引發(fā)私密性和安全性等一系列新興問題。在當前的互聯(lián)網(wǎng)時代,個人計算機每天都遭到病毒、木馬等肆無忌憚的侵犯,人們?yōu)榇艘ㄙM大量的時間維護系統(tǒng)安全穩(wěn)定,不斷進行殺毒軟件和數(shù)據(jù)庫的更新及應用軟件的補丁升級等工作。因此,我們也更加熱切期盼“云服務”能夠幫助人們改變目前的生活方式和作業(yè)模式,大幅度減少使用傳統(tǒng)PC和服務器所帶來的煩惱。
從運營商角度來看,他們是“云服務”的提供者,當前遇到的最大矛盾是全局資源利用率低下的問題。IBM公司提供的數(shù)據(jù)表明,實際運行時CPU利用率有時甚至不到10%,一般來說也就30%左右。對于運營商而言,大量資源被閑置絕對是一件經(jīng)濟上不合算的事情。此外,現(xiàn)在的新興業(yè)務都需要快速靈活提供,甚至是爆炸式的部署。所謂爆炸式,就是市場容不得亦步亦趨、一點一點地擴張,必須要像原子彈爆炸那樣,在很短的時間內(nèi)以摧枯拉朽之勢橫掃、席卷整個市場。這種市場開拓模式的改變,使得運營商面對的市場不僅需要更快的業(yè)務提供,還要有很好的拓展性,而最重要的還是要有更低的運營成本。目前IDC的運營方式產(chǎn)生的巨額運營成本,使人不堪重負。而“云服務”則能幫助運營商擺脫這種困境。當然,為了公平可信的服務,確保基本的公信度,云服務還必須提供可靠的安全性。
從設備供應商角度來看,“云服務”為他們展示了一個極富吸引力的市場前景。對于中小軟件企業(yè)甚至個人,以往進入市場有過高的門檻,他們常常只能望而卻步,而現(xiàn)在應用軟件市場的經(jīng)營方式使人們看到了小本買賣也有高盈利的希望。也就是說,即使一個人運營的軟件公司,也有可能獲得非常可觀的商業(yè)效益。
基于“云”的深度統(tǒng)計服務,將從根本上改變我們現(xiàn)階段的經(jīng)濟理念和商業(yè)模式,也將深刻地轉(zhuǎn)變我們的產(chǎn)品設計思想。比如,以往衡量ASIC專用電路能不能投產(chǎn)的重要因素,是以市場能有多少銷量預測為依據(jù)?墒窃谠朴嬎銜r代,一切皆為服務,硬件也是服務,芯片也是服務(CaaS)。因此,芯片的價格即使昂貴,但在云服務的環(huán)境下這種成本也將被平攤到服務提供的次數(shù)上,而不是市場銷售的芯片數(shù)量上。這種改變將使設備供應商可從過去的產(chǎn)品設計理念和約束條件中解放出來,將產(chǎn)品銷售數(shù)量轉(zhuǎn)變?yōu)榫W(wǎng)上收費服務次數(shù),將設備銷售轉(zhuǎn)變?yōu)榉⻊兆赓U。同時,云計算還將促使售后服務方式發(fā)生改變,從面向個人或單位轉(zhuǎn)變?yōu)槊嫦颉霸坪!,軟件產(chǎn)品也將進入“永遠都是α版本”的時代。
總之,不同人群的美好愿景都寄托在“云”的身上。
云計算不容回避的問題:高效能
目前,關(guān)于云計算的嚴格科學定義還沒有達成共識,有關(guān)它的種種說法不過都是從不同需要或目的出發(fā)所作的詮釋。有人基于web來理解云計算,也有人認為云計算將是虛擬機的時代,凡此種種,不一而足。從和諧發(fā)展的角度視之,“云計算”的理想目標,至少應包括用全新的技術(shù)和商業(yè)模式來實現(xiàn)用戶、服務運營商和設備供應商三個層面上的共贏。
云計算作為一種專門的規(guī);峁┑姆⻊,它的高效能問題是計算機技術(shù)領域必須面對的現(xiàn)實,必須通過改革創(chuàng)新來解決。改革不同于發(fā)展,發(fā)展往往可以迂回地去解決問題,而改革必須是攻堅克難,破舊立新?梢杂靡粋當今時髦的字“囧”來描述“云計算”現(xiàn)狀,人們現(xiàn)在說云計算是人云亦“云”、“云”里霧里、眾說紛“云”、不知所“云”,用“囧”來描述它目前的這種困境再貼切不過。高效能問題不僅是云計算,也是互聯(lián)網(wǎng)計算、高性能計算,乃至計算技術(shù)中的一個基本問題,這些問題若得到解決,云計算就有了落地生根的基礎。
云計算高效能的解決良方
目前能夠提高云計算效能的辦法包括以下幾種:
一種是虛擬機VM,這是一個當今廣泛被人們接受的辦法。其實虛擬機不外乎是以虛擬化手段來提高資源的利用率。眾所周知,在Server Farm服務器領域,是用大量PC、簡單且廉價的服務器來堆疊成為IDC這樣的一個基本組織形態(tài)。實踐表明,在這樣一個組織形態(tài)下資源利用率會很低,運營成本則很高,運營保障付出的代價也很大。于是人們就產(chǎn)生如下思考:能否用高端的服務器甚至定制的服務器來替代目前的服務提供形態(tài),然后用層層虛擬出的虛擬機來提供比較個性化或分眾化的用戶服務?這就是虛擬化的基本思想。但是我們也應看到,虛擬化相對于一個計算實體來說,它所付出代價也并不小,因為任何計算環(huán)境的虛擬化都是以本征計算資源的開銷為基礎的。有研究表明,一個確定的計算實體,僅做一次架構(gòu)或環(huán)境的虛擬化就至少要花掉30%以上的開銷,深層次的虛擬化所付出的代價將更加高昂。
傳統(tǒng)的計算機本身就是一個虛擬化的典范,它的計算實體是基于圖靈-哥德爾可計算理論和馮•諾依曼體系結(jié)構(gòu)來構(gòu)建的,基本實現(xiàn)思路就是用最簡單的加法運算和與非邏輯運算,進行組合與迭代,最后實現(xiàn)各種復雜運算和功能,其本身就是一個經(jīng)典的程序化的虛擬過程,所解算問題的內(nèi)在結(jié)構(gòu)與計算機本征結(jié)構(gòu)的差異愈大,需要虛擬化的層級就越多,計算效率也就愈低。
另一種方法就是低功耗的設計和管理。如今綠色低耗已成為世界性潮流。據(jù)說僅信息通訊網(wǎng)絡和服務提供的能耗,已經(jīng)占到了世界總能耗的6%左右,并且還有繼續(xù)增加的趨勢,而這6%中還不包括所有的用戶終端。近年來低功耗設計與管理應該說取得了長足進步,在一個會產(chǎn)生很大熱量的高密度運算環(huán)境里,引入綠色低功耗設計和系統(tǒng)功耗管理技術(shù),確實可以大幅度減少高功耗帶來的運營成本的提升。因此,低功耗綠色電路設計技術(shù)的進步,包括半導體制程工藝的進步、極低或超低電壓使用,也包括自主休眠和激活技術(shù),以及基于任務的系統(tǒng)功耗管理技術(shù)的進步,都可以在一定程度上提高或改善計算平臺的服務效能。
除了虛擬化和低功耗以外,計算體系結(jié)構(gòu)的根本改變與創(chuàng)新,或許是一個比較徹底的解決效能的方法。有這樣一個自然法則及其推論,就是:結(jié)構(gòu)決定功能,結(jié)構(gòu)決定性能,更重要的是結(jié)構(gòu)也能決定效能。一個確定功能可以有多種實現(xiàn)結(jié)構(gòu),不同的實現(xiàn)結(jié)構(gòu)則會有不同的使用性能。由此,只有應用與功能、性能直接匹配時的結(jié)構(gòu)才是高效能的結(jié)構(gòu),即由應用來決定計算環(huán)境的本征結(jié)構(gòu)。
基于這樣的認識再推廣開來,倘若在編制程序時只考慮功能而不琢磨性能,那么程序編制或設計人員的工作會簡單很多,軟件生產(chǎn)也會方便得多。然而不考慮性能的服務是不可能的,但考慮了性能的服務又會使軟件編制非常復雜繁瑣。能否讓系統(tǒng)自動地根據(jù)運行狀態(tài)來配置性能呢?答案是肯定的。這就是說,今后編程時只需進行功能描述,而性能將由系統(tǒng)根據(jù)運營狀態(tài)來自主識別和選擇算法結(jié)構(gòu)與配置計算環(huán)境,使運行性能與負載狀況及服務質(zhì)量達到最佳匹配,盡可能減少虛擬層次,從而達到效能提高的目標。
當前計算機技術(shù)是通過剛性的計算基礎(本征)結(jié)構(gòu)和軟件實現(xiàn)算法來解決應用問題,這種結(jié)構(gòu)與多樣化的應用需求之間存在矛盾是必然的,只緣于當初僅為解決可計算(還不是高效可計算)問題而創(chuàng)立的。倘若要在這樣一個基礎結(jié)構(gòu)之上虛擬出多種多樣的功能與性能,難度不亞于用元素周期表里的元素來構(gòu)建整個大千世界,其效能如何也是可想而知的。目前的通用計算機都按照運算器、控制器、總線、存儲器、外存儲器的結(jié)構(gòu)模式構(gòu)造。假如要在數(shù)據(jù)庫里修改一個年齡數(shù)據(jù),就要從數(shù)據(jù)庫里調(diào)出數(shù)據(jù),從磁盤到內(nèi)存,從內(nèi)存到高速緩存,從高速緩存到運算器,在運算器上做一個簡單運算,結(jié)果數(shù)據(jù)然后再沿途返回。通過如此漫長的傳輸和計算路徑上的運作還有什么效率可言?所以說,在單一、剛性的基礎結(jié)構(gòu)上,通過層層迭代與合成而構(gòu)建出的虛擬機,來應對多樣化、規(guī)模化、無確定模型表征的云計算應用需要的功能和性能,是很難達到理想的高效能目標的。
基于認知的主動重構(gòu)云計算體系ARC3
通過上述觀察,我們可以得出結(jié)論,只有功能和性能與運算狀態(tài)和負荷情況相一致時的結(jié)構(gòu)才是高效的,換句話說,就是要由應用來決定本征計算環(huán)境或結(jié)構(gòu),很自然就會導出我們所提出的基于主動認知的主動重構(gòu)基礎計算架構(gòu)這種創(chuàng)新體系。該體系結(jié)構(gòu)是一種函數(shù)結(jié)構(gòu),它可以用一個復雜函數(shù)來表達,其自變量可以是時間t、負載狀態(tài)a(t)、業(yè)務類型Si、資源狀況r、計算方式md、功能粒度gt、互聯(lián)拓撲tp等等。函數(shù)結(jié)構(gòu)公式為:
f=λ ( t, a ( t ), Si, r, md, gt, tp, … ) ( x )。
這樣,傳統(tǒng)的用一個固定的、剛性的結(jié)構(gòu),通過虛擬化過程實現(xiàn)各種業(yè)務的方法,就演變成了用一個可變的基礎結(jié)構(gòu),能夠根據(jù)運行狀況自主改變執(zhí)行結(jié)構(gòu),實現(xiàn)功能性能與運算負載相匹配的計算方式。從理論上說,這種體系結(jié)構(gòu)能夠保證計算的高效能。
傳統(tǒng)的固定結(jié)構(gòu)以及業(yè)務承載情況是:上層有網(wǎng)銀、即時通訊、游戲、電子商務、社交網(wǎng)絡、個性化服務等所謂各種云業(yè)務的應用;中間有安全、管理中間件、工具鏈、操作系統(tǒng)、驅(qū)動等;下層是我們傳統(tǒng)的基礎設施,中央處理器、各種存儲器、輸入輸出設備等。
傳統(tǒng)結(jié)構(gòu)的計算機系統(tǒng)就是一個固定結(jié)構(gòu),通過層層虛擬,實現(xiàn)上層的虛擬功能。如果把它變成可變結(jié)構(gòu),就要從云應用層面上傳遞出有效的信息,通過中間件層面的感知和驅(qū)動,實現(xiàn)基礎設施層面上的計算結(jié)構(gòu)變化。
這個結(jié)構(gòu)變化是根據(jù)系統(tǒng)的運營情況來選擇決定的。當然,它的變化還從傳統(tǒng)OS轉(zhuǎn)變成為云OS。通過這種感知和認知來完成底層基礎設施的改變,降低虛擬層次的級數(shù),提高了整個系統(tǒng)的執(zhí)行效能。
任何一個需要計算的問題一定存在一個計算該問題的最優(yōu)體系結(jié)構(gòu)。因此,無論是硬件計算還是軟件計算,是通用計算還是專用計算,或者是通、;蜍、硬結(jié)合的混合計算,都相應地要有一個確定的體系結(jié)構(gòu)來解決不同的問題,這應該是一種最佳的方式。
對于傳統(tǒng)的CPU作業(yè)方式,通過軟件算法改變(即用迭代合成的虛擬(程序)方式實現(xiàn)的算法)能夠計算任何可計算的問題。另外一種情況,如果用硬件邏輯,即所謂專用機模式,它也是一個確定結(jié)構(gòu),面向某個應用領域或應用課題有一個確定的算法,同樣也能高效地解決確定的問題。但隨著對象的改變,完全用通用或完全用專用都難以達到高效能。所以,在通用里面加了硬件加速,在專用里面嵌入CPU,通、專結(jié)合,又有了新的結(jié)構(gòu)。但是這些方式都面臨一個問題,它最終仍然解決不了多元化的服務和多元化的質(zhì)量保證以及效能問題。我們期望的是:計算基礎結(jié)構(gòu)可變,算法也可變,又能逼近對不同問題有最優(yōu)效能解這樣的目標。
那么,什么是最優(yōu)效能解呢?簡而言之,就是具有可重構(gòu)、可重組、可重配置的特點,追求不同服務和不同負載等狀態(tài)下的綜合高效能,構(gòu)建最合適的處理部件,形成最合適的體系結(jié)構(gòu),實現(xiàn)計算構(gòu)件的可重組(recombine),互聯(lián)拓撲的可重構(gòu)(reconfiguration),計算環(huán)境的可重建(rebuild),這就是所謂Cubic—R,或者說R3結(jié)構(gòu)。一個能針對不同的問題采用不同的基礎結(jié)構(gòu),來高效運行的體系結(jié)構(gòu)。
迄今為止,在傳統(tǒng)計算機上的解題一般可以看成是“削足適履”的行為,如果能把它改革成“制履適足”的行為,將是一個根本性的轉(zhuǎn)變?芍貥(gòu)體系的核心理念,就是研究和建立最合適的計算模型,使用和構(gòu)建最合適的處理部件,設計和匹配最合適的體系結(jié)構(gòu),追求和逼近最理想的綜合效能。其思想應當能夠同時體現(xiàn)在系統(tǒng)級、部件級和器件級三個層面上。在器件級上有可重構(gòu)的邏輯電路,有專用處理的硬核也有通用處理的軟核;在部件級上有可重構(gòu)的器件組態(tài),有專用處理器件也有通用處理器件;在系統(tǒng)級有可重構(gòu)的設備,有專用處理設備和通用處理設備。
盡管可重構(gòu)概念的提出至今已有40多年的歷史,然而從來就沒有出現(xiàn)過像今天這樣擁有如此雄厚實現(xiàn)物質(zhì)基礎的時期。在海量晶體管時代,它們除了用作多核和眾核外別無它途,事實上世間大多數(shù)應用問題,并不能僅靠大量的眾核或多核處理器的堆砌執(zhí)行就能高效解決;谡J知的主動重構(gòu)體系,是為了解決云計算與現(xiàn)有體系結(jié)構(gòu)之間存在的矛盾而提出的創(chuàng)新的云計算體系,它包括業(yè)務感知、應用抽象、資源、管理等,核心是具有主動重構(gòu)的高效計算系統(tǒng),這就是包含了通用結(jié)構(gòu)和專用結(jié)構(gòu)的ARC3結(jié)構(gòu)。
我們相信,這場由云計算推動的計算技術(shù)體系的革命,必將發(fā)展出巨大的可重構(gòu)云計算創(chuàng)新產(chǎn)業(yè)鏈,從器件到部件、從軟件到硬件、從設備到系統(tǒng)等諸多方面都存在巨大的成長空間和難得的產(chǎn)業(yè)機遇。
簡介:
鄔江興,中國工程院院士,解放軍信息工程大學校長,國家數(shù)字交換系統(tǒng)工程技術(shù)研究中心主任,博士生導師。國家863計劃十五周年有突出貢獻先進工作者,國家863計劃“十一五”信息技術(shù)領域?qū)<医M副組長。
CTI論壇編輯