[發(fā)明專利]基于GEMM處理圖像數(shù)據(jù)的方法、裝置、設(shè)備和介質(zhì)有效
| 申請?zhí)枺?/td> | 202011016965.1 | 申請日: | 2020-09-24 |
| 公開(公告)號: | CN112184536B | 公開(公告)日: | 2022-09-30 |
| 發(fā)明(設(shè)計)人: | 韓潔 | 申請(專利權(quán))人: | 成都海光集成電路設(shè)計有限公司 |
| 主分類號: | G06T1/20 | 分類號: | G06T1/20;G06T1/60 |
| 代理公司: | 北京市柳沈律師事務(wù)所 11105 | 代理人: | 王娟 |
| 地址: | 610041 四川省成都市高新區(qū)天府大道*** | 國省代碼: | 四川;51 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 gemm 處理 圖像 數(shù)據(jù) 方法 裝置 設(shè)備 介質(zhì) | ||
本公開提供了一種基于GEMM處理圖像數(shù)據(jù)的方法、裝置、設(shè)備和介質(zhì)。所述方法包括:獲取匯編指令集,所述匯編指令集指定針對圖像數(shù)據(jù)的預(yù)定操作序列;對所述匯編指令集進(jìn)行分析,得到指令集分析結(jié)果;根據(jù)所述指令集分析結(jié)果分配用于執(zhí)行所述預(yù)定操作序列的寄存器;讀取所述圖像數(shù)據(jù),并利用所分配的寄存器對所述圖像數(shù)據(jù)執(zhí)行所述預(yù)定操作序列。本公開提供的方法由于不是通常所采用的在處理圖像數(shù)據(jù)的同時分配寄存器,而是在對指定針對圖像數(shù)據(jù)的預(yù)定操作序列的匯編指令集分析之后統(tǒng)一分配寄存器,從而提高了GPU對圖像數(shù)據(jù)的處理速度,并且合理利用了存儲資源。
技術(shù)領(lǐng)域
本公開涉及圖像處理技術(shù),更具體地,涉及基于通用矩陣乘法GEMM處理圖像數(shù)據(jù)的方法、裝置、設(shè)備和介質(zhì)。
背景技術(shù)
圖形處理器(GPU)主要用于對圖形或圖像數(shù)據(jù)進(jìn)行處理,其中通用矩陣乘法(General Matrix to Matrix Multiplication,GEMM)是GPU編程中最重要的模塊,而目前的GEMM模塊在對圖像數(shù)據(jù)進(jìn)行處理時,是在處理圖像數(shù)據(jù)的同時分配寄存器,這將存在重復(fù)分配寄存器和頻繁釋放寄存器等問題,進(jìn)而導(dǎo)致GPU對圖像數(shù)據(jù)的處理速度慢、占用不必要的存儲資源。
因此,需要一種提高GPU對圖像數(shù)據(jù)的處理速度,并且合理利用存儲資源的方法。
發(fā)明內(nèi)容
本公開的實施例提供了一種基于通用矩陣乘法GEMM處理圖像數(shù)據(jù)的方法,包括:獲取匯編指令集,所述匯編指令集指定針對圖像數(shù)據(jù)的預(yù)定操作序列;對所述匯編指令集進(jìn)行分析,得到指令集分析結(jié)果;根據(jù)所述指令集分析結(jié)果分配用于執(zhí)行所述預(yù)定操作序列的寄存器;以及讀取所述圖像數(shù)據(jù),并利用所分配的寄存器對所述圖像數(shù)據(jù)執(zhí)行所述預(yù)定操作序列。
根據(jù)本公開的實施例,所述匯編指令集包括自定義的匯編指令,所述自定義的匯編指令位于所述預(yù)定操作序列的每一操作的起始位置。
根據(jù)本公開的實施例,所述自定義的匯編指令包括匯編字符串和操作數(shù)約束條件。
根據(jù)本公開的實施例,對所述匯編指令集進(jìn)行分析包括:解析所述匯編字符串中的操作符和操作數(shù)并解析與操作數(shù)對應(yīng)的操作數(shù)約束條件,以確定寄存器分配方式。
根據(jù)本公開的實施例,根據(jù)所述指令集分析結(jié)果分配用于執(zhí)行所述預(yù)定操作序列的寄存器包括:在匯編字符串中的操作符的類型是標(biāo)簽的情況下,不為該操作符分配寄存器;在操作數(shù)約束條件中包括預(yù)定義的寄存器ID和保留關(guān)鍵字的情況下,按照預(yù)定義的寄存器ID為保留關(guān)鍵字分配所需數(shù)量的寄存器;在匯編字符串中的操作數(shù)是非數(shù)字的情況下,從已注冊的寄存器列表中查找寄存器ID;在匯編字符串中的操作數(shù)是數(shù)字的情況下,檢查操作數(shù)的地址,在已注冊的寄存器列表里查找與所述地址對應(yīng)的寄存器ID,如果通過查找確定該地址已被注冊,則不為該操作數(shù)分配新的寄存器,否則,按照操作數(shù)所需寄存器個數(shù)分配相應(yīng)的寄存器。
根據(jù)本公開的實施例,利用所分配的寄存器對所述圖像數(shù)據(jù)執(zhí)行所述預(yù)定操作序列包括:將圖像數(shù)據(jù)的第一矩陣塊和第二矩陣塊加載到內(nèi)存中;將加載到內(nèi)存中的所述圖像數(shù)據(jù)的第一矩陣塊和第二矩陣塊存儲到緩存中;對存儲到緩存中的所述圖像數(shù)據(jù)的第一矩陣塊和第二矩陣塊進(jìn)行邏輯運算操作;將通過邏輯運算操作獲得的結(jié)果矩陣存回內(nèi)存中。
本公開的實施例提供了一種基于通用矩陣乘法GEMM處理圖像數(shù)據(jù)的裝置,包括:獲取模塊,被配置為獲取匯編指令集,所述匯編指令集指定針對圖像數(shù)據(jù)的預(yù)定操作序列;分析模塊,被配置為對所述匯編指令集進(jìn)行分析,得到指令集分析結(jié)果;分配模塊,被配置為根據(jù)所述指令集分析結(jié)果分配用于執(zhí)行所述預(yù)定操作序列的寄存器;以及執(zhí)行模塊,被配置為讀取所述圖像數(shù)據(jù),并利用所分配的寄存器對所述圖像數(shù)據(jù)執(zhí)行所述預(yù)定操作序列。
根據(jù)本公開的實施例,所述匯編指令集包括自定義的匯編指令,所述自定義的匯編指令位于所述預(yù)定操作序列的每一操作的起始位置。
根據(jù)本公開的實施例,所述自定義的匯編指令包括匯編字符串和操作數(shù)約束條件。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于成都海光集成電路設(shè)計有限公司,未經(jīng)成都海光集成電路設(shè)計有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011016965.1/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 臍血間充質(zhì)干細(xì)胞支持造血干/祖細(xì)胞體外擴(kuò)增方法
- 電流注入/隧穿發(fā)光器件和方法
- 一種基于申威平臺的基礎(chǔ)線性代數(shù)庫BLAS三級函數(shù)GEMM的高性能實現(xiàn)方法
- 申威26010眾核CPU上GEMM稠密矩陣乘高性能實現(xiàn)方法
- 一種深度神經(jīng)網(wǎng)絡(luò)運算系統(tǒng)及方法
- 一種提高GEMM計算性能的方法及裝置
- 基于GPDSP的稠密矩陣乘法向量化匯編代碼生成方法
- 利用分塊GEMM的深度學(xué)習(xí)加速器架構(gòu)
- 一種GEMM運算方法及裝置
- 一種GEMM運算加速器及基于GoogLeNet的圖像處理加速方法
- 彩色圖像和單色圖像的圖像處理
- 圖像編碼/圖像解碼方法以及圖像編碼/圖像解碼裝置
- 圖像處理裝置、圖像形成裝置、圖像讀取裝置、圖像處理方法
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像解密方法、圖像加密方法、圖像解密裝置、圖像加密裝置、圖像解密程序以及圖像加密程序
- 圖像編碼方法、圖像解碼方法、圖像編碼裝置、圖像解碼裝置、圖像編碼程序以及圖像解碼程序
- 圖像編碼方法、圖像解碼方法、圖像編碼裝置、圖像解碼裝置、圖像編碼程序、以及圖像解碼程序
- 圖像形成設(shè)備、圖像形成系統(tǒng)和圖像形成方法
- 圖像編碼裝置、圖像編碼方法、圖像編碼程序、圖像解碼裝置、圖像解碼方法及圖像解碼程序
- 圖像編碼裝置、圖像編碼方法、圖像編碼程序、圖像解碼裝置、圖像解碼方法及圖像解碼程序





