FreeBSD 日本語マニュアル検索 (jman/japropos/jwhatis)


日本語 man コマンド類 (ja-man-1.1j_5) と日本語 man ドキュメント (ja-man-doc-5.4 (5.4-RELEASE 用) など) をインストールすると、以下のような man コマンド閲覧、キーワード検索が コンソールからできるようになります。

4.11-RELEASE-K, 5.4-RELEASE-K, 5.5-RELEASE-K, 6.0-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K, 12.1-RELEASE-K は、 プライベート版 (小金丸が編集してまとめたもの) ですが、 より多くの翻訳したファイルが含まれています。 (5.4-RELEASE-K から 6.4-RELEASE-K, 7.0-RELEASE-K から 7.4-RELEASE-K, 8.0-RELEASE-K から 8.4-RELEASE-K, 9.0-RELEASE-K から 9.3-RELEASE-K, 10.0-RELEASE-K から 10.3-RELEASE-K, 11.0-RELEASE-K から 11.4-RELEASE-K, 12.0-RELEASE-K から 12.4-RELEASE-K, 13.0-RELEASE-K から 13.3-RELEASE-K, 14.0-RELEASE-K から 14.1-RELEASE-K は、全翻訳済み)

13.3-STABLE-K, 15.0-CURRENT-K は現在、作成中で日々更新されています。



検索コマンド: man apropos whatis
コマンド/キーワード:
日本語マニュアル RELEASE :
セクション:
Table of Contents
名称 | 書式 | 解説 | 関連ファイル | 関連項目 | 歴史 | バグ
GPROF(1)                FreeBSD 一般コマンドマニュアル                GPROF(1)

名称
     gprof -- 呼び出しグラフプロファイルデータを表示する

書式
     gprof [-abKlLsuz] [-C count] [-e name] [-E name] [-f name] [-F name]
           [-k fromname toname] [a.out [a.out.gmon ...]]

解説
     gprof ユーティリティは、C、Pascal または Fortran77 プログラムの実行プロ
     ファイルを生成します。呼び出されるルーチンの効果は、各呼び出し側のプロ
     ファイルに組み込まれます。プロファイルデータは、cc(1), pc(1)f77(1)-pg オプションでコンパイルされるプログラムによって作成される呼び出しグラ
     フプロファイルファイルから取られます。また、-pg オプションは、プロファイ
     リングのためにコンパイルされるライブラリルーチンのバージョンでリンクしま
     す。慣例によって、これらのライブラリは、_p の接尾辞をつけられたそれらの名
     前があります、すなわち、libc.a のプロファイルされたバージョンは、libc_p.a
     であり、利用者がコンパイラまたはリンカにライブラリを直接指定するなら、利
     用者は、-lc の代わりに -lc_p を使用することができます。与えられたオブジェ
     クトファイル (デフォルトは、a.out) を読み込み、そのシンボルテーブルと呼び
     出しグラフプロファイルの間の関係を構築します。デフォルトのグラフプロファ
     イルのファイル名は、追加された接尾辞 .gmon がある実行形式の名前です。複数
     のプロファイルファイルが指定されるなら、gprof の出力は、与えられたプロ
     ファイルファイルのプロファイル情報の合計を表示します。

     gprof ユーティリティは、各ルーチンで費された時間の合計を計算します。次
     に、これらの時間は、呼び出しグラフのエッジに沿って伝搬されます。サイクル
     が、発見され、サイクルへの呼び出しは、サイクルの時間を共有するために行わ
     れます。最初のリストは、それらが、呼び出しグラフの子孫の時間を含むことを
     表している時間にしたがってソートされた関数を示します。各関数のエントリに
     下では、その (直接的な) 呼び出しグラフの子供と、それらの時間が、どのよう
     にこの関数に伝搬されるかを表示します。上記の関数の同様の表示は、どのよう
     にこの関数の時間とその子孫の時間が、その (直接的な) 呼び出しグラフの親に
     伝搬されるかを表示します。

     また、サイクルは、全体としてのサイクルのためのエントリ、サイクルのメンバ
     のリスト、時間へのそれらの寄与とサイクルの呼び出しカウントで表示されま
     す。

     2 番目に、フラットなプロファイルは、prof(1) によって提供されたものと同様
     に与えられます。このリストは、合計の実行時間、呼び出しカウント、呼び出し
     が、それ自体のルーチンで費された時間と呼び出しが、その子孫を含んでいるそ
     れ自体のルーチンで費された時間を与えます。呼び出しごとの時間のための単位
     は、通常ミリ秒ですが、それらは、プロファイリングのクロック周波数が 1000
     万以上であるなら、ナノ秒で、関数が決して呼び出しで現れないなら、その合計
     自体の時間は、呼び出しカラムごとの自体の時間でパーセンテージとして印刷
     (表示) されます。短命なプログラムのための呼び出しごとの時間の十分な精度を
     得るために必要な非常に高いプロファイリングクロック周波数は、``high
     resolution'' (高い解像度) (非統計) カーネルプロファイリングのためだけに実
     装されています。

     最後に、関数名のインデックスが提供されます。

     次のオプションが利用可能です:

     -a      静的に宣言された関数の印刷 (表示) を抑制します。このオプションが
             与えられるなら静的な関数 (例えば、時間のサンプル、他の関数への呼
             び出し、他の関数からの呼び出し) に関するすべての関連した情報は、
             a.out ファイルの静的な関数のすぐ前にロードされた関数に属していま
             す。

     -b      プロファイルの各フィールドの説明の印刷 (表示) を抑制します。

     -C count
             count またはより多くのメンバですべてのサイクルを削除するために壊
             されることができる円弧の最小のセットを見つけます。警告: サイクル
             を壊すために使用されるアルゴリズムは、指数であるので、このオプ
             ションを使用することによって、gprof は、非常に長い時間実行しま
             す。

     -e name
             ルーチンの name と (それらに、抑制されない他の祖先がないなら) す
             べてのその子孫のためのグラフプロファイルエントリの印刷 (表示) を
             抑制します複数の -e オプションを与えることができます。ただ 1 つの
             name だけを、各 -e オプションで与えることができます。

     -E name
             上記の -e のように、ルーチン name (と、その子孫) のためのグラフプ
             ロファイルエントリの印刷 (表示) を抑制し、また、合計とパーセン
             テージの時間の計算から name (と、その子孫) で費された時間を除外し
             ます。(例えば、-E mcount -E mcleanup は、デフォルトです。)

     -f name
             指定されたルーチン name とその子孫だけのグラフプロファイルエント
             リを印刷 (表示) します。複数の -f オプションを与えることができま
             す。ただ 1 つの name だけを、各 -f オプションで与えることができま
             す。

     -F name
             (上記の -f のように) ルーチン name とその子孫のみのグラフプロファ
             イルエントリを印刷 (表示) し、また、合計時間とパーセンテージ計算
             で印刷 (表示) されたルーチンの時間だけを使用します。複数の -F オ
             プションを与えることができます。ただ 1 つの name だけを、各 -F オ
             プションで与えることができます。-F オプションは、-E オプションを
             上書きします。

     -k fromname toname
             ルーチン fromname からルーチン toname へのあらゆる円弧を削除しま
             す。これは、要求されていないサイクルをブレークするために使用する
             ことができます。複数の -k オプションを与えることができます。ただ
             1 つのルーチン名のペアだけを、各 -k オプションで与えることができ
             ます。

     -K      sysctl(3)kldsym(2) インタフェースを使用して現在実行している
             カーネルからのシンボルに関する情報を集めます。これによって、a.out
             引数を無視することを強制し、使用される kld(4) モジュールのシンボ
             ルを許可します。

     -l      呼び出しグラフプロファイルの印刷 (表示) を抑制します。

     -L      フラットなプロファイルの印刷 (表示) を抑制します。

     -s      プロファイルファイル gmon.sum は、すべての指定されたプロファイル
             ファイルのプロファイル情報の合計を表しているものを生成します。こ
             の要約のプロファイルファイルは、a.out ファイルのいくつかの実行に
             渡ってプロファイルデータを蓄積する gprof (また、-s もたぶん) の後
             の実行に与えられうます。

     -u      名前が C プログラムに見えない関数の印刷 (表示) を抑制します。ELF
             オブジェクト形式について、これは、`.' 文字を含んでいる名前を意味
             しています。a.out オブジェクト形式について、それは、`_' 文字で始
             まらない名前を意味しています。そのような関数に関するすべての関連
             した情報は、次の最も低いアドレスで (抑制されない) 関数に属してい
             ます。これは、まさに他の関数の内側のラベルである "関数" を削除す
             るために役に立ちます。

     -z      (呼び出しカウントと累積された時間によって表示されるように) 0 の使
             用法があるルーチンを表示します。

