[目次] [1ページ目] [前ページ] [次ページ] [質疑応答]
(3/6)

3. コンパイラの性能

 WWW サイトnetlib で公開されている、Test Suite for Vectorizing Compilers[1] ( 通称ANLベクトル化コンテストプログラム) は合計135 個のループを使って自動ベクトル化コンパイラの能力解析を行うFortran プログラムである。したがって、このプログラムは自動並列化コンパイラの能力解析を目的に作られたわけではないが、ループの並列化解析の観点からは自動並列化の能力診断にも使えるであろう。また、ベクトル計算機用にコーディングされたプログラムが書き換えなしにどの程度自動並列化されるかという点からも興味がある。各機種で自動並列化または自動ベクトル化されたループ数を表3 に示す。
 通常、コンパイル時間を性能評価の対象にすることはないが、SR8000 で実測したところ非常に長くなる場合があったので参考のため測定した。コンパイラオプションは、GP7000 の1CPU 用では'-Kfast' を、8CPU 用では'-Kfast,parallel,reduction' をそれぞれ指定した。SR8000 の1CPU 用では'-Oss -noparallel -nolimit' を、8CPU 用では'-Oss -procnum=8-nolimit -pvfunc=2' をそれぞれ指定した。プログラムのコンパイルに要するCPU 時間と経過時間の測定結果を表4 に示す。GP7000 およびVPP5000 ではいずれのプログラムも数秒から数十秒でコンパイルが終了するが、SR8000 では100 秒を越えるプログラムが3 つあり、特にプログラム2 の8CPU 用では20 分以上を要した。


[目次] [1ページ目] [前ページ] [次ページ] [質疑応答]