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

一種面向gpu并行的三對角矩陣方程求解方法

文檔序號:9524173閱讀:1056來源:國知局
一種面向gpu并行的三對角矩陣方程求解方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及高性能計算技術(shù)領(lǐng)域,尤指一種面向圖形處理器(GPU,Graphics Processing化it)并行的Ξ對角矩陣方程求解方法。
【背景技術(shù)】
[0002] Ξ對角方程組是線性代數(shù)方程組中結(jié)構(gòu)形式較為簡單的一種,屬于帶狀方程組。 其半帶寬為1。在兩點邊值問題的有限差分方法、Ξ次樣條插值函數(shù)的計算、偏微分方程隱 式差分方法中常常產(chǎn)生運(yùn)類方程組。研究Ξ對角線方程組的求解對數(shù)值計算相關(guān)領(lǐng)域(如 航空數(shù)值計算)也有著重要的價值。
[0003] 傳統(tǒng)求解Ξ對角方程組的串行算法比較經(jīng)典的有Guass消去法,也被稱為"追趕 法",雖然該算法已證明在串行計算機(jī)上是最優(yōu)的算法,但是并不適合并行求解。Ξ對角方 程組的并行算法主要有遞歸倍增法(stone算法)、循環(huán)約化法、W及分裂法等。
[0004] 同時,近年來GPU硬件性能和可編程性的提高,W及其在數(shù)值計算領(lǐng)域的廣泛應(yīng) 用,為并行求解Ξ對角方程組,提高計算性能帶來了契機(jī)。分裂法由H.H.Wang在八十年代 提出,算法貫徹了分而治之的原則,適用于并行求解。但是針對計算統(tǒng)一設(shè)備架構(gòu)(CUDA, Compute化ifiedDeviceArchitec化re)架構(gòu),算法的幾個中間步驟表現(xiàn)出適應(yīng)性的不 足。 陽0化]原分裂法算法的主要步驟如下,W 9乘9矩陣為例。
[0006] 1.將矩陣分塊,如圖1所示。 陽007] 2.依次消去每塊左下方元素(曰2,曰5,曰8,a3,曰6,曰9)和上方元素(cl,c4,c7),塊 內(nèi)串行,塊間并行,如圖2所示。
[0008]3.消去每塊上方元素(c3,c6),存在塊間數(shù)據(jù)依賴,塊間串行,如圖3所示。
[0009] 4.消去每塊左側(cè)元素(f4,巧,f6,巧,f8,f9)和右側(cè)元素(g6,g7,c8,g3,g4,c5, gl,c2),存在塊間數(shù)據(jù)依賴,塊間串行,如圖4所示。
[0010] 5.求解完畢,如圖5所示。
[0011] 在利用CUDA編程模型在GPU上進(jìn)行實現(xiàn)時,如果按照上述原算法的描述進(jìn)行求 解,會發(fā)現(xiàn)在線程與線程之間,W及塊與塊之間存在著依賴關(guān)系,需要進(jìn)行通信和同步操 作。
[0012] 根據(jù)上述算法描述和分析:在算法的前半部分,矩陣塊內(nèi)串行,矩陣塊間并行;算 法后半部分,矩陣塊內(nèi)并行,矩陣塊間串行。前半部分的分塊方法將矩陣分塊的尺寸固定, 之后就無法更改,而且塊內(nèi)的并行度低,加速效果差;后半部分塊間串行無法利用GPU多線 程的優(yōu)勢。。

【發(fā)明內(nèi)容】

