[發明專利]一種基于Arm架構的NumPy運算加速優化方法在審
| 申請號: | 202110062369.5 | 申請日: | 2021-01-18 |
| 公開(公告)號: | CN112783503A | 公開(公告)日: | 2021-05-11 |
| 發明(設計)人: | 張文毅;梁嘉迪;杜云飛;盧宇彤 | 申請(專利權)人: | 中山大學 |
| 主分類號: | G06F8/41 | 分類號: | G06F8/41 |
| 代理公司: | 廣州粵高專利商標代理有限公司 44102 | 代理人: | 張金福 |
| 地址: | 510260 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 arm 架構 numpy 運算 加速 優化 方法 | ||
本發明為克服Arm平臺上原生NumPy庫存在計算性能低下的缺陷,提出一種基于Arm架構的NumPy運算加速優化方法,包括以下步驟:配置Arm架構環境,獲取NumPy源代碼;對NumPy源代碼中待優化函數進行類型判斷:若待優化函數為數值計算類函數,則對待優化函數進行循環體優化,再對待優化函數進行多線程處理;否則直接對待優化函數進行多線程處理;然后將完成函數優化的NumPy源代碼進行編譯優化。本發明對Arm架構環境中的NumPy源代碼進行優化,根據NumPy源代碼中的函數類型執行循環體優化、多線程處理等操作,能夠有效提高了依賴于NumPy的各類Python程序運行效率。
技術領域
本發明涉及計算機技術領域,更具體地,涉及一種基于Arm架構的NumPy運算加速優化方法。
背景技術
作為一種被廣泛使用的解釋型語言,Python以它的易用性、面向對象、支持眾多的第三方模塊等特性逐漸成為深受科學家和工程師喜愛的編程語言。其中,NumPy(NumericalPython,一種開源的數值計算擴展)模塊以它強大的計算能力成為數據科學家們爭相推崇的一個優質第三方庫。NumPy的函數功能完備,不僅提供了有關線性代數的計算接口,還提供了有關算術運算、統計、字符串、位運算、排序等計算接口以及I/O等操作接口。盡管如此,NumPy在面對人工智能、科學計算與實際工程運用等領域日益增加的計算量時,它的運算速度無法令人滿意。
對于NumPy的加速和優化依賴于平臺環境。Arm作為當前計算機芯片的重要架構方式之一,相較于x86芯片架構提供了精簡指令集(RISC)和低功耗等截然不同的特性,這也導致針對x86架構的軟件優化方法無法直接移植到Arm處理器上。Armv8的存儲體系結構主要分為CPU寄存器、多級Cache緩存和內存,計算數據由于需要與CPU計算元器件ALU(arithmetic and logic unit,算術邏輯單元)交互,故計算時都存放在CPU寄存器中,因此普遍存在運算速度慢、運算效率低的問題。
發明內容
本發明為克服上述現有技術所述的Arm平臺上原生NumPy庫存在計算性能低下的缺陷,提供一種基于Arm架構的NumPy運算加速優化方法。
為解決上述技術問題,本發明的技術方案如下:
一種基于Arm架構的NumPy運算加速優化方法,包括以下步驟:
S1:配置Arm架構環境,獲取NumPy源代碼;
S2:對NumPy源代碼中待優化函數進行類型判斷:若待優化函數為數值計算類函數,則執行S3步驟;若待優化函數為非數值計算類函數,則跳轉執行S4步驟;
S3:對待優化函數進行循環體優化;
S4:對待優化函數進行多線程處理;
S5:將完成函數優化的NumPy源代碼進行編譯優化。
作為優選方案,所述數值計算類函數包括線性代數函數、超越函數、算術函數、統計函數;所述非數值計算類函數包括數組創建函數、數組形狀處理函數、字符串函數、位運算函數、條件篩選函數。
作為優選方案,所述S3步驟中,對待優化函數進行循環體優化的具體步驟包括對循環體內部語句的SIMD(Single Instruction Multiple Data,單指令流多數據流)改寫優化,以及對循環體本身進行優化。
作為優選方案,在對循環體本身進行優化時,根據循環體的特性對循環體本身進行拆分、合并和展開操作;其中:
對時間復雜度大于或等于O(N2)的循環體進行拆分操作,將循環體拆分為若干小循環;其中N表示循環體的問題規模;
對時間復雜度小于O(N2)的循環體進行進行合并操作,將待優化函數上下流中的若干循環體合并至一個循環體;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中山大學,未經中山大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110062369.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:紡織輥單列十字路徑移位機架
- 下一篇:導航方法和裝置





