


チュートリアル3

問題
・チュートリアル2の結果を改善するため、キャッシュブロッキングを行う
  -O2でコンパイル、実行する


手順
・チュートリアル2でjとkをunnrollしたソースコードを
  mat_tune3_blk.f として用意済み
・キャッシュブロッキング部分を穴埋め形式で記載済み
  参考資料を参照し、キャッシュブロッキングを完成させる
   + ブロッキングサイズの有効化(コメントをはずす)
   + ブロッキング部分のループ(doとend do)の有効化(コメントをはずす)
   + kループ、iループの???部分を穴埋めし、コメントをはずす
     元のkとiはコメント化する

・コンパイルは comp_.cshを利用し、
  run.cshをqsubで投入し実行する

・結果ファイル(tune3_blk.o*****)の性能から
  キャッシュブロッキング効果を確認する


性能値
                       -O2     [GFLOPS]
   mat_tune3_blk.f     6.621  

   演習3_1 jkiループの-O3 6.150GFLOPSを上回る性能
   ちなみにチュートリアル3のブロッキングコードを
   -O3でコンパイル/実行すると、-O2と変わらない性能となっている



回答例
./answer配下を参照




