2013諾貝爾物理學(xué)獎背后的計算機(jī)技術(shù)
近日在《量子雜志》上刊登了一篇文章,講述了量子物理學(xué)研究的過程中,各種計算機(jī)技術(shù)的變遷,作者是物理學(xué)的專欄作家,文中并沒有談及專業(yè)的計算機(jī)技術(shù)細(xì)節(jié),但也提供給我們一個新的視角去看待近年來計算機(jī)技術(shù)的發(fā)展。以下為譯文:
2013年諾貝爾物理學(xué)獎10月8日在瑞典揭曉, 比利時理論物理學(xué)家Fran?ois Englert和英國理論物理學(xué)家Peter W. Higgs因希格斯玻色子的理論預(yù)言獲獎,2012年這一預(yù)言在位于瑞士的CERN(歐洲核子中心)粒子物理實驗室中得到了證實。
在CERN的 LHC(大型強(qiáng)子對撞機(jī))中,亞原子顆粒不停高速碰撞,產(chǎn)生新的粒子,四個監(jiān)視器在持續(xù)記錄這些粒子的情況,每秒產(chǎn)生的數(shù)據(jù)量高達(dá)5TB,相當(dāng)于全球圖書館數(shù)據(jù)量的總和。這些數(shù)據(jù)被濾波算法處理后,99%以上的數(shù)據(jù)都被過濾掉了,但是每年這個系統(tǒng)需要存儲和處理的數(shù)據(jù)仍然高達(dá)25PB。研究組正是在這數(shù)以十億計的粒子對撞結(jié)果中提取到了希格斯粒子存在的證據(jù)。支撐這些數(shù)據(jù)計算的是遍布全球的160個數(shù)據(jù)中心,這個分布式網(wǎng)絡(luò)的數(shù)據(jù)傳輸速率***可達(dá)10GB/S。LHC解決大數(shù)據(jù)問題的方法反映了近十年來計算本質(zhì)的戲劇性變化。
從摩爾定律到多核技術(shù)
摩爾定律自1965年被Intel聯(lián)合創(chuàng)始人Gordon E. Moore提出以來,就一直主導(dǎo)著計算機(jī)產(chǎn)業(yè)。根據(jù)摩爾定律,集成電路中的晶體管數(shù)量每隔兩年會增加一倍,然而目前看來,這個速度是***彈性的。麻省理工學(xué)院理論計算機(jī)科學(xué)家 Scott Aaronson認(rèn)為“摩爾定律已經(jīng)基本失效”。
自2005年以來,許多計算能力的增長都來自多核技術(shù)帶來的并發(fā)性上。更快的處理器固然重要,但已不再居首位。斯坦福大學(xué)電氣工程師 Stephen Boyd認(rèn)為“5年來,處理器速度對于計算能力的提高已經(jīng)不多了,解決問題的挑戰(zhàn)并不在于如何利用一個超快的處理器,而是如何整合10萬個較慢的處理器”。Aaronson指出簡單地增加并行處理并不能充分解決大數(shù)據(jù)問題,這些問題更連續(xù),有時可以分割成小任務(wù)分配給多個處理器,有時很難做到分割,并且這些處理器也很難得到充分利用。好比是20個人完成一項工作,通常情況下并不能達(dá)到20倍的速度。
數(shù)據(jù)傳輸?shù)膯栴}
研究人員在集成不同架構(gòu)的數(shù)據(jù)集時也面臨著挑戰(zhàn),同時在一個高度分布式的網(wǎng)絡(luò)中有效傳輸數(shù)據(jù)也面臨巨大困難。隨著數(shù)據(jù)集的規(guī)模和復(fù)雜性不斷增長,這個問題會變得愈發(fā)明顯。據(jù)加州科技學(xué)會物理學(xué)家 Harvey Newman(他的團(tuán)隊開發(fā)了LHC的網(wǎng)格數(shù)據(jù)中心和橫跨大西洋的網(wǎng)絡(luò)系統(tǒng))。他估計照目前的形勢發(fā)展,LHC數(shù)據(jù)處理系統(tǒng)的計算能力將不能再滿足需求,甚至需要重新設(shè)計。
內(nèi)存與數(shù)據(jù)傳輸
數(shù)據(jù)傳輸有時比處理延時更耗時,Aaronson說:“計算機(jī)運(yùn)行慢的原因不一定是微處理器的問題,還有可能是微處理器在等從磁盤傳來的數(shù)據(jù)。”大數(shù)據(jù)研究人員更喜歡數(shù)據(jù)傳輸時間盡可能的少,因為存儲在分布式網(wǎng)絡(luò)或云端的數(shù)據(jù)會使情況惡化。
分布式計算
解決這個問題的方案之一是使用新的模式:除了存儲,分析數(shù)據(jù)也采用分布式的方法。LHC的方案就類似于這種模式,對撞機(jī)中的產(chǎn)生的原始數(shù)據(jù)被存儲在瑞士的CERN研究設(shè)備中,另外還有一份備份數(shù)據(jù)被按批量劃分并分布到世界各地的數(shù)據(jù)中心。每個數(shù)據(jù)中心對各自的數(shù)據(jù)塊進(jìn)行處理,然后在處理下一批數(shù)據(jù)前,將處理結(jié)果發(fā)送給各地區(qū)的計算機(jī)。
Boyd的系統(tǒng)基于所謂的 一致性算法,他介紹說:“這是一個數(shù)學(xué)優(yōu)化問題,用以前的數(shù)據(jù)‘教育’這個系統(tǒng)來處理未來的數(shù)據(jù)。”這個算法在SPAM過濾器中也得到了很好的應(yīng)用。
當(dāng)問題變得太大時,一致性優(yōu)化方法非常有效,數(shù)據(jù)集被分割成塊,分布在1000個“代理”中分別處理,并產(chǎn)生一個數(shù)據(jù)模型。關(guān)鍵是要滿足臨界條件:每個“代理”的模型可以不同,但***這些模型要達(dá)成一致。
在Boyd的系統(tǒng)中,這個過程是迭代的,創(chuàng)建一個反饋環(huán)路,所有的代理會共享初始情況的一致狀態(tài),繼而根據(jù)新的信息更新各自的模型,并達(dá)到新的一致狀態(tài)。這個過程不斷重復(fù),直到所有的代理都達(dá)成一致。采用這種分布優(yōu)化的方法可以顯著減小每次需要傳輸?shù)臄?shù)據(jù)量。
量子計算
去年的納帕谷會議上,MIT的物理學(xué)家 Seth Lloyd引起了Sergey Brin和Larry Page的關(guān)注。在演講中Lloyd提出了一個量子版本的Google搜索引擎,Google在對用戶的搜索關(guān)鍵詞情況下,用戶也可以做查詢和收到結(jié)果。但是第二天Lloyd被告知這個方案和Google的商業(yè)計劃有沖突。Lloyd開玩笑說:“Google想要對他們的每個用戶做到了如指掌”。量子計算機(jī)可以提供強(qiáng)大的處理能力,對于某些復(fù)雜算法可大幅度提高速度。實際上,Google從一家加拿大公司D-Wave以1500萬美元購買了所謂的量子計算機(jī), 雖然這個項目目前也面臨一些問題。
Aaronson認(rèn)為量子計算機(jī)并不是并行地嘗試所有可能的答案,它與并行處理有著本質(zhì)上的不同。普通的計算機(jī)用0或1來存儲數(shù)據(jù),量子計算機(jī)有著更多的狀態(tài)位。比如,拋硬幣的結(jié)果只能是正面朝上或背面朝上。但從技術(shù)上來說,在看到結(jié)果前,量子狀態(tài)下的硬幣正面朝上還是背面朝上是不確定的。
量子學(xué)的宏觀解釋:著名的薛定諤貓
一個真正的量子計算機(jī)可以將信息編碼為所謂的量子比特——同時為0和1的 疊加態(tài)。這樣做可以將處理復(fù)雜問題的時間從幾年縮短到幾秒。這種設(shè)想很美好,實現(xiàn)起來并不容易,尤其是因為這樣一個設(shè)備對外界的干擾非常敏感,輕微的擾動都相當(dāng)于將拋硬幣的結(jié)果“公之于眾”,量子的疊加態(tài)也將消失。
然而,Aaronson認(rèn)為不要對量子計算機(jī)報太大期望,即使量子計算能夠?qū)崿F(xiàn),它們也僅適用于特定的問題。比如,模擬量子力學(xué)系統(tǒng)或用于經(jīng)典密碼學(xué)的密碼破解,然而有一種大數(shù)據(jù)問題是量子計算可以處理的:對大量的無序數(shù)據(jù)集進(jìn)行檢索,例如隨機(jī)排列的電話本。
1996年,貝爾實驗室的 Lov Grover提出了這個問題的量子計算算法,但Aaronson說:“真正實現(xiàn)這個算法時,你需要一個原子內(nèi)存可以在量子疊加態(tài)被訪問,同時保證這種訪問不會破壞量子疊加態(tài)?!?/p>
換而言之,你需要一個量子RAM(A-RAM),Lloyd曾經(jīng)開發(fā)過一個概念原型以及一個用于機(jī)器學(xué)習(xí)的應(yīng)用程序,他稱之為Q-App。他認(rèn)為這個系統(tǒng)可以在不查看個人記錄的情況下,找到數(shù)據(jù)的模式,從而保持原子的疊加態(tài)和用戶的隱私?!翱梢栽谕粫r間高效地訪問這數(shù)億條數(shù)據(jù),實際上你并沒有訪問這些數(shù)據(jù),你只是在訪問它們的共同特征。”
Lloyd認(rèn)為如果擁有一個足夠大的量子RAM,量子計算尤其適用于在大量的數(shù)據(jù)集中找出規(guī)律的機(jī)器學(xué)習(xí)算法,例如確定某個關(guān)鍵字相關(guān)聯(lián)的集群數(shù)據(jù),或擁有共同特性的數(shù)據(jù)塊。
如果構(gòu)建一個存儲了地球上所有人基因的數(shù)據(jù)庫,可以利用Lloyd的量子算法查詢不同基因的共同模式,這個過程中只會訪問一小部分個人數(shù)據(jù),并且耗時很少。隨著人類基因組排序成本下降,以及商業(yè)基因服務(wù)的價格上升,未來很有可能會出現(xiàn)這樣的數(shù)據(jù)庫。假設(shè)一個基因組占60億字節(jié)的話,這可能將是全球***的數(shù)據(jù)集。
數(shù)據(jù)聚合是未來
谷歌的計算機(jī)科學(xué)家 Alon Halevy認(rèn)為大數(shù)據(jù)領(lǐng)域的最重大突破可能將來自于數(shù)據(jù)集成——尤其是跨數(shù)據(jù)集的集成。不管你的計算機(jī)速度有多快,或計算機(jī)集群做得有多好,真正的問題還是來自于數(shù)據(jù)層面。例如,一個原始的數(shù)據(jù)集可能包括成千上萬個遍布全球的表格,看似簡單的全球咖啡生產(chǎn)量查詢操作,后臺整合的復(fù)雜度卻出人意料。
NASA噴氣推進(jìn)實驗室資深計算機(jī)科學(xué)家兼 Apache軟件基金會董事Chris Mattmann就面臨這樣一個復(fù)雜問題,他正在進(jìn)行一項研究項目,整合兩個不同來源的天氣信息:來自衛(wèi)星的氣象遙感信息以及計算機(jī)模擬的天氣模型輸出。IPCC(政府間氣候變化專門委員會)會對這些天氣模型與遙感數(shù)據(jù)進(jìn)行比較,以確定最適合的模型,而這些模型都采用不同類型的數(shù)據(jù)。
許多研究人員強(qiáng)調(diào)有必要開發(fā)靈活的工具處理不同類型的數(shù)據(jù)。Mattmann提到了一個名為Tika的Apache軟件程序,這個程序允許用戶整合1200常用文件類型的數(shù)據(jù),但有時需要一些人工干預(yù)的工作。最終,Mattmann選擇了一個可以整合不同結(jié)構(gòu)數(shù)據(jù)集的完全自動化智能軟件。
跨數(shù)據(jù)集的整合同時也需要一個協(xié)調(diào)性比較好的分布式網(wǎng)路系統(tǒng)。LHC在加州理工學(xué)院的Newman的研究小組負(fù)責(zé)監(jiān)控成千上萬的處理器以及十幾個主要網(wǎng)絡(luò)鏈接。Newsman預(yù)測大數(shù)據(jù)計算的未來在于各智能代理間的互相協(xié)調(diào),在網(wǎng)絡(luò)各個節(jié)點(diǎn)跟蹤數(shù)據(jù)的行為,從而識別瓶頸和調(diào)度處理任務(wù)。每個可能僅僅記錄本地發(fā)生的事情,但是會以這種方式向整個網(wǎng)絡(luò)共享信息。
Newman說:“不同層級中,成千上萬的代理互相協(xié)調(diào),幫助人類理解這個復(fù)雜和分布的系統(tǒng)中正在發(fā)生的事情。”未來這個數(shù)據(jù)量將會更大,當(dāng)這些智能代理達(dá)到數(shù)十億時,將會形成一個巨大的遍布全球的分布式智能實體。