[發明專利]編譯方法、編譯裝置、電子設備、存儲介質和程序產品有效
| 申請號: | 202110309279.1 | 申請日: | 2021-03-23 |
| 公開(公告)號: | CN113031961B | 公開(公告)日: | 2023-04-07 |
| 發明(設計)人: | 武桓州;王歡;周威;駱濤;藍翔 | 申請(專利權)人: | 北京百度網訊科技有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京市金杜律師事務所 11256 | 代理人: | 趙林琳;辛鳴 |
| 地址: | 100094 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 編譯 方法 裝置 電子設備 存儲 介質 程序 產品 | ||
本公開提供了一種編譯方法、編譯裝置、電子設備、存儲介質和程序產品,可以用于源文件編譯領域和深度學習領域等領域中。該方法包括:獲取源文件集合,源文件集合包括相同類型的源文件;基于與源文件集合相關聯的預定組合規則,將源文件集合中的多個源文件組合成至少一個源文件子集;以及對每個源文件子集作為整體進行編譯。利用上述方法,可以通過減少針對源文件編譯次數來有效提高編譯效率和降低編譯耗時,從而能夠提升用戶體驗。
技術領域
本公開涉及計算機技術,并且更具體地,涉及編譯方法、編譯裝置、電子設備、計算機可讀存儲介質和計算機程序產品,可以用于源文件編譯領域和深度學習領域等領域中。
背景技術
C++語言是一種靜態類型語言,C++語言的例如格式為.CC的源文件需要通過編譯生成二進制文件才能運行或者被使用。當對C++語言的源文件進行編譯時,每個源文件被視為一個編譯單元而由編譯器進行編譯,針對每個編譯單元生成一個目標文件,最后由鏈接器鏈接為二進制產物。在編譯過程中,主要耗時在于由編譯器對編譯單元進行編譯來得到目標文件的過程。一般來說,編譯單元的數量與項目中源文件的數量一致。在大型項目中,編譯單元往往可以達到上千個甚至更多。針對每個編譯單元都需要啟動編譯器、讀取磁盤上的源文件及依賴文件并且將通過編譯得到的目標文件寫入磁盤。在最終鏈接目標文件的時候,鏈接器也需要再從磁盤讀取針對每個編譯單元生成的目標文件。因此,編譯單元過多往往使得啟動編譯器以及讀寫磁盤的耗時累加增多,從而導致編譯中的冗余耗時。類似地,針對CUDA的源文件的編譯也存在前述問題。
然而,傳統的用于源文件編譯的技術要么需要針對每個源文件分別進行編譯,要么僅能非常粗糙地將部分源文件合并而后進行編譯,從而導致針對項目所需的編譯次數較大,不僅無法適用于源文件較多的大型項目,而且當源文件增加或減少時也會出現異常,因此難以滿足用戶的需求。
發明內容
根據本公開的實施例,提供了一種編譯方法、編譯裝置、電子設備、計算機可讀存儲介質和計算機程序產品。
在本公開的第一方面中,提供了一種編譯方法,包括:獲取源文件集合,源文件集合包括相同類型的源文件;基于與源文件集合相關聯的預定組合規則,將源文件集合中的多個源文件組合成至少一個源文件子集;以及對每個源文件子集作為整體進行編譯。
在本公開的第二方面中,提供了一種編譯裝置,包括:獲取模塊,被配置為獲取源文件集合,源文件集合包括相同類型的源文件;第一組合模塊,被配置為基于與源文件集合相關聯的預定組合規則,將源文件集合中的多個源文件組合成至少一個源文件子集;以及第一編譯模塊,被配置為對每個源文件子集作為整體進行編譯。
在本公開的第三方面中,提供了一種電子設備,包括至少一個處理器;以及與至少一個處理器通信連接的存儲器;其中存儲器存儲有可被至少一個處理器執行的指令,該指令被至少一個處理器執行,以使至少一個處理器能夠實現根據本公開的第一方面的方法。
在本公開的第四方面中,提供了一種存儲有計算機指令的非瞬時計算機可讀存儲介質,計算機指令用于使計算機實現根據本公開的第一方面的方法。
在本公開的第五方面中,提供了一種計算機程序產品,包括計算機程序,計算機程序在被處理器執行時,執行根據本公開的第一方面的方法。
利用根據本申請的技術,提供了一種編譯方法,利用該方法的技術方案,可以按照預定組合規則對包括多個源文件的項目中的源文件進行組合,而后進行編譯,從而可以通過減少編譯次數來有效提高編譯效率,降低編譯耗時。
應當理解,發明內容部分中所描述的內容并非旨在限定本公開的實施例的關鍵或重要特征,亦非用于限制本公開的范圍。本公開的其它特征將通過以下的描述變得容易理解。
附圖說明
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京百度網訊科技有限公司,未經北京百度網訊科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110309279.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種仿真測試的方法及裝置
- 下一篇:一種拆除貝雷梁支架的反向吊落系統及方法





