圖片來源: 

Facebook

臉書(Facebook)於上周五(10/20)宣布,開源旗下並行程式設計除錯工具RacerD,協助開發者縮短並行程式設計(Concurrent Programming)除錯的時間,以及避免並行程式中的競爭情況(Race Condition)。

並行程式設計是指,在系統中有至少2個以上的運算同時運作,此時則容易發生資料競爭(Data Race)的情況,且因為人工難以發現競爭情況的發生,造成開發者往往得費時除錯,而RacerD工具則可以協助開發者偵測與避免Java程式中的資料競爭,及檢察並行程式設計的錯誤。

RacerD工具是以Infer靜態分析平臺為基礎,採用程式分析框架Infer.AI來偵測程式錯誤,且RacerD工具透過程式碼編譯時檢查程式碼,並產生系統中可能發生競爭情況的報告,提供給開發者。臉書聲稱,RacerD能夠用低於15分鐘的時間檢查80行以上的程式碼,且能找出程式碼中大部分競爭情況的錯誤。

臉書也以自身的經驗說明RacerD帶來的效益,臉書的Android團隊為行動App的新聞提要(News Feed)建置並行程式,運用RacerD抓到1,000個以上競爭情況的程式錯誤,為臉書的行動App改進了5%的效能。

此外,目前RacerD工具支援Java,臉書也計畫未來RacerD將支援C++。

 


Advertisement

更多 iThome相關內容