JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Studio 12.3: パフォーマンスアナライザ     Oracle Solaris Studio 12.3 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  パフォーマンスアナライザの概要

パフォーマンス解析ツール

コレクタツール

パフォーマンスアナライザツール

er_print ユーティリティー

「パフォーマンスアナライザ」ウィンドウ

2.  パフォーマンスデータ

3.  パフォーマンスデータの収集

4.  パフォーマンスアナライザツール

5.   er_print コマンド行パフォーマンス解析ツール

6.  パフォーマンスアナライザとそのデータについて

7.  注釈付きソースと逆アセンブリデータについて

8.  実験の操作

9.  カーネルプロファイリング

索引

パフォーマンス解析ツール

このマニュアルでは、コレクタとパフォーマンスアナライザについて説明します。これらは、アプリケーションのパフォーマンスデータを収集および解析するために使用する 1 組のツールです。また、このマニュアルでは、収集したパフォーマンスデータをテキスト形式で表示し解析するためのコマンド行ツールである er_print ユーティリティーについても説明します。アナライザと er_print ユーティリティーは、ほぼ同じデータを表示しますが、ユーザーインタフェースが異なります。

スポットという名前の追加の Oracle Solaris Studio ツールを使用すると、アプリケーションについてのパフォーマンスレポートを作成できます。これは、パフォーマンスアナライザの補完ツールになります。詳細は、spot(1) のマニュアルページを参照してください。

コレクタとパフォーマンスアナライザは、パフォーマンスチューニングが主な担当ではない開発者も含めて、すべてのソフトウェア開発者を対象として設計されています。これらのツールは、一般的に使用されているプロファイリングツールの prof および gprof に比べて柔軟性が高く、詳細で正確な解析が可能になります。また、gprof に見られる時間の因果関係の判定の誤りもありません。

これらのツールは、次のような疑問の解決に役立ちます。

コレクタツール

コレクタツールは、プロファイリングと呼ばれる統計手法を使用し、関数呼び出しをトレースすることによって、パフォーマンスデータを収集します。このデータには、呼び出しスタック、マイクロステートアカウンティング情報 (Oracle Solaris プラットフォームのみ)、スレッド同期遅延データ、ハードウェアカウンタのオーバーフローデータ、MPI (Message Passing Interface) 関数呼び出しデータ、メモリー割り当てデータ、およびオペレーティングシステムとプロセスの概要情報が含まれる可能性があります。コレクタは C、C++、および Fortran に関するプログラムのあらゆる種類のデータを収集できるとともに、Java プログラミング言語で書かれたアプリケーションに関するプロファイルデータを収集できます。また、動的に生成される関数と派生プロセスに関するデータも収集できます。収集対象のデータについては第 2 章パフォーマンスデータを、コレクタの詳細については第 3 章パフォーマンスデータの収集を参照してください。コレクタは、パフォーマンスアナライザ GUI から、dbxコマンド行ツールから、および collect コマンドを使用して実行できます。

パフォーマンスアナライザツール

パフォーマンスアナライザツールは、ユーザーがパフォーマンスデータを評価できるように、コレクタによって記録されたデータを表示します。パフォーマンスアナライザはデータを処理し、プログラム、関数、ソース行、および命令のレベルでパフォーマンスに関するさまざまなメトリックを表示します。これらのメトリックは、次の 5 つのグループに分類されます。

パフォーマンスアナライザのタイムラインには、raw データが時間の関数としてグラフィカル形式で表示されます。

パフォーマンスアナライザでは、ターゲットプログラムのデータ領域の構造およびメモリーサブシステムの構造的コンポーネントに関するパフォーマンスのメトリックも表示できます。このデータは、ハードウェアカウンタメトリックの拡張です。

さらに、パフォーマンスアナライザでは、スレッドアナライザのデータを表示できます (スレッド分析実験を検査するために設計されたパフォーマンスアナライザの特殊なビュー)。パフォーマンスアナライザをこの特殊なビューで開始するには別のコマンド tha が使用され、この方法で開始されるツールはスレッドアナライザとして知られています。

スレッドアナライザでは、これらのタイプのデータを検査するために生成できる実験でのデータ競合およびデッドロックを表示できます。スレッドアナライザの使用方法については、別のマニュアル『Oracle Solaris Studio 12.3: スレッドアナライザユーザーズガイド』に説明されています。

パフォーマンスアナライザについての詳細は、第 4 章パフォーマンスアナライザツールおよびパフォーマンスアナライザのオンラインヘルプを参照してください。

第 5 章 er_print コマンド行パフォーマンス解析ツールでは、er_print コマンド行インタフェースを使用し、コレクタが収集したデータを解析する方法について説明しています。

第 6 章パフォーマンスアナライザとそのデータについてでは、パフォーマンスアナライザとそのデータに関連する、データ収集の動作、パフォーマンスメトリックの解釈、呼び出しスタックとプログラムの実行などのトピックについて説明しています。

第 7 章注釈付きソースと逆アセンブリデータについてでは、注釈付きソースと逆アセンブリについて説明し、パフォーマンスアナライザが表示する各種インデックス行とコンパイラのコメントを解説します。コンパイラコメントが含まれているけれどもパフォーマンスデータが含まれていない注釈付きソースコードリストおよび逆アセンブリコードリストは、er_src ユーティリティーで表示できますが、これについてもこの章で説明します。

第 8 章実験の操作では、実験のコピー、移動、削除、実験へのラベルの追加、および実験のアーカイブとエクスポートの方法について説明します。

第 9 章カーネルプロファイリングでは、Oracle Solaris オペレーティングシステムが負荷を実行中に、Oracle Solaris Studio のパフォーマンスツールを使用してカーネルをプロファイリングする方法について説明しています。


注 - パフォーマンスアナライザのデモコードは、http://www.oracle.com/technetwork/server-storage/solarisstudio/downloads/ の Oracle Solaris Studio 12.3 Sample Applications ダウンロードページから、サンプルアプリケーション zip ファイルとしてダウンロードできます。

ダウンロード後、選択したディレクトリに zip ファイルを抽出できます。サンプルアプリケーションは、SolarisStudioSampleApplications ディレクトリの PerformanceAnalyzer サブディレクトリにあります。アナライザでのサンプルコードの使用方法については、各サンプルディレクトリの README ファイルを参照してください。


er_print ユーティリティー

er_print ユーティリティーは、パフォーマンスアナライザにより提示されるすべての情報のうち、タイムライン、MPI タイムライン、および MPI グラフを除く情報を、標準テキストで出力します。これらの表示は本質的にグラフィカルであり、テキスト表示にはできません。