亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

三角矩陣逆運(yùn)算的處理方法及裝置與流程

文檔序號(hào):40401206發(fā)布日期:2024-12-20 12:24閱讀:3來源:國(guó)知局
三角矩陣逆運(yùn)算的處理方法及裝置與流程

本發(fā)明涉及數(shù)據(jù)處理,具體而言,涉及一種三角矩陣逆運(yùn)算的處理方法及裝置。


背景技術(shù):

1、目前相較于成熟的圖形處理器gpu(graphics?processing?unit,簡(jiǎn)稱gpu)軟件生態(tài)系統(tǒng),神經(jīng)處理單元npu(neural?processing?unit,簡(jiǎn)稱npu)的生態(tài)環(huán)境尚待完善。那么基礎(chǔ)算子的性能優(yōu)化就比較重要。在人工智能計(jì)算平臺(tái)npu上執(zhí)行三角矩陣逆運(yùn)算由于操作涉及大量標(biāo)量運(yùn)算和高度的運(yùn)算依賴性,制約了運(yùn)算過程的并行性。若采取傳統(tǒng)的逐元素方式,即通過標(biāo)量運(yùn)算結(jié)合循環(huán)結(jié)構(gòu)來實(shí)現(xiàn)逆矩陣計(jì)算,計(jì)算效率較低。

2、針對(duì)上述的問題,目前尚未提出有效的解決方案。


技術(shù)實(shí)現(xiàn)思路

1、本發(fā)明實(shí)施例提供了一種三角矩陣逆運(yùn)算的處理方法及裝置,以至少解決相關(guān)技術(shù)中在人工智能計(jì)算平臺(tái)npu上執(zhí)行三角矩陣逆運(yùn)算操作涉及到大量標(biāo)量運(yùn)算和高度的運(yùn)算依賴性,使得整個(gè)處理過程效率較低的技術(shù)問題。

2、根據(jù)本發(fā)明實(shí)施例的一個(gè)方面,提供了一種三角矩陣逆運(yùn)算的處理方法,包括:在接收到目標(biāo)任務(wù)時(shí),將所述目標(biāo)任務(wù)均勻劃分到目標(biāo)處理平臺(tái)的多個(gè)計(jì)算核心,其中,所述目標(biāo)處理平臺(tái)用于對(duì)所述目標(biāo)任務(wù)進(jìn)行處理,所述目標(biāo)任務(wù)為矩陣的對(duì)角線上的多個(gè)分塊;獲取所述多個(gè)分塊分別對(duì)應(yīng)的三角矩陣,并對(duì)所述三角矩陣求逆,得到所述三角矩陣的逆矩陣;將所述三角矩陣的逆矩陣的對(duì)角線元素和單位矩陣分別存入到第一存儲(chǔ)介質(zhì),并將所述逆矩陣的已知部分和系數(shù)矩陣存入第二存儲(chǔ)介質(zhì),其中,所述已知部分是對(duì)所述逆矩陣進(jìn)行求解得到的結(jié)果,所述第一存儲(chǔ)介質(zhì)中的數(shù)據(jù)供并行指令調(diào)用,所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)供交互式操作指令調(diào)用;從所述第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)所述第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從所述第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到所述逆矩陣的逆運(yùn)算結(jié)果。

3、可選地,將所述目標(biāo)任務(wù)均勻劃分到目標(biāo)處理平臺(tái)的多個(gè)計(jì)算核心,包括:確定所述目標(biāo)任務(wù)的任務(wù)數(shù)量;根據(jù)所述任務(wù)數(shù)量將所述目標(biāo)任務(wù)均勻地劃分到所述目標(biāo)處理平臺(tái)的所述多個(gè)計(jì)算核心。

4、可選地,確定所述目標(biāo)任務(wù)的任務(wù)數(shù)量,包括:確定多個(gè)所述分塊的第一維度和所述矩陣的第二維度;對(duì)所述第一維度和所述第二維度的商進(jìn)行向上取整得到所述任務(wù)數(shù)量。

