- 著者
-
菱沼 利彰
藤井 昭宏
田中 輝雄
長谷川 秀彦
- 雑誌
- 情報処理学会論文誌コンピューティングシステム(ACS) (ISSN:18827829)
- 巻号頁・発行日
- vol.7, no.4, pp.25-33, 2014-12-16
高精度演算を用いることでKrylov部分空間法の収束を改善できるが,高精度演算はコストが高いことが知られている.高精度演算の1つに,倍精度を2つ組み合わせて4倍精度演算を行う倍々精度演算がある.我々は,IntelのSIMD拡張命令であるAVX2を用いてBCRS形式の倍精度疎行列と倍々精度ベクトルの積(DD-SpMV)の高速化を行った.AVX2を用いたCRS形式のDD-SpMVでは,各行で端数処理などを必要とするが,BCRS形式は端数処理をなくし,メモリアクセスを改善できる.しかし,BCRS形式は演算量が増加する.本論文では,AVX2に適したBCRS形式のブロックサイズと,増加した演算量と端数処理の削減,メモリアクセスの改善効果のトレードオフについて示した.実験の結果,AVX2に最も適したブロックサイズは4×1であることが分かった.また,メモリアクセスの改善効果はサイズの大きい問題ほど有効で,行列サイズが10 5以上のとき,演算量が3.3倍以上になるケースにおいても,BCRS4×1にすることでCRS形式の実行時間を約45%に短縮できることを確認した.