[0013] 為了解決上述技術(shù)問題,本發(fā)明提供了一種面向GPU并行的Ξ對角矩陣方程求解 方法,能夠有效提高數(shù)據(jù)處理的塊間并行度,保證正確性的同時,提高系統(tǒng)的運(yùn)算效率。
[0014] 為了達(dá)到本發(fā)明目的,本發(fā)明提供了一種面向GPU并行的Ξ對角矩陣方程求解方 法,包括:將面向GPU并行的Ξ對角矩陣進(jìn)行矩陣塊間依賴消除實現(xiàn)塊內(nèi)消元;將經(jīng)過依賴 消除的矩陣塊間進(jìn)行并行求解實現(xiàn)塊間并行消元;利用主機(jī)內(nèi)存和GPU顯存的透明映射, 進(jìn)行主機(jī)和GPU之間的數(shù)據(jù)傳輸通路。
[0015] 進(jìn)一步地,所述進(jìn)行矩陣塊間依賴消除,具體為:根據(jù)矩陣數(shù)據(jù)分塊之間的并行 性,消除矩陣分塊間的數(shù)據(jù)依賴,并將具有數(shù)據(jù)塊間依賴的部分進(jìn)行塊內(nèi)消元。
[0016] 進(jìn)一步地,所述進(jìn)行矩陣塊間依賴消除,具體為:將矩陣分塊;依次消去每塊左下 方元素和上方元素,塊內(nèi)串行,塊間并行;消去每塊上方元素,存在塊間數(shù)據(jù)依賴,塊間串 行;依次消去每塊左側(cè)最下元素,進(jìn)行依賴數(shù)據(jù)預(yù)處理,塊間串行;順序消去每塊左側(cè)元素 和右側(cè)元素,塊內(nèi)串行,塊間并行。
[0017] 進(jìn)一步地,所述進(jìn)行并行求解,具體為:根據(jù)分塊大小W及GPU線程數(shù)目,對將經(jīng) 過依賴消除的矩陣塊間進(jìn)行并行求解。
[0018] 進(jìn)一步地,所述進(jìn)行主機(jī)和GPU之間的數(shù)據(jù)傳輸通路,具體為:利用主機(jī)內(nèi)存和 GPU顯存的透明映射,使用主機(jī)CPU進(jìn)行串行運(yùn)算實現(xiàn)主機(jī)和GPU之間的數(shù)據(jù)傳輸通路。
[0019] 與現(xiàn)有技術(shù)相比,本發(fā)明通過矩陣塊間依賴消除算法,將原分裂法中具有數(shù)據(jù)塊 間依賴的部分進(jìn)行預(yù)先消元,為后續(xù)塊間并行消元打下基礎(chǔ),使得整個算法適用于GPU的 并行處理;針對為面向GPU加速求解Ξ對角矩陣方程的特點,選擇合適的分塊大小W及GPU 線程數(shù)目,進(jìn)行并行處理,是大幅提高計算性能的基礎(chǔ);利用主機(jī)內(nèi)存和GPU顯存的透明映 射,一方面減少了數(shù)據(jù)傳輸量,另一方面簡化了數(shù)據(jù)傳輸步驟,進(jìn)一步挖掘了算法的整體性 能。本發(fā)明充分考慮GPU具有強(qiáng)大并行處理能力的特點,并著眼于傳統(tǒng)分裂法求解Ξ對角 矩陣算法的GPU適應(yīng)性改進(jìn),面向GPU計算特征,采用依賴數(shù)據(jù)預(yù)消除的方法針對矩陣分塊 計算的并行性進(jìn)行了優(yōu)化,最終在Ξ對角矩陣方程的求解速度方面,與傳統(tǒng)的分裂法相比 獲得了較大的改進(jìn),從而推動了GPU在高性能數(shù)值計算領(lǐng)域廣泛應(yīng)用。
[0020] 本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變 得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在說明書、權(quán)利 要求書W及附圖中所特別指出的結(jié)構(gòu)來實現(xiàn)和獲得。
【附圖說明】
[0021] 附圖用來提供對本發(fā)明技術(shù)方案的進(jìn)一步理解,并且構(gòu)成說明書的一部分,與本 申請的實施例一起用于解釋本發(fā)明的技術(shù)方案,并不構(gòu)成對本發(fā)明技術(shù)方案的限制。
[0022] 圖1是現(xiàn)有技術(shù)中的分裂法矩陣分塊示意圖。
[0023] 圖2是現(xiàn)有技術(shù)中的分裂法塊間并行消元示意圖。
[0024] 圖3是現(xiàn)有技術(shù)中的分裂法塊間同步消元示意圖。
[00巧]圖4是現(xiàn)有技術(shù)中的分裂法塊內(nèi)并行、塊間串行消元示意圖。
[00%] 圖5是現(xiàn)有技術(shù)中的分裂法求解完畢示意圖。
[0027] 圖6是本發(fā)明的面向GPU并行的Ξ對角矩陣方程求解方法的流程示意圖。
[0028] 圖7是本發(fā)明的算法初始狀態(tài)示意圖。
[0029] 圖8是本發(fā)明的算法串行依賴消去示意圖。
[0030] 圖9是本發(fā)明的算法塊間并行消元示意圖。
[0031] 圖10是本發(fā)明的算法求解完畢示意圖。
【具體實施方式】
[0032] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚明白,下文中將結(jié)合附圖對本發(fā)明 的實施例進(jìn)行詳細(xì)說明。需要說明的是,在不沖突的情況下,本申請中的實施例及實施例中 的特征可W相互任意組合。
[0033] 在附圖的流程圖示出的步驟可W在諸如一組計算機(jī)可執(zhí)行指令的計算機(jī)系統(tǒng)中 執(zhí)行。并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可不同于此處的順 序執(zhí)行所示出或描述的步驟。
[0034] 在CUDA實現(xiàn)時,如果按照現(xiàn)有技術(shù)的方法進(jìn)行求解,發(fā)現(xiàn)在線程與線程之間,W 及塊與塊之間存在著依賴關(guān)系,需要進(jìn)行通信和同步操作。最為重要的是最后對于f列和 g列的消去線程之間有著依賴關(guān)系,必須串行進(jìn)行,運(yùn)對CUDA程序的性能是致命的損失。
[0035] 本發(fā)明的算法設(shè)計主要考慮分裂法塊內(nèi)及塊間可并行的特點,W及GPU編程模型 CUDA單指令流多線程的特點,采用數(shù)據(jù)預(yù)處理消除塊間數(shù)據(jù)依賴的方法,可有效提高數(shù)據(jù) 處理的塊間并行度。
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1