5、可選地,將所述目標(biāo)任務(wù)均勻劃分到目標(biāo)處理平臺(tái)的多個(gè)計(jì)算核心,包括:對(duì)所述任務(wù)數(shù)量的所述目標(biāo)任務(wù)采用循環(huán)分配的方式分配到所述目標(biāo)處理平臺(tái)的所述多個(gè)計(jì)算核心上,其中,在對(duì)所述目標(biāo)任務(wù)進(jìn)行均勻劃分的過程中,在分配到所述多個(gè)計(jì)算核心的最后一個(gè)時(shí),所述目標(biāo)任務(wù)仍未分配完時(shí),則返回到所述多個(gè)計(jì)算核心的第一個(gè)繼續(xù)執(zhí)行所述目標(biāo)任務(wù)的分配操作,直到所述目標(biāo)任務(wù)被分配完成。

6、可選地,獲取所述多個(gè)分塊分別對(duì)應(yīng)的三角矩陣,并對(duì)所述三角矩陣求逆,得到所述三角矩陣的逆矩陣,包括:將所述多個(gè)分塊加載到所述第一存儲(chǔ)介質(zhì),并在所述第一存儲(chǔ)介質(zhì)通過vector指令生成掩碼矩陣,其中,所述掩碼矩陣的下三角全為1,所述掩碼矩陣的其余部分元素都為0;將所述矩陣的所述分塊與所述掩碼矩陣進(jìn)行逐元素相乘,以對(duì)所述三角矩陣求逆,得到所述三角矩陣的逆矩陣。

7、可選地,從所述第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)所述第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從所述第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到所述逆矩陣的逆運(yùn)算結(jié)果,包括:通過vector指令生成掩碼矩陣,并將所述掩碼矩陣與所述矩陣進(jìn)行逐元素相乘,得到所述系數(shù)矩陣;將所述系數(shù)矩陣與所述三角矩陣的逆矩陣進(jìn)行矩陣乘法處理,得到結(jié)果矩陣;將所述結(jié)果矩陣的第0行作為解逆矩陣的所述第0行的多項(xiàng)式相乘結(jié)果;利用所述vector指令將所述結(jié)果矩陣的所述第0行與所述多項(xiàng)式相乘結(jié)果進(jìn)行向量減法處理,得到向量減法處理結(jié)果;將所述向量減法處理結(jié)果與所述對(duì)角線上的第0個(gè)元素的倒數(shù)進(jìn)行向量乘法處理,得到所述三角矩陣的逆矩陣的當(dāng)前第0行元素;利用所述當(dāng)前第0行元素更新所述三角矩陣的原始第0行元素;重復(fù)上述步驟,直到所述三角矩陣的逆矩陣的所有行的元素均更新完畢。

8、可選地,在從所述第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)所述第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從所述第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到所述逆矩陣的逆運(yùn)算結(jié)果之后,該三角矩陣逆運(yùn)算的處理方法還包括:利用所述逆運(yùn)算結(jié)果對(duì)所述三角矩陣的逆矩陣進(jìn)行更新,得到更新后的所述逆矩陣;將更新后的所述逆矩陣回存到全局內(nèi)存中。

