3月25日,在中國科學(xué)院“先導杯”并行計算應用大賽啟動(dòng)會(huì )上,中國工程院院士、大賽專(zhuān)家咨詢(xún)委員會(huì )主席李國杰講述了一件往事。
1987年1月,李國杰從美國學(xué)成歸國,成為中國科學(xué)院計算技術(shù)研究所一名研究員。就在這一年,李國杰受中國科學(xué)院理論物理研究所之邀,專(zhuān)門(mén)去講授一門(mén)課程:并行計算。
李國杰注意到,彭桓武(“兩彈一星”功勛科學(xué)家,時(shí)年72歲)、郝柏林(我國著(zhù)名理論物理學(xué)家,時(shí)年53歲)等老科學(xué)家都坐在臺下聽(tīng)課,一堂不落。
“我深深感受到了老一輩物理學(xué)家當時(shí)對并行計算技術(shù)的渴求?!崩顕苷f(shuō)。
并行計算迎來(lái)黃金時(shí)
“下一個(gè)十年,將出現一個(gè)全新的體系結構的‘寒武紀大爆發(fā)’,學(xué)術(shù)界和工業(yè)界的計算機架構師將迎來(lái)一個(gè)激動(dòng)人心的時(shí)代;而體系結構的改進(jìn)必須和并行算法、并行軟件同步進(jìn)行,而且越是高層的改進(jìn)效率提升越大?!崩顕苷f(shuō),因此,“未來(lái)幾十年一定是并行計算的黃金時(shí)代”。
為什么說(shuō)計算機性能越高、其能解決的問(wèn)題越大,算法的優(yōu)化所帶來(lái)的好處就越大?李國杰舉了一個(gè)例子。
“一個(gè)問(wèn)題的規模為N,假設解決該問(wèn)題一種算法為Alg1,它的計算復雜性是N的平方;另外一個(gè)算法是Alg2,優(yōu)化以后它的計算復雜性是Nlog2N。那么,兩個(gè)算法的性能比值是N/log2N——N越大,性能的差別就越大?!崩顕芨M(jìn)一步說(shuō)明道,“對于只能解決問(wèn)題規模為10的低端計算機,兩個(gè)算法的性能只相差3倍;但是對于能解決問(wèn)題規模達1000的超級計算機,兩者性能就相差100倍?!?nbsp;
“換一個(gè)角度,如果在低性能的單機上兩種算法可解決問(wèn)題的規模相差3倍,則在包含上百萬(wàn)處理器的超級計算機上,兩個(gè)算法可解決問(wèn)題的規模相差上百倍?!崩顕苷f(shuō),因此,計算機性能越高,越需要優(yōu)化算法。
據介紹,此次中國科學(xué)院“先導杯”并行計算應用大賽,就意在凝聚不同領(lǐng)域專(zhuān)業(yè)人才,彌補我們在基礎算法和軟件應用上的不足,建立和完善先進(jìn)計算產(chǎn)業(yè)生態(tài)。
從技術(shù)推動(dòng)轉向應用拉動(dòng)
在分享中李國杰提到,計算機科學(xué)家的思維定勢仍是技術(shù)推動(dòng),而非時(shí)下更為迫切的應用拉動(dòng)。
“過(guò)去,在計算機科學(xué)家的傳統思維邏輯中,他們認為用戶(hù)并不知道需要什么技術(shù);于是計算機科學(xué)家引進(jìn)新的語(yǔ)言、研制新的編譯技術(shù)、創(chuàng )新系統結構來(lái)解決某些并行問(wèn)題,然后將他們自以為‘聰明’的解決方案推送給用戶(hù)。而問(wèn)題是,用戶(hù)并不會(huì )用也不太愿意學(xué)習這些學(xué)者們提供的方法?!?nbsp;
“計算機科學(xué)工作者應當和應用領(lǐng)域專(zhuān)家一起開(kāi)發(fā)關(guān)鍵的并行應用程序?!崩顕苷f(shuō),當前計算機科學(xué)正在融入到其他科學(xué)中。計算機科學(xué)中的概念、定理、方法正在發(fā)展成為更寬廣領(lǐng)域,特別是生物和化學(xué)領(lǐng)域的基本工具,這些工具將集成到整個(gè)科學(xué)的織網(wǎng)中。
“現在新的科研途徑就是應用拉動(dòng)的,即所謂top-down研究方式,計算機科學(xué)工作者應當和應用領(lǐng)域專(zhuān)家一起開(kāi)發(fā)關(guān)鍵的并行應用程序?!崩顕苷f(shuō),計算機科學(xué)家與其他領(lǐng)域的科學(xué)家密切合作,已成為當代科學(xué)研究的特點(diǎn)。
他指出,其他領(lǐng)域的學(xué)者運用普遍流行的算法和軟件會(huì )解決一些局部性的問(wèn)題、獲得一些漸進(jìn)性的改進(jìn),但要獲得算法上的根本性突破,需要與真正懂算法的計算機科學(xué)家深度合作。
“為解決腦科學(xué)的解剖成像等問(wèn)題,一些腦科學(xué)家這幾年一直和我的一個(gè)老朋友——中國工程院的外籍院士、普林斯頓大學(xué)計算機科學(xué)系講席教授李凱合作。這些腦科學(xué)家用傳統的技術(shù)重構老鼠的大腦需要7000年,現在通過(guò)他的新算法、新模型,數據分析時(shí)間縮短了20萬(wàn)倍?!崩顕苷f(shuō)。
并行計算仍面臨不少挑戰
在分享的最后,李國杰提出,盡管并行計算大行其道,但“并行計算并不是萬(wàn)能藥”。
他提出,目前,智能計算、大數據計算主要是靠并行處理,不但GPU給人的希望是大規模并行,量子計算、生物計算等的威力也是并行處理?!安⑿杏嬎汶m然有很強大的功能、效率,但是它也不是萬(wàn)能的?!?nbsp;
“30多年前,我在美國讀博士的時(shí)候,就在我的博士論文中作出這樣的結論——并行處理只能夠提高串行計算可求解問(wèn)題的計算效率,不能用來(lái)擴大求解指數負載性問(wèn)題的規模?!崩顕芙忉尩?,也就是說(shuō),如果某個(gè)問(wèn)題是指數復雜性問(wèn)題,僅僅采用并行計算,求解問(wèn)題的規模是擴大不了的。
此外,并行計算目前還面臨著(zhù)不少挑戰。李國杰提到,并行計算目前還面臨著(zhù)“需要有全新的思路挖掘片內并行性”“如何緩解因擴展并行而惡化的訪(fǎng)存瓶頸”“并行算法也要緊緊圍繞低功耗這個(gè)更重要的目標”“提高并行計算的通用性、覆蓋應用的范圍”“必須對付智能應用這類(lèi)動(dòng)態(tài)、不確定的復雜負載”等重要命題。
來(lái)源:《中國科學(xué)報》