プログラムのパフォーマンス解析

ループ解析ツール

計算集約的な Fortran アプリケーションにはループレベルの並列化は不可欠であり、ループ内で大量のデータセットに対する計算が処理されます。Sun WorkShop では、FORTRAN 77、Fortran 90、そして C のプログラムの自動並列化機能を介して、こうした並列化を利用できます。プログラム中のループを並列化するには、コンパイラを使用します。そして、FORTRAN 77、Fortran 90、C コンパイラによって並列化されたループの検証には、ループツールまたはループレポートを使用します。

ループツール

ループツールは、Fortran または C コンパイラによってループ解析用にコンパイルされたプログラムによって生成されるループタイミングファイルを読み込むグラフィカルな分析ツールです。ループツールによって、以下の解析が可能となります。

ループツールはループ実行時間のグラフを表示し、どのループが並列化されているかを識別します。この表示画面からどのループのソースコードにも直接移動することが可能です。

ループツールを使用するには、-Zlp オプションを指定してプログラムをコンパイルします。-Zlp オプションを指定してコンパイルされたこのプログラムを実行すると、Sun WorkShop はループタイミングファイルを生成します。その後、ループツールを実行し、このタイミングファイルを読み込み、その結果を表示します。Sun WorkShop には、vgam という名前のデモンストレーション用プログラムと vgam.looptimes という名前のデモンストレーション用タイミングファイルが用意されています。Sun WorkShop の「ツール」メニューからループツールを起動すると、これらのファイルの結果が表示されます。これらのデモを利用して、ループツールの機能に慣れることもできますし、すでに -Zlp オプションを指定してコンパイルしたプログラムが手元にある場合は、そのファイルを指定することも可能です。ループツールについては、第 3 章「ループ解析ツール」で解説します。

ループレポート

ループレポートは、ループツールのコマンド行バージョンです。ループレポートは、グラフィカルな表示ではなく、ループ時間に関する ASCII ファイルを作成します。ループレポートについては、第 3 章「ループ解析ツール」で解説します。