題目 リング型アレイアクセラレータのマクロパイプライン化による高速化

藤原 知弘 (1251091)


近年,データ転送速度に比べて,PCやアクセラレータの演算性能は大きく向上したため,性能のバランスが崩れてハードウェアを有効活用できないケースが増加している.大規模シミュレーションにも用いられるメモリ集約型演算のステンシル演算は,その特性からデータ転送性能がボトルネックとなる事が多い.

私達は実行速度を高めるリング型アレイアクセラレータとしてEMAX(Energy-aware Multimode Accelerator eXtension)

を提案している.EMAXはプログラム内の命令を演算器アレイユニットにそれぞれ命令を割り当てることで,

命令を一括処理し,並列度の高い2重ループの最内ループ内のプログラム等を高速に実行し,

並列度の低い部分はホストの動作周波数の高い既存のプロセッサを用いて実行する.\\~~

しかし,他のアクセラレータと同様に,演算速度に比べ,ホスト・アクセラレータ間のDMA転送によるデータ通信速度が比較的遅いため,アクセラレータの

演算処理をデータ通信とオーバーラップさせる必要がある.

本研究では,ホストPCFPGAのオンボードメモリとEMAXが持つローカルメモリを用いて,演算と転送のパイプライン実行を実現する.また,そのためには,演算用のデータとプリフェッチデータを同時に扱う必要があるが,1ポートメモリを用いてプリフェッチを行う仕組みを導入することで,効率的に同時実行を行う.\\~~

提案手法により典型的なステンシル計算においては,インターフェースが理想的なら,同じ条件で実行したマクロパイプラインなしのEMAXと比較して,約10%の面積増加でプログラムの実行時間が50%減少することが分かった.