Sun Visual WorkShop C++ の概要

チューニング

デバッグが完了したら、標本アナライザを使って、プログラムのパフォーマンスを評価し、メモリーを割り当てるなどの調整作業を行います。標本アナライザでアプリケーションのパフォーマンスプロファイルを測定すると、結果がグラフィック表示されます。この結果を元に、パフォーマンスを向上させるための方策を立ててください。標本アナライザは、特殊なデータ収集手法によって、コンパイルされたプログラムをすべて解析することができます。したがって、コンパイルとリンクの作業を繰り返す必要がありません。

さまざまなパフォーマンスデータの解析

次に、標本アナライザで解析することができるパフォーマンスデータを紹介します。

解析の制御

デバッガは、標本アナライザによるデータ収集処理の前段階として機能します。プログラムの実行中に、dbx またはデバッガから標本コレクタのウィンドウを開いて、データ収集処理を制御することができます。ブレークポイント間のデータだけを収集したり、プログラムの特定の部分のデータだけを収集することもできます。データ収集プログラムの実行のことを「実験」、コレクタが作成したデータファイルのことを「実験記録」と呼びます。実験記録を読み込んだら、標本アナライザで、パフォーマンスの問題点を特定します。


注 -

パフォーマンスのチューニングと実行時検査は、互いに排他的な処理です。同時には実行しないでください。同時に実行すると、チューニングに関する情報に悪影響が出る場合があります。


問題点の抽出

パフォーマンス上の問題が発生している部分に的を絞って、プログラムの動作を仮定したテストを行います。パフォーマンスが向上するようにプログラムを再構築したい場合は、標本アナライザでマップファイルを生成します。このマップファイルには、プログラムのアドレス空間に関数を読み込む順序が記述されています。場合によっては、マップファイルの指示に従って、リンカーが関数をメモリーに再マッピングすることもあります。この場合、パフォーマンスは自動的に改善されます。

呼び出しモジュールの検索

パフォーマンス解析ツールでは、コマンドのタイミングの解析からプログラムの文単位の解析まで、広範囲に及ぶ解析処理を行うことができます。フラットプロファイルはパフォーマンスの改善に役立つ重要なデータを提供しますが、そのデータだけでは、改善の必要がある個所を正確に特定できないことがあります。この場合は、コールグラフプロファイルを使用して、より詳しい解析データを取得します。このデータから、呼び出し元のモジュールと、呼び出し先のモジュールを特定することができます。