9、根據(jù)本發(fā)明實(shí)施例的另外一個(gè)方面,還提供了一種三角矩陣逆運(yùn)算的處理裝置,包括:分配單元,用于在接收到目標(biāo)任務(wù)時(shí),將所述目標(biāo)任務(wù)均勻劃分到目標(biāo)處理平臺(tái)的多個(gè)計(jì)算核心,其中,所述目標(biāo)處理平臺(tái)用于對(duì)所述目標(biāo)任務(wù)進(jìn)行處理,所述目標(biāo)任務(wù)為矩陣的對(duì)角線上的多個(gè)分塊;獲取單元,用于獲取所述多個(gè)分塊分別對(duì)應(yīng)的三角矩陣,并對(duì)所述三角矩陣求逆,得到所述三角矩陣的逆矩陣;存儲(chǔ)單元,用于將所述三角矩陣的逆矩陣的對(duì)角線元素和單位矩陣分別存入到第一存儲(chǔ)介質(zhì),并將所述逆矩陣的已知部分和系數(shù)矩陣存入第二存儲(chǔ)介質(zhì),其中,所述已知部分是對(duì)所述逆矩陣進(jìn)行求解得到的結(jié)果,所述第一存儲(chǔ)介質(zhì)中的數(shù)據(jù)供并行指令調(diào)用,所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)供交互式操作指令調(diào)用;處理單元,用于從所述第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)所述第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從所述第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到所述逆矩陣的逆運(yùn)算結(jié)果。

10、可選地,所述分配單元,包括:第一確定子單元,用于確定所述目標(biāo)任務(wù)的任務(wù)數(shù)量;第一分配子單元,用于根據(jù)所述任務(wù)數(shù)量將所述目標(biāo)任務(wù)均勻地劃分到所述目標(biāo)處理平臺(tái)的所述多個(gè)計(jì)算核心。

11、可選地,所述第一確定子單元,包括:確定模塊,用于確定多個(gè)所述分塊的第一維度和所述矩陣的第二維度;獲取模塊,用于對(duì)所述第一維度和所述第二維度的商進(jìn)行向上取整得到所述任務(wù)數(shù)量。

12、可選地,所述分配單元,包括:第二分配子單元,用于對(duì)所述任務(wù)數(shù)量的所述目標(biāo)任務(wù)采用循環(huán)分配的方式分配到所述目標(biāo)處理平臺(tái)的所述多個(gè)計(jì)算核心上,其中,在對(duì)所述目標(biāo)任務(wù)進(jìn)行均勻劃分的過程中,在分配到所述多個(gè)計(jì)算核心的最后一個(gè)時(shí),所述目標(biāo)任務(wù)仍未分配完時(shí),則返回到所述多個(gè)計(jì)算核心的第一個(gè)繼續(xù)執(zhí)行所述目標(biāo)任務(wù)的分配操作,直到所述目標(biāo)任務(wù)被分配完成。

13、可選地,所述獲取單元,包括:存儲(chǔ)子單元,用于將所述多個(gè)分塊加載到所述第一存儲(chǔ)介質(zhì),并在所述第一存儲(chǔ)介質(zhì)通過vector指令生成掩碼矩陣,其中,所述掩碼矩陣的下三角全為1,所述掩碼矩陣的其余部分元素都為0;將所述矩陣的所述分塊與所述掩碼矩陣進(jìn)行逐元素相乘,以對(duì)所述三角矩陣求逆,得到所述三角矩陣的逆矩陣。

14、可選地,所述處理單元,包括:獲取子單元,用于通過vector指令生成掩碼矩陣,并將所述掩碼矩陣與所述矩陣進(jìn)行逐元素相乘,得到所述系數(shù)矩陣;第一處理子單元,用于將所述系數(shù)矩陣與所述三角矩陣的逆矩陣進(jìn)行矩陣乘法處理,得到結(jié)果矩陣;第二確定子單元,用于將所述結(jié)果矩陣的第0行作為解逆矩陣的所述第0行的多項(xiàng)式相乘結(jié)果;第二處理子單元,用于利用所述vector指令將所述結(jié)果矩陣的所述第0行與所述多項(xiàng)式相乘結(jié)果進(jìn)行向量減法處理,得到向量減法處理結(jié)果;第三處理子單元,用于將所述向量減法處理結(jié)果與所述對(duì)角線上的第0個(gè)元素的倒數(shù)進(jìn)行向量乘法處理,得到所述三角矩陣的逆矩陣的當(dāng)前第0行元素;更新子單元,用于利用所述當(dāng)前第0行元素更新所述三角矩陣的原始第0行元素;第四處理子單元,用于重復(fù)上述步驟,直到所述三角矩陣的逆矩陣的所有行的元素均更新完畢。

