Darryl Gove、2011年12月
コンピュータ・システムがますます強力になるにつれて、アプリケーション・パフォーマンスが重要な要素として浮上し、パフォーマンスの低さがアプリケーション障害と見なされることが増えています。 現在、開発者は、ソース・コードの重要な部分を効率化するとともに、アプリケーションの精度に影響を及ぼさずに、プログラム上のエラーやコーディングの欠陥を見つける必要があることを強く認識しています。 Oracle Solaris Studioに付属しているパフォーマンス・アナライザを使用すると、これらの作業に役立ちます。
アプリケーションの分析を支援するため、パフォーマンス・アナライザでは、機能レベルやロード・オブジェクト・レベルでのデータ表示を含め、収集したパフォーマンス・データをさまざまな方法で表示できます。 表示するメトリックやメトリックの表示順序を制御できます。
パフォーマンス・アナライザを使用するには、任意のレベルのパラレル化および最適化でアプリケーションをコンパイルします。
注: パラレル化と最適化については、詳しくは『アプリケーションのパラレル・パフォーマンスを最適化する方法』と『アプリケーションのシリアル・パフォーマンスを最適化する方法』を参照してください。
また、ソース・コードを参照し、ソース・コードの行に時間を割り当てるには、-g
オプションも指定する必要があります。
次に、collect
コマンドを使用してアプリケーションを実行します。 このコマンドでは、PIDを指定できます。たとえば、次のようにします。
% collect -P <pid>
または、collect
コマンドを使用して、アプリケーションとそのパラメータを起動することもできます。
% collect <application> <parameters>
collect
コマンドを使用すると、アプリケーション実行時の評価パフォーマンス・データが収集されて、分析プロセスで後に使用するtest.1.er
という名前の評価ファイルにデータが保存されます。 collect
コマンドで、次の項目に関する情報を取得できます。
評価が完了したら、コマンドラインまたはアナライザのGUIのFileメニューを使用して、test.1.er
ファイルからパフォーマンス・アナライザに評価データをロードします。
たとえば、パフォーマンス・アナライザを起動してコマンドラインから1つまたは複数の評価ファイルをロードするには、次のコマンドを入力します。
% analyzer <control-options> <experiment-file(s)>
以降の項では、パフォーマンス・アナライザのGUIに表示されるいくつかのタブについて説明します。 これらのタブおよびその他のタブについて、詳しくはOracle Solaris Studioパフォーマンス・アナライザのドキュメントを参照してください。
Functionsタブ(図1)には、機能の一覧とこれらの機能のメトリックが表示されます。 これらのメトリックは、評価で収集されたデータから取得されます。 メトリックは、排他的にも包括的にもできます。 排他的なメトリックにはその機能自体内の使用状況が表示され、包括的なメトリックにはその機能内およびその機能が呼び出したすべての機能の使用状況が表示されます。
図1. Functionタブで、時間がかかった箇所を把握
Callers-Calleesタブでは、中央のペインに選択した機能が表示され、上部のペインにその機能のコール元が表示され、下部のペインにその機能コール先が表示されます(図2)。
選択した機能については、関連するメトリックにその機能に割り当てられた時間が表示されます。 コール先については、関連するメトリックに、選択した機能からのコールに割り当てられたコール先の包括的なメトリックの部分が表示されます。
図2. Callers-Calleesタブで、選択した機能に割り当てられた時間を把握
-g
(デバッグ)オプションを使用してコードをコンパイルした場合、選択した機能のソース・コードとともに、各ソース行のパフォーマンス・メトリックに関する注釈とコンパイラのコメントを表示できます(図3)。
図3. Sourceタブで、各ソース行のパフォーマンス・メトリックを把握
Disassemblyタブ(図4)には、アプリケーションのアセンブリ言語表示が表示されます。 -g
(デバッグ)オプションを使用してアプリケーションをコンパイルした場合、表示には逆アセンブリの情報とソース・コードが交互に配置されます。
図4. Disassemblyタブで、逆アセンブリされたコードを把握
Timelineタブ(図5)では、選択したイベントのアプリケーション・タイムラインとコール・スタックを表示できます。
図5. Timelineタブでは、アプリケーション・タイムラインとコール・スタックのグラフ表示が可能
Oracle Solaris Studioについては、詳しくはOracle Solaris Studioの完全な製品ドキュメントを参照してください。
次のドキュメントも参照してください。
リビジョン1.0、13.12.11 |
Facebook、Twitter、またはOracle Blogsで最新情報をご確認ください。