4 gprofng
コマンド・リファレンス
この表は、gprofng
コマンドに関する情報を示しています。
アクション | コマンド | 説明 |
---|---|---|
パフォーマンス・データを収集します。 |
gprofng collect app
|
実行中のアプリケーションに関するパフォーマンス・データを収集し、それを実験ディレクトリに格納します。 |
端末でパフォーマンス結果を確認します。 |
gprofng display text
|
指定された実験ディレクトリのパフォーマンス・データをASCIIプレーンテキスト形式で表示します。 |
Webブラウザでパフォーマンス・データを確認します。 |
gprofng display html
|
指定された実験ディレクトリからHTML構造を生成します。 |
ソースおよび逆アセンブリ・コードを確認します。 |
gprofng display src
|
命令でインターリーブされたソース・コードを表示します。 |
実験ディレクトリをアーカイブします。 |
gprofng archive
|
共有ライブラリ、オブジェクト・ファイルおよびソース・コードを実験ディレクトリにコピーして、後で分析します。 |
パフォーマンス・データを収集および確認するためのグラフィカル・ユーザー・インタフェースを開きます。 |
gprofng display gui
|
|
パフォーマンス・データの収集
gprofng collect app
コマンドを使用して実験を構成し、パフォーマンス・データを収集します。
パフォーマンス・データを収集するときに、-O
オプションを使用して実験ディレクトリを指定できます:
gprofng collect app -O experiment-directory-name.er /path/to/application -options
.er
は、実験ディレクトリ名に必須の接尾辞であることに注意してください。
パフォーマンス・データの収集の詳細は、「gprofngの開始」を参照してください。
パフォーマンス・メトリックの分析
gprofng display text
コマンドを使用して、実験で収集された様々なパフォーマンス・データを確認します。
各関数について収集されたパフォーマンス・データを分析するには、gprofng display text
コマンドで-functions
オプションを使用します:
gprofng display text -functions experiment-directory-name.er
Functions sorted by metric: Exclusive Total CPU Time
Excl. Total Incl. Total Name
CPU CPU
sec. % sec. %
5.554 100.00 5.554 100.00 <Total>
5.274 94.95 5.274 94.95 mxv_core
0.140 2.52 0.270 4.86 init_data
0.090 1.62 0.110 1.98 erand48_r
0.020 0.36 0.020 0.36 __drand48_iterate
0.020 0.36 0.130 2.34 drand48
0.010 0.18 0.010 0.18 _int_malloc
0. 0. 0.280 5.05 __libc_start_main
0. 0. 0.010 0.18 allocate_data
0. 0. 5.274 94.95 collector_root
0. 0. 5.274 94.95 driver_mxv
0. 0. 0.280 5.05 main
0. 0. 0.010 0.18 malloc
0. 0. 5.274 94.95 start_thread
表示される関数の数を制限するには、次のように-limit
オプションを使用します:
gprofng display text -limit 5 -functions experiment-directory-name.er
Print limit set to 5
Functions sorted by metric: Exclusive Total CPU Time
Excl. Total Incl. Total Name
CPU CPU
sec. % sec. %
5.775 100.00 5.775 100.00 <Total>
5.494 95.15 5.494 95.15 mxv_core
0.126 2.18 0.267 4.63 init_data
0.068 1.17 0.104 1.80 erand48_r
0.038 0.66 0.142 2.45 drand48
実験ディレクトリに収集されたすべてのメトリックをリストするには、他のオプションを指定せずに-metric_list
オプションを使用します:
gprofng display text -metric_list experiment-directory-name.er
Current metrics: e.%totalcpu:i.%totalcpu:name
Current Sort Metric: Exclusive Total CPU Time ( e.%totalcpu )
Available metrics:
Exclusive Total CPU Time: e.%totalcpu
Inclusive Total CPU Time: i.%totalcpu
Size: size
PC Address: address
Name: name
実験ディレクトリに収集されたメトリックを確定したら、-metrics
オプションを使用して表示されるメトリックを選択し、それぞれを:
文字で区切ります:
gprofng display text -metrics name:i.%totalcpu:e.%totalcpu -limit 10 -functions experiment-directory-name.er
Current metrics: name:i.%totalcpu:e.%totalcpu
Current Sort Metric: Exclusive Total CPU Time ( e.%totalcpu )
Print limit set to 10
Functions sorted by metric: Exclusive Total CPU Time
Name Incl. Total Excl. Total
CPU CPU
sec. % sec. %
<Total> 5.775 100.00 5.775 100.00
mxv_core 5.494 95.15 5.494 95.15
init_data 0.267 4.63 0.126 2.18
erand48_r 0.104 1.80 0.068 1.17
drand48 0.142 2.45 0.038 0.66
__drand48_iterate 0.036 0.62 0.036 0.62
_int_malloc 0.013 0.22 0.008 0.14
sysmalloc 0.005 0.09 0.003 0.05
brk 0.002 0.03 0.002 0.03
__default_morecore 0.002 0.03 0. 0.
name
などの特定のメトリックに従ってパフォーマンス・データをソートするには、-sort
オプションを追加します:
gprofng display text -metrics name:i.%totalcpu:e.%totalcpu -sort name -limit 10 -functions experiment-directory-name.er
Current metrics: name:i.%totalcpu:e.%totalcpu
Current Sort Metric: Exclusive Total CPU Time ( e.%totalcpu )
Current Sort Metric: Name ( name )
Print limit set to 10
Functions sorted by metric: Name
Name Incl. Total Excl. Total
CPU CPU
sec. % sec. %
<Total> 5.775 100.00 5.775 100.00
__default_morecore 0.002 0.03 0. 0.
__drand48_iterate 0.036 0.62 0.036 0.62
__libc_start_main 0.280 4.85 0. 0.
_int_malloc 0.013 0.22 0.008 0.14
allocate_data 0.013 0.22 0. 0.
brk 0.002 0.03 0.002 0.03
collector_root 5.494 95.15 0. 0.
drand48 0.142 2.45 0.038 0.66
driver_mxv 5.494 95.15 0. 0.
命令レベルまたはアセンブリ・レベルでメトリックを確認するには、-disasm
オプションを使用して関数名を指定します:
gprofng display text -metrics e.totalcpu -disasm function-name experiment-directory-name.er
詳細は、https://sourceware.org/binutils/wiki/gprofngおよびgprofng(1)
のマニュアル・ページを参照してください。
gprofng-guiの操作
gprofng-gui
パッケージがインストールされている場合、gprofng display gui
コマンドを使用して、gprofng
コマンドのGUIフロントエンドを開きます。
グラフィカル・ユーザー・インタフェースでパフォーマンス・データを含む実験を確認するには、gprofng-gui
パッケージで提供されるgprofng display gui
コマンドを使用します:
gprofng display gui experiment1.er
複数の実験が指定されている場合、それらはまとめて集計されます。
グラフィカル・ユーザー・インタフェースでパフォーマンス・データを含む2つの実験を比較するには、-c
オプションを使用します:
gprofng display gui -c experiment1.er experiment2.er
gprofng-gui
ツールの操作の詳細は、「Gprofng GUIの使用」を参照してください。