15、可選地,該三角矩陣逆運(yùn)算的處理裝置還包括:更新單元,用于在從所述第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)所述第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從所述第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)所述第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到所述逆矩陣的逆運(yùn)算結(jié)果之后,利用所述逆運(yùn)算結(jié)果對(duì)所述三角矩陣的逆矩陣進(jìn)行更新,得到更新后的所述逆矩陣;回存單元,用于將更新后的所述逆矩陣回存到全局內(nèi)存中。

16、根據(jù)本發(fā)明實(shí)施例的另外一個(gè)方面,還提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括存儲(chǔ)的程序,其中,所述程序執(zhí)行上述中任意一項(xiàng)所述的三角矩陣逆運(yùn)算的處理方法。

17、根據(jù)本發(fā)明實(shí)施例的另外一個(gè)方面,還提供了一種處理器,所述處理器用于運(yùn)行程序,其中,所述程序運(yùn)行時(shí)執(zhí)行上述中任意一項(xiàng)所述的三角矩陣逆運(yùn)算的處理方法。

18、根據(jù)本發(fā)明實(shí)施例的另外一個(gè)方面,還提供了一種計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)指令,所述計(jì)算機(jī)指令被處理器執(zhí)行時(shí)執(zhí)行上述中任意一項(xiàng)所述的三角矩陣逆運(yùn)算的處理方法。

19、在本發(fā)明實(shí)施例中,在接收到目標(biāo)任務(wù)時(shí),將目標(biāo)任務(wù)均勻劃分到目標(biāo)處理平臺(tái)的多個(gè)計(jì)算核心,其中,目標(biāo)處理平臺(tái)用于對(duì)目標(biāo)任務(wù)進(jìn)行處理,目標(biāo)任務(wù)為矩陣的對(duì)角線上的多個(gè)分塊;獲取多個(gè)分塊分別對(duì)應(yīng)的三角矩陣,并對(duì)三角矩陣求逆,得到三角矩陣的逆矩陣;將三角矩陣的逆矩陣的對(duì)角線元素和單位矩陣分別存入到第一存儲(chǔ)介質(zhì),并將逆矩陣的已知部分和系數(shù)矩陣存入第二存儲(chǔ)介質(zhì),其中,已知部分是對(duì)逆矩陣進(jìn)行求解得到的結(jié)果,第一存儲(chǔ)介質(zhì)中的數(shù)據(jù)供并行指令調(diào)用,第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)供交互式操作指令調(diào)用;從第一存儲(chǔ)介質(zhì)調(diào)取數(shù)據(jù)以對(duì)第一存儲(chǔ)介質(zhì)中調(diào)取的數(shù)據(jù)進(jìn)行并行計(jì)算,并從第二存儲(chǔ)介質(zhì)中調(diào)取數(shù)據(jù)以對(duì)第二存儲(chǔ)介質(zhì)中的數(shù)據(jù)進(jìn)行立方體體積計(jì)算,得到逆矩陣的逆運(yùn)算結(jié)果。通過本發(fā)明提供的上述技術(shù)方案,實(shí)現(xiàn)了通過將計(jì)算任務(wù)分配到多個(gè)計(jì)算核心上進(jìn)行并行計(jì)算,以提高計(jì)算速度,增大任務(wù)吞吐量的目的,達(dá)到了提高三角矩陣逆運(yùn)算的處理效率的技術(shù)效果,進(jìn)而解決了相關(guān)技術(shù)中在人工智能計(jì)算平臺(tái)npu上執(zhí)行三角矩陣逆運(yùn)算操作涉及到大量標(biāo)量運(yùn)算和高度的運(yùn)算依賴性,使得整個(gè)處理過程效率較低的技術(shù)問題。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1