関連ファイル
     a.out       名前リストとテキスト空間。
     a.out.gmon  動的な呼び出しグラフとプロファイル。
     gmon.sum    要約された動的な呼び出しグラフとプロファイル。

関連項目
     cc(1), profil(2), clocks(7), pmcstat(8)

     S. Graham, P. Kessler, and M. McKusick, "An Execution Profiler for
     Modular Programs", Software - Practice and Experience, 13, pp. 671-685,
     1983.

     S. Graham, P. Kessler, and M. McKusick, "gprof: A Call Graph Execution
     Profiler", Proceedings of the SIGPLAN '82 Symposium on Compiler
     Construction, SIGPLAN Notices, 6, 17, pp. 120-126, June 1982.

歴史
     gprof プロファイラは、4.2BSD で登場しました。

バグ
     サンプリングの粒度は、表示されますが、よくても統計を残します。関数の実行
     ごとの時間が、関数がが呼び出される回数によって分割された関数のための合計
     の時間によって表現できることを仮定します。したがって、関数の両親への呼び
     出しグラフ円弧に沿って伝搬される時間は、円弧が横断される回数に直接比例し
     ます。

     それら自体にプロファイルされない両親は、それらに伝搬されるそれらのプロ
     ファイルされた子供の時間がありますが、それらは、呼び出しグラフのリストで
     自発的に呼び出されるように思われ、さらに伝搬されるそれらの時間がありませ
     ん。同様に、シグナルの捕獲者は、たとえプロファイルされても、自発的である
     ように思われます (が、より不明瞭な理由のためです)。シグナルの捕獲者のあら
     ゆるプロファイリングされる子供は、シグナルの捕獲者がプロファイリングルー
     チンの実行の間に呼び出されないなら、その場合に、すべてが失われます、適切
     に伝搬されるれらの時間があるべきです。

     プロファイルされるプログラムは、exit(3) を呼び出さなければならないか、ま
     たは通常、グラフプロファイルファイルに保存されるプロファイリング情報を返
     さなければばなりません。

FreeBSD 11.4                   November 27, 2017                  FreeBSD 11.4

Table of Contents

FreeBSD マニュアル検索