[發明專利]代碼編譯方法及裝置有效
| 申請號: | 201910364965.1 | 申請日: | 2019-04-30 |
| 公開(公告)號: | CN110147236B | 公開(公告)日: | 2023-01-31 |
| 發明(設計)人: | 劉永超;金躍;陳勇;滕騰;張堯 | 申請(專利權)人: | 創新先進技術有限公司 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 北京永新同創知識產權代理有限公司 11376 | 代理人: | 林錦輝 |
| 地址: | 英屬開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 代碼 編譯 方法 裝置 | ||
1.一種機器語言代碼編譯方法,包括:
針對待編譯的算法模型的領域特定語言程序執行下述循環處理過程,直到滿足循環結束條件:
使用領域特定語言編譯器來基于當前代碼編排參數對所述領域特定語言程序進行編譯,以得到當前機器語言代碼;
在對應的計算架構中基于給定樣本數據運行所述當前機器語言代碼,以得到代碼性能參數數據;
在未滿足循環結束條件時,基于所述代碼性能參數數據以及所述計算架構的運算參數信息,在所述算法模型下對所述當前代碼編排參數進行優化,其中,所述優化后的代碼編排參數被作為下一循環的當前代碼編排參數,
在滿足所述循環結束條件時,輸出所述當前機器語言代碼作為目標機器語言代碼。
2.如權利要求1所述的機器語言代碼編譯方法,其中,對所述當前代碼編排參數進行優化是采用下述算法中的一種算法進行的:
機器學習模型;
隨機搜索算法;
網格搜索算法;
遺傳搜索算法;
蒙特卡羅搜索算法;和
退火算法。
3.如權利要求1所述的機器語言代碼編譯方法,其中,所述領域特定語言程序是使用與所述算法模型的適用領域匹配的領域特定語言編寫的。
4.如權利要求3所述的機器語言代碼編譯方法,其中,所述領域特定語言包括下述領域特定語言中的至少一種:Halide;Graphlt;Spatial;以及定制的領域特定語言,
其中,使用領域特定語言編譯器來基于當前代碼編排參數對所述領域特定語言程序進行編譯包括:
使用對應的領域特定語言編譯器來基于當前代碼編排參數對所述領域特定語言程序進行編譯。
5.如權利要求1所述的機器語言代碼編譯方法,其中,所述代碼編排參數的初始值是基于歷史代碼性能參數數據、所述算法模型以及所述計算架構的運算參數信息獲得的。
6.如權利要求1所述的機器語言代碼編譯方法,其中,所述給定樣本數據是在所述算法模型的目標應用場景下獲取的樣本數據。
7.如權利要求1所述的機器語言代碼編譯方法,其中,所述計算架構包括下述計算架構中的至少一種:
CPU類計算架構;
GPU類計算架構;
FPGA類計算架構;
TPU類計算架構;
AI類計算架構;和
定制處理器計算架構。
8.如權利要求7所述的機器語言代碼編譯方法,其中,在所述計算架構包括至少兩種計算架構時,所述機器語言代碼編譯方法還包括:
比較與所述至少兩種計算架構對應的機器語言代碼的代碼性能參數,以及
輸出所述當前機器語言代碼作為目標機器語言代碼包括:
輸出代碼性能參數最佳的機器語言代碼作為目標機器語言代碼。
9.如權利要求1到8中任一所述的機器語言代碼編譯方法,其中,所述循環結束條件包括下述結束條件中的一種:
循環次數達到預定次數;和
當前代碼性能參數數據與前一代碼性能參數數據之間的差值在預定范圍內。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于創新先進技術有限公司,未經創新先進技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910364965.1/1.html,轉載請聲明來源鉆瓜專利網。





