中文引用格式: 陳閩昊,邊浩東. 基于GPU的稀疏矩陣壓縮存儲格式研究[J]. 電子技術應用,2024,50(11):1-8.
英文引用格式: Chen Minhao,Bian Haodong. Sparse matrix compressed storage format based on GPU[J]. Application of Electronic Technique,2024,50(11):1-8.
引言
在過去的很長一段時間中,SpMV都是科學計算和工程應用領域中大規(guī)模稀疏性系統(tǒng)問題求解的常用方法,也因此其實現(xiàn)和優(yōu)化一直是高性能領域研究中的重點。SpMV計算簡化為一個大小為m×n的稀疏矩陣A與長度為n的密集向量x相乘,從而得到一個長度為m的向量y。
隨著稀疏矩陣規(guī)模的擴大,同時又因為其數(shù)據(jù)具有著分布稀疏無規(guī)則的問題,普通的順序計算和簡單的并行優(yōu)化無法滿足現(xiàn)階段科學計算和工程應用領域的要求,所以人們嘗試使用更快速的并行優(yōu)化算法以及提出更優(yōu)質(zhì)的壓縮存儲格式來加速大規(guī)模的SpMV計算。根據(jù)稀疏矩陣稀疏性、不規(guī)則性的特點,加速SpMV算法的難點主要集中在解決以下幾個問題上:(1)并行單元上負載不均衡導致的線程發(fā)散;(2)數(shù)據(jù)存儲不規(guī)則導致的頻繁訪存所產(chǎn)生的額外開銷;(3)低效矢量化產(chǎn)生的內(nèi)存訪問沖突和數(shù)據(jù)依賴性。現(xiàn)階段許多的壓縮存儲格式也從這幾個方面入手加速大規(guī)模SpMV運算,例如BELLPACK、CVR、BCCOO、ACSR、CSR5[1-4]等。
本文也從這上述幾個方面入手,提出了一種新的格式名為VCSR,VCSR格式以CSR格式作為基礎,根據(jù)各行非零元素分布的統(tǒng)計特性,將數(shù)據(jù)以負載均衡的方式分發(fā)給各個線程。在這個過程中,將行作為數(shù)據(jù)分配的基礎單元,保證了線程與線程之間數(shù)據(jù)處理的相互獨立,不會產(chǎn)生數(shù)據(jù)依賴以及訪問沖突。最后,在每個并行單元中,使用快速分段求和的策略和矢量化的方式來加速SpMV內(nèi)核程序的計算性能。
本文詳細內(nèi)容請下載:
http://theprogrammingfactory.com/resource/share/2000006202
作者信息:
陳閩昊,邊浩東
(青海大學 計算機技術與應用學院,青海 西寧 810016)