PMCANNOTATE(8) |
FreeBSD System Manager's Manual |
PMCANNOTATE(8) |
名称
pmcannotate —
インラインにされたプロファイルでソースをプリントアウトする
書式
pmcannotate |
[ -a][ -h][ -k pathname][ -l level] pmcout.out binaryobj |
解説
pmcannotate ユーティリティは、プロファイルに基づいて 1 行ごとにプログラムの C ソースまたはアセンブリのソースの両方を生成できます。プロファイル情報は、プログラム操作が、
objdump(1) ツールを通して検索される間に、
pmcstat(8) の生の出力で検索されます。
pmcannotate を呼び出すとき、生の出力は、プログラムが、 binaryobj 引数を通して渡される間に、 pmcout.out 引数を通して渡されます。
pmcannotate は、動作するために objdump(1) と pmcstat(8) を当てにする限り、それらの 1 つが利用可能でないなら、失敗します。
オプション
次のオプションが、利用可能です:
-
-a
-
アセンブリコードだけでインライン化されたプログラムのプロファイルを表示します。 C ソースに含まれる C の情報は、提供されません。
-
-h
-
ツールの使用法に関する情報を印刷します。
-
-l
level
-
レポートで印刷されるトレースされる関数のために (パーセントで表現される) 下限を変更します。デフォルト値は、0.5% です。
-
-k
kerneldir
-
カーネルディレクトリのパス名を引数
kerneldir に設定します。このディレクトリは、
pmcannotate カーネルとそのモジュールを検索するべきである場所を指定します。デフォルトは、
/boot/kernel です。
制限
pmcannotate が C コードを検索するために
objdump(1) ユーティリティを当てにする限り、プログラムは、デバッグオプションでコンパイルされている必要があります。時々、特に重い最適化レベルで、
objdump(1) ユーティリティは、出力を読むことを難しくする、直接呼び出し側のインライン関数のコードを埋め込みます。 x86 バージョンは、割り込まれているものに関して続く命令を集める pmcstat からのサンプリングを報告します。これは、サンプルが興味があるもの下の行に起因することをを意味します。
作者
Attilio Rao <attilio@FreeBSD.org>