Dharmendra S. Modha,IBM公司SyNAPSE項目首席研究員及認知計算項目高級經理
60年前,IBM工程師John Backus不顧諸多質疑,開始通過編程來顯著降低IBM 704的成本并且提高速度及可靠性,以便從根本上提高在該產品上開展科學計算的經濟性。他和同事一起開發的語言——FORTRAN ——最終成為率先得到廣泛部署的首個高級編程語言。眾所周知,FORTRAN在工業、科學、政府和社交等多個領域掀起計算轉型熱潮,給軟件行業的發展奠定了堅實基礎。FORTRAN的重要性很難高估,這一點可從O’Reilly的“編程語言發展史”海報中得到證實。
今天,信息技術行業走到了歷史上的另一個轉折點。Backus及其同事幫助創建的“可編程計算時代”正在被認知計算時代所取代。漸漸地,計算機將能夠收集大量數據、解釋數據、并且能夠從信息及用戶互動中獲得洞察。從如何管理城市、直到如何解決復雜的業務問題,這些新功能將幫助我們深入洞悉世間萬物的復雜性并且做出更加明智的決策。
但是,要想認知計算真正發揮作用,科學家們幾乎需要對整個計算行業進行全方位改造——硅、系統、存儲器和軟件。在這個過程中,他們必須開發全新編程模式,就像曾經支撐FORTRAN的編程模式一樣。我可以驕傲的說,在大學院校科研人員的幫助下,IBM SyNAPSE項目組已經在開發此類全新編程模式方面邁出了第一步。我們稱之為corelet編程。
如果您希望詳細了解認知計算時代,請訪問:http://cup.columbia.edu/static/cognitive,登錄到哥倫比亞大學出版社網站下載IBM研究院院長John E. Kelly III所著書籍《Smart Machines》中的免費章節。
我們正在為美國國防部高級研究計劃局出資贊助的多年計劃“SyNAPSE”項目開發這項技術。該計劃旨在創建具有人腦功能及低功率、小體積、結構緊湊等特征的認知處理器芯片和系統,以便運行大量的下一代認知軟件應用。
FORTRAN曾經肩負重要使命;SyNAPSE也是擁有遠大目標的項目。我們一直期待該項目能夠創建出全新計算架構——神經突觸處理器網絡,像人腦一樣具有模塊化、并行化、分布式、容災、由事件驅動及可擴展性等特征。早先,我們曾演示過采用IBM硅技術、作為構建塊存在的單個神經突觸處理器內核。此外,我們還在Lawrence Livermore國家實驗室使用IBM最大規模的超級計算機Sequoia模擬過由數十億個此類神經突觸處理器內核組成的網絡——達到了百兆神經節的人腦規模。
我們的架構從根本上有別于現在普遍使用的計算架構(即馮·諾依曼架構)。要想通過改造讓現在的編程語言適應此類架構,就像試圖將一根方木釘釘進圓孔里一樣。您需要全新編程方法。
進入corelet模式。該模式基于可以復用的代碼構建塊“corelets”對軟件程序進行簡要說明。每個corelet都代表通過在單個神經突觸處理器內核上聯合使用處理器(“神經元”)、內存(“神經節”)和通信組件(“軸突”)及核間連接來完成某些工作的一種方法。每個corelet都會將除外部輸入和輸出以外的所有具體信息隱藏或封裝起來。
Corelets就像樂高積木。小個的corelets負責處理簡單功能。若結合在一起,它們將會構成規模更大的全新corelets。這個corelets不僅匯聚了所有corelets的功能,而且還添加了新功能,同時將作為基本組件的corelets隱藏起來。通過這種方法,程序員將能夠使用現有構建塊編寫大規模的復雜程序。通過使用這個模型以及在這個模型上面執行的編程語言,程序員將能夠相當輕松地編寫出大量的高效代碼,非專家級編程人員也能創建出復雜的認知應用。這與FORTRAN在面市初期對計算世界產生的影響極為相似。
除了新架構和全新編程模型外,我們還創建了能夠代表垂直集成技術生態系統的重要的軟硬件技術—給新計算時代奠定了新基礎。
John Backus的輝煌成就在可編程計算時代的初期大放異彩。然而,隨著John繼續深入研究,他開始意識到數學家約翰·馮·諾伊曼在20世紀40年代創建的計算機架構存在一些局限性 — 而他的編程模型,實際上包括所有的現代化計算,都是以此為基礎的。在久負盛名的1977年“圖靈獎”頒獎典禮上,John自創出“馮諾依曼瓶頸”一詞來描述這個架構的缺陷。1979年,他這樣寫到,“我注意到所有的傳統語言(FORTRAN、ALGOL、它們的接替品和衍生品)都因為受到馮諾依曼計算機編程風格的影響而變得越來越復雜。遺憾的是,由于長期建立的熟悉性,我們將很難去了解和采用有朝一日能夠顯著提高智力和計算能力的全新編程風格”。(John逝于2007年,享年82歲。)
今天,全世界都已開始通過跨學科合作來開發全新的非馮·諾依曼計算架構,以便補充當今的計算機能力。這對認知計算的出現起到了至關重要的作用。我們所提供的架構和corelet編程模型也給這項成就貢獻了重要力量。最終,時間將會證明我們的發明創造能否像曾經的John Backus及其工作團隊那樣對于這個計算新時代發揮相同的催化作用。但是,預測未來的最佳方式是創建未來。