異構計算獲得代碼相似性工具
由英特爾公司和大學合作伙伴支持的異構計算機器編程框架是圍繞自動引擎構建的,該引擎分析代碼的相似性。該方法最終可以允許非程序員基于意圖創(chuàng)建軟件。
英特爾(NASDAQ:INTC)與佐治亞理工學院和麻省理工學院的研究合作伙伴表示,他們的機器推斷代碼相似性(MISIM)系統朝著基于意圖的編程邁出了一步。自動化框架旨在探查代碼結構以確定其意圖。然后,它分析其他代碼以查找可能產生相似行為的語法差異。
研究人員聲稱他們的方法比當前的代碼相似性系統提供了40倍的性能提升,為從自動化測試和調試到代碼推薦的新應用打開了大門。
英特爾實驗室機器編程研究總監(jiān)賈斯汀·戈茨利希(Justin Gottschlich)表示:“機器編程完全實現后,將使每個人都能以最適合自己的方式表達意圖,無論是代碼,自然語言還是其他方式,來創(chuàng)建軟件。”
MISIM還致力于解決將CPU,GPU,FPGA與其他處理器類型和設備混合搭配的異構計算平臺日益復雜的問題。這種復雜性以及程序員的短缺,推動了自動化編碼的努力。代碼相似性框架是新興的機器編碼方法中的一種,用于生成可實現預期功能的代碼。
MISIM被提升為準確確定兩段代碼何時可以執(zhí)行相似的計算,無論它們是否使用不同的算法或數據結構。英特爾-喬治亞理工大學的MIT小組在6月發(fā)表的研究論文中表示,MISIM基于新的“上下文感知語義結構”以及基于神經的代碼相似性評分算法。這些核心組件已在神經網絡體系結構中實現,以創(chuàng)建本周發(fā)布的自動代碼分析引擎。
MISIM已針對三個現有的代碼相似性系統進行了基準測試,其中包括針對開發(fā)人員的Facebook Aroma代碼推薦工具。研究人員報告說,基于對超過45,000個程序的評估,MISIM的性能提高了40倍。
據說可以將MISIM與早期代碼相似性系統區(qū)分開的特殊調味料稱為CASS,用于上下文感知的語義結構。研究人員說,與現有平臺不同,CASS可以配置為特定的上下文,從而可以收集描述代碼的詳細信息。結果是一個自動化的系統,該系統可以確定執(zhí)行什么代碼而不是執(zhí)行代碼的方式。
CASS不需要編譯器,這意味著它可以在編寫時在未完成的代碼上執(zhí)行。英特爾表示,新功能有望用于先進的自動化調試和建議系統。
英特爾說:“一旦將代碼的結構集成到CASS中,許多神經網絡系統就會根據其設計要執(zhí)行的工作,為代碼片段提供相似度。” “換句話說,如果兩段代碼在結構上看起來非常不同但執(zhí)行相同的功能,那么這些神經網絡會將它們評為大致相似。”
英特爾表示,MISIM目前正從實驗室過渡到演示階段,在該階段它將作為開發(fā)人員在公司的異構計算體系結構中進行編程的代碼推薦引擎的基礎。最終,MISIM可以集成到英特爾的軟件開發(fā)運營中。
英特爾的Gottschlich說:“我想,如果可能的話,大多數開發(fā)人員會很樂意讓機器為他們找到并修復錯誤,我知道我會的。”
標簽: 異構計算