來源:科學(xué)大院? 欒春陽
每當(dāng)新款的智能手機(jī)或者家用電腦發(fā)布時(shí),人們討論最多的話題總是離不開中央處理器(CPU)的運(yùn)算性能以及散熱問題??赡芪覀儾⒉磺宄?a class="article-link" target="_blank" href="/tag/%E7%94%B5%E5%AD%90%E8%AE%BE%E5%A4%87/">電子設(shè)備的CPU內(nèi)部具體的計(jì)算架構(gòu),但卻可以真切地感受到CPU運(yùn)算能力的提升給我們生活、工作帶來的巨大改變。
實(shí)際上,小到我們中學(xué)時(shí)期經(jīng)常使用的科學(xué)計(jì)算器,大到現(xiàn)在日常辦公必備的筆記本電腦,這些具備數(shù)據(jù)處理能力的電子設(shè)備都可以統(tǒng)稱為電子計(jì)算機(jī)。那么,在經(jīng)典計(jì)算機(jī)的基礎(chǔ)上,有沒有更快、更強(qiáng)的計(jì)算機(jī)呢?
“0”與“1”組成的奇妙世界
當(dāng)我們每次按下手機(jī)按鍵或者電腦鍵盤的時(shí)候,這些字符或者信息首先需要被轉(zhuǎn)化為電子計(jì)算機(jī)能夠處理的編碼:0或者1的排列組合。
例如,根據(jù)ASCII(American Standard Code for Information Interchange,美國信息互換標(biāo)準(zhǔn)代碼)的字符編碼,英文字母K被編碼為“01001011”。而當(dāng)經(jīng)過電子計(jì)算機(jī)CPU的運(yùn)算處理后,一串0或1編碼的信息又可以轉(zhuǎn)化成我們認(rèn)識(shí)的字母或者圖片呈現(xiàn)在眼前。
在電子計(jì)算機(jī)的CPU中,電子晶體管可以作為0或者1進(jìn)行數(shù)值運(yùn)算的基本單元,此時(shí)電子晶體管的通路可以代表數(shù)值1,斷路就代表數(shù)值0,而當(dāng)數(shù)以百萬計(jì)的電子晶體管及其他電子元件通過超大規(guī)模集成電路工藝被封裝在一小塊半導(dǎo)體晶片上時(shí),這種具備數(shù)據(jù)處理能力并且被微型封裝的集成電路一般簡(jiǎn)稱為“芯片”。
16核不夠用?那就再多“億”點(diǎn)!
然而,隨著生活和工作中數(shù)據(jù)處理任務(wù)的不斷增加,電子設(shè)備上CPU單一核心的運(yùn)算能力往往很難達(dá)到需求,這時(shí)候我們可以在CPU上集成多個(gè)運(yùn)算核心,從而保證多個(gè)核心可以同時(shí)獨(dú)立地處理數(shù)據(jù)任務(wù)?,F(xiàn)在常見的商用計(jì)算機(jī)一般是采用8核CPU,甚至某些用以處理大型計(jì)算任務(wù)的工作站會(huì)擁有16核CPU。
但即使這樣高性能的計(jì)算機(jī)也難以滿足越來越復(fù)雜的計(jì)算需求,以我們常見的天氣預(yù)報(bào)為例,計(jì)算機(jī)需要將特定區(qū)域的大氣層離散成網(wǎng)格進(jìn)行數(shù)值模擬,而如果要達(dá)到對(duì)未來3天的準(zhǔn)確度達(dá)到90%以上的氣象預(yù)測(cè),則需要高達(dá)百億量級(jí)的浮點(diǎn)運(yùn)算,如果普通商用計(jì)算機(jī)來計(jì)算的話,需要耗時(shí)至少半個(gè)月。
此外,大數(shù)據(jù)中心支持下的城市智能交通和在線云端計(jì)算都需要指數(shù)量級(jí)的數(shù)據(jù)處理能力,于是,人們開始著手將高達(dá)數(shù)百萬的CPU互聯(lián)起來協(xié)同工作,從而建造能夠并行計(jì)算的“超級(jí)計(jì)算機(jī)”。
實(shí)際上,“超級(jí)計(jì)算機(jī)”并非單獨(dú)一臺(tái)擁有超級(jí)算力的計(jì)算機(jī),而是超級(jí)計(jì)算機(jī)集群的簡(jiǎn)稱。也就是說,超級(jí)計(jì)算機(jī)集群的每個(gè)節(jié)點(diǎn)都是一臺(tái)獨(dú)立的計(jì)算機(jī),它的“超級(jí)”之處在于自己內(nèi)部存在獨(dú)特的節(jié)點(diǎn)互聯(lián)的結(jié)構(gòu),這樣就可以同時(shí)調(diào)度所有節(jié)點(diǎn)上的成千上萬顆CPU,并且每顆CPU內(nèi)一般有幾十個(gè)物理核心,從而擁有指數(shù)量級(jí)的數(shù)據(jù)處理能力。
但是,“超級(jí)計(jì)算機(jī)”并非全能型選手,它只對(duì)可并行運(yùn)算的算法問題有強(qiáng)大的處理能力,卻無法加速處理串行計(jì)算的數(shù)據(jù)任務(wù),此外,“超級(jí)計(jì)算機(jī)”操作系統(tǒng)的任務(wù)調(diào)度策略和編譯器的優(yōu)化也極大影響了自身的性能表現(xiàn)。
這里的串行/并行運(yùn)算任務(wù)可以這樣通俗地理解:一堆土方原本需要1個(gè)人用10小時(shí)搬運(yùn)完,同時(shí)也可以安排10個(gè)人用1小時(shí)搬完。但是,如果遇到需要1個(gè)人花10小時(shí)挖一口只能容納一人進(jìn)行作業(yè)的井情況,就無法安排10個(gè)人在1小時(shí)內(nèi)完成,這就是“超級(jí)計(jì)算機(jī)”也難以高效處理的串行運(yùn)算任務(wù)。
因此,“超級(jí)計(jì)算機(jī)”并不是簡(jiǎn)單的CPU和運(yùn)算核心的堆疊,其加速運(yùn)算能力不僅僅依靠CPU核心之間的高度協(xié)同互聯(lián),還要優(yōu)化數(shù)據(jù)處理任務(wù)的算法次序來充分調(diào)用每一顆CPU的運(yùn)算潛能。
我們熟知的“神威·太湖之光”超級(jí)計(jì)算機(jī)共有40960顆CPU,并且其峰值的運(yùn)算速度達(dá)到了12.54億億次/秒,并且持續(xù)計(jì)算的速度達(dá)到了9.3億億次/秒?!吧裢ぬ狻背?jí)計(jì)算機(jī)助力清華大學(xué)、北師大以及中科院團(tuán)隊(duì)完成“全球大氣非靜力云分辨模擬”,并實(shí)現(xiàn)了全球10公里高分辨率的地球系統(tǒng)數(shù)值模擬,這一研究成果進(jìn)一步增強(qiáng)了我國應(yīng)對(duì)復(fù)雜氣象條件下的自然災(zāi)害監(jiān)測(cè)能力。
目前,“超級(jí)計(jì)算機(jī)”廣泛運(yùn)用于醫(yī)藥研發(fā)中的分子動(dòng)力學(xué)模擬,電動(dòng)汽車中的燃料電池設(shè)計(jì),飛行器設(shè)計(jì)中的氣動(dòng)外形優(yōu)化,核聚變領(lǐng)域中的約束裝置邊界穩(wěn)定性計(jì)算,以及原子物理學(xué)中的量子力學(xué)技術(shù)等。
超級(jí)計(jì)算機(jī),亦有局限
但是,“超級(jí)計(jì)算機(jī)”的建造不僅僅需要數(shù)十億元的投入成本,還需要每日高達(dá)數(shù)十萬元的電費(fèi)支出。此外,占據(jù)上千立方米的龐大體積以及復(fù)雜的水冷散熱系統(tǒng)也限制了“超級(jí)計(jì)算機(jī)”的進(jìn)一步發(fā)展。于是,人們開始重新思考如何讓計(jì)算機(jī)在更小的體積和更低的功耗下實(shí)現(xiàn)更強(qiáng)的數(shù)據(jù)運(yùn)算能力。
一個(gè)自然的想法是在同一塊芯片上集成更多的晶體管,曾經(jīng)作為英特爾創(chuàng)始人之一的戈登·摩爾就提出“摩爾定律”,即集成電路上的晶體管數(shù)目每經(jīng)過18~24個(gè)月便會(huì)增加一倍,這樣CPU的數(shù)據(jù)處理能力就會(huì)翻一番。這就是為什么,即使我們現(xiàn)在千元價(jià)位的手機(jī)CPU也比十年前的商用電腦擁有更強(qiáng)的運(yùn)算能力——因?yàn)榫w管密度增加了呀。
但是,“摩爾定律”并不能永遠(yuǎn)維持下去,原因之一是用于芯片微電路加工的光刻工藝已經(jīng)逼近2~3nm的光學(xué)衍射極限,已經(jīng)很難在保證芯片良品率的條件下進(jìn)一步提高晶體管密度。此外,隨著晶體管尺寸的不斷減小,電極間的漏電現(xiàn)象以及巨大的散熱問題,也會(huì)導(dǎo)致芯片的性能失效。
那么,我們?cè)撊绾卧跍p小計(jì)算機(jī)體積和功耗的同時(shí)繼續(xù)提升計(jì)算機(jī)的運(yùn)算能力呢?
當(dāng)計(jì)算機(jī)遇到“量子”
俗話說,遇事不決,量子力學(xué)。如果計(jì)算機(jī)遇到量子力學(xué)的話,這種富有想象力的“量子計(jì)算機(jī)”是否可以憑借量子力學(xué)的魔法來處理需要指數(shù)量級(jí)運(yùn)算能力的復(fù)雜問題呢?
我們知道,經(jīng)典計(jì)算機(jī)采用二進(jìn)制進(jìn)行運(yùn)算,而每一個(gè)計(jì)算的基本單元只能處于0或者1的確定狀態(tài),這種基本的計(jì)算單元也叫作“比特”。但是,這也意味著只能提高芯片上晶體管的密度來增加經(jīng)典計(jì)算機(jī)的“比特”數(shù)目,從而線性提高數(shù)據(jù)的運(yùn)算能力。但是,如果我們使用“量子計(jì)算機(jī)”的話,這個(gè)令人苦惱的問題就可以迎刃而解了。
“量子計(jì)算機(jī)”的基本計(jì)算單元叫作“量子比特”,它可以同時(shí)概率性地處在0或者1的狀態(tài),也就是說,一個(gè)有N個(gè)“量子比特”的“量子計(jì)算機(jī)”可以同時(shí)處于2的N次方種可能的狀態(tài),而2的N次方會(huì)隨著N的增大呈現(xiàn)出指數(shù)量級(jí)的增長(zhǎng),從而可以擁有指數(shù)量級(jí)的強(qiáng)大運(yùn)算能力。
試想一下,如果我們擁有這樣奇特的“量子比特”,那么1個(gè)“量子比特”可以充當(dāng)2個(gè)運(yùn)算單元,10個(gè)“量子比特”就可以充當(dāng)1024個(gè)運(yùn)算單元,而100個(gè)“量子比特”竟然可以充當(dāng)大約1.27的30次方個(gè)運(yùn)算單元……如此,我們就可以用極少數(shù)“量子比特”的“量子計(jì)算機(jī)”來打敗需要指數(shù)量級(jí)的運(yùn)算問題的魔法。
薛定諤的貓——感受“量子疊加性”的魅力
幸運(yùn)的是,量子力學(xué)中的“量子疊加性”為我們提供了這種神奇的魔力,而“量子疊加性”顧名思義就是一個(gè)量子系統(tǒng)在被測(cè)量之前,能夠同時(shí)處于多種狀態(tài)的疊加。
(圖片來源:Veer圖庫)
例如,我們假設(shè)一只貓被封閉在一個(gè)無法被外界觀測(cè)的盒子中,并且盒子中同時(shí)存在一套能夠觸發(fā)劇毒氣體釋放的開關(guān)裝置,而開關(guān)觸發(fā)的條件是接收到放射性同位素衰變釋放的信號(hào)。這樣的話,放射性同位素衰變就會(huì)觸發(fā)毒氣開關(guān)從而毒死小貓,而未衰變的話小貓則會(huì)存活。
然而,由于放射性同位素衰變是概率性的(假設(shè)是50%的概率),這也就意味著在未打開盒子來觀測(cè)前,小貓的生死也是一種概率性的疊加。此時(shí),我們發(fā)現(xiàn)沒有一種確定性的方式來描述小貓的狀態(tài),因?yàn)椤靶∝埢钪焙汀靶∝埶劳觥边@兩個(gè)事件的發(fā)生依賴于放射性同位素是否衰變。也就是說,小貓理論上有50%的概率仍然活著,同時(shí)有50%的概率已經(jīng)死亡。因此,小貓?zhí)幱凇靶∝埢钪焙汀靶∝埶劳觥钡寞B加態(tài),并且兩個(gè)狀態(tài)存在的概率都是50%,這就是大名鼎鼎的“薛定諤的貓”的思想實(shí)驗(yàn)。
當(dāng)然,一旦盒子被打開觀測(cè)后,小貓的狀態(tài)就會(huì)被唯一確定在“小貓活著”或者“小貓死亡”,這也就表明量子力學(xué)中的這種“量子疊加態(tài)”在被觀測(cè)后就立即塌縮到確定的狀態(tài)。
量子計(jì)算機(jī)的基本運(yùn)算單元——量子比特
對(duì)于經(jīng)典計(jì)算機(jī)而言,每一個(gè)代表基本計(jì)算單元的“比特”是通過芯片上集成的單個(gè)晶體管的開關(guān)實(shí)現(xiàn)的,當(dāng)晶體管導(dǎo)通時(shí)就可以表示1態(tài),斷路時(shí)則表示0態(tài)。類似的,“量子計(jì)算機(jī)”也需要找到一個(gè)合適的物理載體作為“量子比特”,從而在現(xiàn)實(shí)世界中發(fā)揮“量子疊加性”的魔力。所不同的是,這種物理載體需要在計(jì)算過程中保持1態(tài)和0態(tài)的疊加性,而如何在現(xiàn)實(shí)世界中找到這種神奇的“量子比特”一直是科學(xué)家們孜孜以求的目標(biāo)。
功夫不負(fù)有心人,科學(xué)家終于在自然界中找到了能夠同時(shí)保持1態(tài)和0態(tài)的疊加性的物理載體。這種物理載體不是別人,正是我們中學(xué)就認(rèn)識(shí)的老朋友——帶電離子。
帶電離子有兩個(gè)重要的特性,第一個(gè)就是它本身帶有電荷,我們可以通過“電場(chǎng)-磁場(chǎng)”的物理手段來捕獲任意數(shù)目的帶電離子。第二個(gè)是根據(jù)量子力學(xué)理論,帶電離子的能量是分立的,也就是說同一種帶電離子內(nèi)部的能量是具有順序級(jí)別的,就像行星公轉(zhuǎn)的軌道一樣,這種能量排序方式叫作能級(jí)結(jié)構(gòu)。
科學(xué)研究發(fā)現(xiàn),在這種獨(dú)特的分立能級(jí)結(jié)構(gòu)中,可以選取特定的二能級(jí)來構(gòu)造“量子比特”。其中,能量較高的能級(jí)可以表示1態(tài),而較低的能級(jí)可以表示0態(tài),這樣的話,二能級(jí)之間的概率性的躍遷就可以表示1和0的疊加態(tài)。這種用自然界中的帶電離子編碼稱為“量子比特”,這種進(jìn)行量子計(jì)算的方式就叫作“離子阱”。
隨著技術(shù)的不斷進(jìn)步,人們也開始嘗試用人造的物理系統(tǒng)來編碼“量子比特”。研究發(fā)現(xiàn),當(dāng)光刻工藝制備的電子線路冷卻到接近0.015K的時(shí)候,它就能表現(xiàn)出與帶電離子類似的分立能級(jí),而這種人造的二能級(jí)物理系統(tǒng)也被稱為“超導(dǎo)量子比特”。這種“超導(dǎo)量子比特”的優(yōu)勢(shì)在于它能夠與現(xiàn)代的集成電路工藝相兼容,因此受到了工業(yè)界的廣泛關(guān)注。
但是,它也需要低于0.015K的極低溫環(huán)境——比絕對(duì)零度高一點(diǎn)點(diǎn),比外太空還冷,這就需要一臺(tái)超級(jí)“冰箱”來提供極低溫的環(huán)境。而且,每一個(gè)人造的“超導(dǎo)量子比特”不可能完全一致,這就對(duì)校準(zhǔn)的精細(xì)度以及控制的準(zhǔn)確性提出了更高的要求。
除此之外,還有中性原子、光量子、量子點(diǎn)以及更加富有想象力的拓?fù)淞孔拥任锢眢w系也被相繼提出用來作為“量子比特”,目前而言,“離子阱”和“超導(dǎo)量子比特”仍然是被科學(xué)家視為實(shí)現(xiàn)量子計(jì)算的有力候選者。
理論照進(jìn)現(xiàn)實(shí)——量子計(jì)算機(jī)問世!
科學(xué)家估計(jì)當(dāng)N≧50時(shí),量子計(jì)算機(jī)將擁有高達(dá)2的50次方的運(yùn)算能力,這會(huì)超越所有經(jīng)典計(jì)算機(jī)的極限。也就是說,在處理某些特定的計(jì)算問題上,量子計(jì)算機(jī)會(huì)表現(xiàn)出超過經(jīng)典計(jì)算機(jī)的“量子優(yōu)越性”或者“量子霸權(quán)”。
而在2019年,一臺(tái)基于“超導(dǎo)量子計(jì)算”方案并且擁有53個(gè)量子比特的處理器突然問世,它在一項(xiàng)針對(duì)特定的隨機(jī)數(shù)字的采樣任務(wù)中僅僅花費(fèi)了200秒左右的時(shí)間,而這個(gè)計(jì)算問題即使用當(dāng)時(shí)最強(qiáng)的超級(jí)計(jì)算機(jī)也需要大約1萬年的時(shí)間。這種指數(shù)級(jí)別的計(jì)算能力帶來的不僅僅是運(yùn)算速度的提升,更是對(duì)許多傳統(tǒng)行業(yè)帶來革命性的沖擊。
例如,現(xiàn)代金融業(yè)廣泛采用的公私鑰加密(RSA)算法被認(rèn)為絕對(duì)安全,是因?yàn)榧词褂米顝?qiáng)的超級(jí)計(jì)算機(jī)來破解密碼也需要大約80年的時(shí)間,而量子計(jì)算機(jī)卻可以憑借其指數(shù)級(jí)別的運(yùn)算能力,只用大約8個(gè)小時(shí)就可以暴力破解,這也就意味著基于傳統(tǒng)密碼學(xué)的現(xiàn)代加密體系將面臨量子計(jì)算機(jī)帶來的巨大沖擊。
量子模擬——為特定問題提供“私人訂制”
值得注意的是,“量子計(jì)算機(jī)”只對(duì)某些量子算法展現(xiàn)出高效的運(yùn)算能力,并不能替代經(jīng)典計(jì)算機(jī)來處理日常的辦公任務(wù)。此外,“量子比特”自身的量子疊加性也極容易受到外界干擾而丟失,距離能夠最終實(shí)現(xiàn)大規(guī)模容錯(cuò)的量子計(jì)算機(jī)還有很長(zhǎng)的路要走。
但是,在最終實(shí)現(xiàn)通用的“量子計(jì)算機(jī)”之前,我們?nèi)匀豢梢詷?gòu)造出處理特定計(jì)算問題的專用機(jī)器,這種現(xiàn)階段專用的量子計(jì)算機(jī)我們一般稱之為“量子模擬器”,或者簡(jiǎn)稱為“量子模擬”。
其實(shí),能夠處理特定計(jì)算的專用機(jī)器離我們并不遙遠(yuǎn),飛行器設(shè)計(jì)中使用的大型風(fēng)洞就是一個(gè)有趣的例子。以飛行器設(shè)計(jì)中的氣動(dòng)外形優(yōu)化設(shè)計(jì)為例,經(jīng)典意義上的計(jì)算機(jī)模擬需要將飛行器和附近的氣流進(jìn)行網(wǎng)格化離散,并且計(jì)算出每一塊網(wǎng)格的受力分析和運(yùn)動(dòng)狀態(tài),最終將所有的計(jì)算網(wǎng)格整合得到飛行器整體的氣動(dòng)數(shù)據(jù)。
為了達(dá)到足夠小的網(wǎng)格精度,往往需要“超級(jí)計(jì)算機(jī)”的算力來實(shí)現(xiàn)短時(shí)間的數(shù)據(jù)運(yùn)算,而進(jìn)一步無限的離散網(wǎng)格化分析則是不可能實(shí)現(xiàn)的事情。為了解決這個(gè)計(jì)算問題,一般采用飛行器等比例縮小的模型在大型風(fēng)洞中直接進(jìn)行風(fēng)洞模擬實(shí)驗(yàn),用以直觀地驗(yàn)證飛行器的氣動(dòng)外形的可靠性等。
其實(shí),此時(shí)的大型風(fēng)洞本身就是一臺(tái)計(jì)算機(jī),只要我們輸入不同的氣動(dòng)參數(shù)就可以直觀地得到飛行器模擬的受力和運(yùn)動(dòng)狀態(tài),只是這種“風(fēng)洞計(jì)算機(jī)”并不是我們印象中的計(jì)算機(jī),但是它卻在飛行器設(shè)計(jì)的特定算法任務(wù)中表現(xiàn)出遠(yuǎn)超經(jīng)典計(jì)算機(jī)的能力。
這種奇妙的想法也驅(qū)使著科學(xué)家們開始重新審視某些原本極度復(fù)雜的計(jì)算問題,比如藥物反應(yīng)過程的分子動(dòng)力學(xué)模擬,黑洞碰撞時(shí)的相對(duì)論模擬,以及核聚變過程中的電子逃逸問題等。
其實(shí)早在1982年,物理學(xué)家理查德·費(fèi)曼就提出:“量子力學(xué)中所需的計(jì)算資源隨著粒子數(shù)目的增加呈指數(shù)增長(zhǎng),而最好的方式就是用另外一個(gè)更加可控的量子系統(tǒng)來模擬計(jì)算原本復(fù)雜的量子系統(tǒng)?!?/p>
簡(jiǎn)單而言,針對(duì)一些需要指數(shù)級(jí)運(yùn)算需求的計(jì)算問題,我們不應(yīng)該再用經(jīng)典的0和1的計(jì)算方式進(jìn)行求解,而是應(yīng)該找到另外一個(gè)簡(jiǎn)單可控的物理系統(tǒng),來對(duì)原本復(fù)雜的問題進(jìn)行等價(jià)的模擬,從而避免計(jì)算資源的巨大浪費(fèi),這就是“量子模擬”的基本出發(fā)點(diǎn)。
因此也可以這樣說,“量子計(jì)算機(jī)”也是一種廣義的量子模擬系統(tǒng),只是“量子計(jì)算機(jī)”利用了量子疊加態(tài)的并行運(yùn)算特性,并且通過“量子比特”和系列的量子邏輯門操作,實(shí)現(xiàn)了指數(shù)量級(jí)的數(shù)據(jù)運(yùn)算能力。而“量子模擬器”屬于狹義的量子模擬系統(tǒng),它通過構(gòu)造與目標(biāo)系統(tǒng)等效的物理模型,能夠以一種簡(jiǎn)單可控的方式來完成對(duì)特定復(fù)雜的量子系統(tǒng)的模擬。
因此,可以總結(jié)說,“超級(jí)計(jì)算機(jī)”是經(jīng)典計(jì)算機(jī)的資源優(yōu)化和整合,“量子計(jì)算機(jī)”則是利用了量子力學(xué)中全新的計(jì)算方式,屬于一種面對(duì)未來的通用計(jì)算機(jī)器,而“量子模擬”也是利用量子力學(xué)全新的計(jì)算方式,卻是能夠在現(xiàn)階段針對(duì)特定問題進(jìn)行模擬的專用計(jì)算機(jī)器。
但是,后兩者的出現(xiàn)都告訴人們一個(gè)令人激動(dòng)的事實(shí)——量子的時(shí)代正在悄然降臨,它將以一種前所未有的方式深刻地改變?nèi)藗兾磥淼纳a(chǎn)和生活方式。這種改變是難以想象的,正如19世紀(jì)的人們使用算盤之類的機(jī)械計(jì)算機(jī)器時(shí),無法想象電子計(jì)算機(jī)蘊(yùn)含的運(yùn)算能力徹底顛覆了信息交互的方式。
大家不妨?xí)诚胛磥?,在量子?jì)算機(jī)強(qiáng)大的指數(shù)計(jì)算能力的加持下,我們的世界又會(huì)有怎樣翻天覆地的改變呢?