Abst

第 23 回数値流体力学シンポジウム
講演番号 E3-2
数値データ圧縮ハードウェアによる格子ボルツマン法専用計算機の
メモリ帯域向上に関する一考察
Improving Effective Memory Bandwidth of Lattice Boltzmann Accelerators
with Real-Time Compression Hardware for Numerical Data-Stream
○
片平 和也, 東北大院, 仙台市青葉区荒巻字青葉 6-6-01, E-mail: [email protected]
佐野 健太郎, 東北大情報, 仙台市青葉区荒巻字青葉 6-6-01, E-mail: [email protected]
山本 悟, 東北大情報, 仙台市青葉区荒巻字青葉 6-6-01, E-mail: [email protected]
Kazuya Katahira, Dept. of Computer and Mathematical Sciences, Tohoku Univ., Sendai 980-8579, Japan
Kentaro Sano, Dept. of Computer and Mathematical Sciences, Tohoku Univ., Sendai 980-8579, Japan
Satoru Yamamoto, Dept. of Computer and Mathematical Sciences, Tohoku Univ., Sendai 980-8579, Japan
On-the-fly compression of floating-point data is promising not only for reducing time of data transfer to/from NAS
and of message-passing in parallel computing, but also for improving effective memory bandwidth of stream
computation. To achieve high-speed floating-point compression, we are developing a special-purpose hardware, and
applying it to memory I/O of our FPGA(Field-Programmable Gate Array)-based accelerators for the lattice Boltzmann
method (LBM). For hardware implementation, we focus on prediction-based algorithms. In this paper, we evaluate the
prediction methods of the previously proposed algorithms in terms of compression performance for temporal data of
LBM.
Normalized size of compressed data (%)
1.緒言
現在, 数値シミュレーションに求められている高い計算性能を
実現するため, ストリーム計算に基づく専用計算機が提案されて
いる. 本研究室では, これまでに FPGA を用いて格子ボルツマン
法のためのストリーム計算に基づく専用計算機の設計, 及び実装
を行った. この専用計算機は汎用マイクロプロセッサよりも高い
性能を示したが, 外部メモリからのデータ供給速度が原因となり,
性能向上に限界が見られた. これに対して, 我々は, データ圧縮
により, ストリーム計算の入出力データデータ量を削減し, 見か
け上のメモリ帯域を拡大することがストリーム計算の性能向上に
有効であると考えられる.
本研究では, FPGA によるデータ圧縮・復号ハードウェアを実装
し, ストリーム計算機に組み込み計算性能を向上させることを最
終的な目標としている. 本稿では, 格子ボルツマン計算アクセラ
レータのための高スループット圧縮・復号ハードウェアを開発す
るに当たり, 既存の圧縮アルゴリズムと, ハードウェア実装を考
慮して改良を行った圧縮アルゴリズムの性能評価を行う.
100
80
60
40
20
0
l
)
)
)
t
r
ns ea elta iona nt(2 nt(4 nt(8enzoHash gzip
it me me me or
Co Lin 2D
d
n g
g L
g
Co Se Se Se
Predictor
Fig. 1 Normalized size of compressed data.
2.予測に基づく圧縮アルゴリズム
格子ボルツマン法による計算結果のような, 2次元, あるいは3
次元のスカラ場またはベクトル場のデータは, 数値列として流れ
方向に連続してデータを出力する場合, すでに入力された値から
次に入力される値を n 次の多項式等により予測することが可能で
ある. 予測に基づく圧縮アルゴリズムでは, この予測値と実際の
値の差分の大半を占める MSB から連続した 0 を符号化して出力,
残りのビット列はそのまま出力することにより, データ容量を削
減する.
本稿では, 評価を行う圧縮アルゴリズムとして以下のものを用
いた. まず, Const は直前に入力された値を予測値とするもので
ある. Linear, Second-Order はそれぞれ 1 次, 2 次の差分を用い
て予測値を計算する手法である. Conditional は上記 3 つの予測
式のうち, 条件により最適なものを選択する手法である.
Segment-Parallel は, 同時に複数の予測値を計算できるように
並列性を高める改良を行った手法である. Lorenzo1)は 2 次元デー
タの特性を活かした手法である. Hash2)は, ハッシュテーブルを
用いて連続する入力値のパターンを元に予測値を計算する手法で
ある.
の圧縮率も求めた. 予測に基づく圧縮により, gzip よりも優れた
圧縮率を得ることが出来た. また, 並列性を増加させた改良アル
ゴリズムを用いた場合でも, Hash や Lorenzo, Linear よりもよい
圧縮率が達成できた.
4.結言
本研究では, 格子ボルツマン法専用計算機のためのデータスト
リーム圧縮・復号ハードウェアの開発を行っており, 本稿では,
予測に基づく圧縮アルゴリズムの性能評価を行った. その結果,
既存の圧縮アルゴリズムを基に, 並列性を高める改良を行ったア
ルゴリズムも 50%程度に計算途中データを圧縮可能であることが
分かった.
今後は, 並列化を行ったアルゴリズムの更なる圧縮率の向上を
図ると共に, FPGA による試作実装と評価を行う予定である.
参考文献
1) L. Ibarria, P. Lindstrom, J. Rossignac and A. Szymcrak:
“Out of Core Compression and Decompression of Large
n-Dimensional Scalar Fields,” Proc. of Eurographics,
pp.343-348, 2003.
2) Maritn Burtscher and Paruj Ratanaworabhan: “FPC:
High-Speed
Compressor
for
Double-Prexision
Floating-Point Data,” IEEE Trans. on Computers,
vol.58, No.1, pp.18-31, 2009.
3.結果
先に述べた予測方式をソフトウェア実装し, 格子ボルツマン計
算の計算途中データに対する圧縮率の評価を行った. 比較対象と
して, UNIXで標準的な圧縮プログラムとして用いられているgzip
1
Copyright © 2009 by JSFM