英語フランス語スペイン語

Ad


OnWorksファビコン

i686-linux-gnu-gprof - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターを介して、OnWorks の無料ホスティング プロバイダーで i686-linux-gnu-gprof を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、MAC OS オンライン エミュレーターなど、複数の無料オンライン ワークステーションのいずれかを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド i686-linux-gnu-gprof です。

プログラム:

NAME


gprof-コールグラフプロファイルデータを表示します

SYNOPSIS


gprof [-[abcDhilLrsTvwxyz]] [-[ACeEfFJnNOpPqQZ] []]
[ -私 Dirs ] [ -NS[NUM]] [-k からの ]
[ -NS 最小カウント ] [ -NS マップファイル ] [ -NS テーブルの長さ ]
[-[no-]注釈付きソース[=]]
[-[no-] exec-counts [=]]
[-[no-] flat-profile [=]] [-[no-] graph [=]]
[-[no-] time =] [--all-lines] [--brief]
[--debug [=レベル]] [--function-ordering]
[--file-ordering マップファイル ] [--directory-path =Dirs ]
[--display-unused-functions] [--file-format = ]
[--file-info] [--help] [--line] [--inline-file-names]
[--min-count =n ] [--no-static] [--print-path]
[--separate-files] [--static-call-graph] [--sum]
[--table-length =LEN ] [--traditional] [--version]
[--width =n ] [--ignore-non-functions]
[--demangle [=スタイル]] [--no-demangle]
[--external-symbol-table = name]
[ 画像ファイル ] [ プロファイルファイル ...]

DESCRIPTION


「gprof」は、C、Pascal、または Fortran77 の実行プロファイルを生成します
プログラム。 呼び出されたルーチンの効果はプロファイルに組み込まれます
各呼び出し元の。 プロファイル データは、コール グラフ プロファイルから取得されます
ファイル(gmon.out デフォルト)コンパイルされたプログラムによって作成されます
-pg 「cc」、「pc」、「f77」のオプション。 NS -pg オプションも
用にコンパイルされたライブラリ ルーチンのバージョンのリンク
プロファイリング。 「Gprof」は、指定されたオブジェクト ファイルを読み込みます (デフォルトは
"a.out") を作成し、そのシンボル テーブルと
からのコール グラフ プロファイル gmon.out. 複数のプロファイル ファイルがある場合
指定すると、「gprof」出力にプロファイル情報の合計が表示されます
指定されたプロファイル ファイルで。

gcc 2.95.x または 3.0 を使用してバイナリをコンパイルする場合は、
その -fprofile-arcs コンパイルコマンドラインに
コール グラフが gmon.out に適切に格納されるようにします。

「Gprof」は、各ルーチンに費やされた時間を計算します。 次、
これらの時間は、コール グラフの端に沿って伝播されます。 サイクル
発見され、サイクルへの呼び出しが行われ、時間を共有します
サイクル。

分析からいくつかの形式の出力を利用できます。

  フラットな プロフィール プログラムがそれぞれに費やした時間を示します
関数、およびその関数が呼び出された回数。 あなたが単に
ほとんどのサイクルを消費する関数を知りたい場合、次のように述べられています。
ここで簡潔に。

  コール グラフ 関数ごとに、どの関数がそれを呼び出したかを示します。
他のどの関数を呼び出したか、およびその回数。 また、
それぞれのサブルーチンで費やされた時間の見積もり
関数。 これにより、排除しようとする可能性のある場所が示される可能性があります
多くの時間を使用する関数呼び出し。

  注釈付き source リストはプログラムのソースコードのコピーです。
プログラムの各行が実行された回数でラベル付けされています。

OPTIONS


これらのオプションは、"gprof" が出力するフォーマットをいくつか指定します。
を生成します。

これらのオプションの多くはオプションを取ります シンスペック 関数を指定する
含まれるか、または除外されます。 これらのオプションは複数指定できます
さまざまな symspec を使用して、一連のシンボルを含めたり除外したりします。

これらのオプションのいずれかを指定すると、デフォルト(-p -q)、
すべての関数のフラット プロファイルとコール グラフ分析を出力します。

"-NS[symspec]」
"--annotated-source [=symspec]」
  -A オプションを指定すると、「gprof」は注釈付きのソースコードを出力します。 もしも
シンスペック が指定されている場合、一致するシンボルのみを出力します。

"-NS"
" - 簡単に"
Status -b オプションが指定されている場合、「gprof」は詳細な宣伝文を出力しません
テーブル内のすべてのフィールドの意味を説明しようとします。
これは、出力を印刷する場合や疲れている場合に便利です。
宣伝文句を見ること。

"-NS[symspec]」
"--exec-counts [=symspec]」
  -C オプションを指定すると、"gprof" は関数の集計を出力し、
それぞれが呼び出された回数。 もしも シンスペック 指定、印刷
一致するシンボルのみを集計します。

プロファイル データ ファイルに基本ブロック カウント レコードが含まれている場合、
の指定 -l オプションと一緒に -C、基本ブロックが発生します
集計して表示する実行回数。

"-私"
"--file-info"
  -i オプションにより、「gprof」は概要情報を表示します
プロファイル データ ファイルを読み込んでから終了します。 ヒストグラムの数、
コール グラフ、および基本ブロック カウント レコードが表示されます。

"-私 dirs」
"--directory-path =dirs」
  -I オプションは、検索ディレクトリのリストを指定します。
ソースファイルを見つけます。 環境変数 GPROF_パス また、することができます
この情報を伝えるために使用されます。 主に注釈付きソースに使用
出力。

"-NS[symspec]」
"--no-annotated-source [=symspec]」
  -J オプションにより、"gprof" は注釈付きソース コードを出力しません。
If シンスペック が指定されている場合、「gprof」は注釈付きソースを出力しますが、
一致する記号を除外します。

「-L」
"--print-path"
通常、ソース ファイル名はパス コンポーネントとともに出力されます。
抑制された。 の -L オプションにより、「gprof」は完全に出力します
シンボリックから決定されるソースファイル名のパス名
イメージ ファイル内のデバッグ情報であり、
コンパイラが呼び出されたディレクトリ。

"-NS[symspec]」
"--flat-profile [=symspec]」
  -p オプションを指定すると、「gprof」はフラットプロファイルを印刷します。 もしも シンスペック
が指定されている場合、一致するシンボルのフラット プロファイルのみを出力します。

"-NS[symspec]」
"--no-flat-profile [=symspec]」
  -P オプションにより、"gprof" はフラット プロファイルの印刷を抑制します。
If シンスペック が指定されている場合、「gprof」はフラット プロファイルを出力しますが、
一致する記号を除外します。

"-NS[symspec]」
"--graph [=symspec]」
  -q オプションを指定すると、「gprof」はコールグラフ分析を出力します。 もしも
シンスペック が指定されている場合、一致するシンボルについてのみ呼び出しグラフを出力します
とその子供たち。

"-NS[symspec]」
"--no-graph [=symspec]」
  -Q オプションにより、"gprof" はコール グラフの出力を抑制します。
If シンスペック が指定されている場合、「gprof」は呼び出しグラフを出力しますが、除外します
一致する記号。

"-NS"
"--table-length =num」
  -t オプションは NUM それぞれで最もアクティブなソース行
ソース アノテーションが有効な場合にリストされるソース ファイル。 の
デフォルトは10です。

「-y」
"--separate-files"
このオプションは、注釈付きソース出力のみに影響します。 通常は、
"gprof" は、注釈付きソース ファイルを標準出力に出力します。 これなら
オプションが指定された、という名前のファイルの注釈付きソース
パス/ファイル名 ファイルに生成されます ファイル名-ann。 もし
基盤となるファイル システムが切り捨てられる ファイル名-ann それで
オリジナルを上書きします ファイル名、「gprof」は注釈付きを生成します
ファイル内のソース ファイル名.ann 代わりに (元のファイル名が
拡張子があり、その拡張子は 置き換え   .ann).

"-Z [symspec]」
"--no-exec-counts [=symspec]」
  -Z オプションを指定すると、"gprof" は関数の集計を出力せず、
それぞれが呼び出された回数。 もしも シンスペック 指定されている、
集計を出力しますが、一致するシンボルは除外します。

"-NS"
「-関数の順序付け」
  -関数の順序 オプションにより、「gprof」は提案された
プロファイリング データに基づくプログラムの関数の順序付け。 これ
オプションは、ページング、tlb、およびキャッシュを改善する順序を提案します
任意をサポートするシステム上のプログラムの動作
実行可能ファイル内の関数の順序。

リンカーに関数を配置させる方法の正確な詳細
特定の順序はシステムに依存し、この範囲外です
マニュアル。

"-NS map_file "
"-ファイルの順序付け map_file "
  -ファイルの順序 オプションにより、"gprof" は提案された .o を出力します。
プロファイリング データに基づくプログラムのリンク行順序。 これ
オプションは、ページング、tlb、およびキャッシュを改善する順序を提案します
任意をサポートしないシステムでのプログラムの動作
実行可能ファイル内の関数の順序。

の使用 -a このオプションでは、引数を強くお勧めします。

  マップファイル 引数は、提供するファイルへのパス名です。
関数名からオブジェクト ファイルへのマッピング。 ファイルのフォーマットは
プログラム「nm」の出力に似ています。

c-parse.o:00000000 T yyparse
c-parse.o:00000004 C yyerrflag
c-lang.o:00000000 Tmaybe_objc_method_name
c-lang.o:00000000 T print_lang_statistics
c-lang.o:00000000 Trecognize_objc_keyword
c-decl.o:00000000 T print_lang_identifier
c-decl.o:00000000 T print_lang_type
...

作成するには マップファイル GNU「nm」で、「nm」のようなコマンドを入力します
--extern-only --defined-only -v --print-file-name プログラム名".

"-NS"
" - 伝統的"
  -T このオプションにより、"gprof" はその出力を "traditional" で印刷します。
BSD スタイル。

"-w 幅"
"--width =幅"
出力行の幅をに設定します . 現在、次の場合にのみ使用されます
コール グラフの下部に関数インデックスを出力します。

"-NS"
「-全行」
このオプションは、注釈付きソース出力のみに影響します。 デフォルトでは、
基本ブロックの先頭の行に注釈が付けられます。 これなら
オプションが指定されている場合、basic-block のすべての行に注釈が付けられます。
最初の行の注釈を繰り返します。 この振る舞いは
「tcov」に似ています -a.

"--demangle [=スタイル]"
「-デマングルなし」
これらのオプションは、C++ シンボル名をデマングルするかどうかを制御します
出力を印刷するとき。 デフォルトでは、シンボルをデマングルします。 の
「--no-demangle」オプションを使用してデマングルをオフにすることができます。
コンパイラが異なれば、マングリング スタイルも異なります。 オプションの
デマングリング スタイルの引数を使用して、適切な
コンパイラのデマングリング スタイル。

分析 オプション
"-NS"
「-静的なし」
  -a オプションにより、「gprof」は静的に印刷を抑制します
宣言された (プライベート) 関数。 (これらは名前が
グローバルとしてリストされておらず、
それらが定義されたファイル/関数/ブロック。) これらに費やされた時間
関数、それらへの/からの呼び出しなどはすべて、
実行可能ファイルでその直前にロードされた関数。
このオプションは、フラット プロファイルとコール グラフの両方に影響します。

"-NS"
"--static-call-graph"
  -c オプションにより、プログラムの呼び出しグラフが拡張されます
オブジェクトファイルのテキストスペースを調べるヒューリスティックによって
バイナリ マシン コード内の関数呼び出しを識別します。 通常時から
コール グラフ レコードは、関数が入力されたときにのみ生成されます。
このオプションは、呼び出された可能性のある子を識別しますが、
決してありませんでした。 でコンパイルされていない関数の呼び出し
プロファイリングが有効な場合も識別されますが、シンボル テーブルの場合のみです。
エントリが存在します。 動的ライブラリ ルーチンの呼び出し
典型的には このオプションで見つかりました。 親または子供
このヒューリスティックによって識別されたものは、コール グラフで次のように示されます。
の呼び出し回数 0.

"-NS"
「--ignore-non-functions」
  -D オプションにより、"gprof" は未知のシンボルを無視します
関数であること。 このオプションは、より正確なプロファイル データを提供します。
サポートされているシステム (Solaris や HPUX など)。

"-k からの"
  -k オプションを使用すると、コール グラフから任意のアークを削除できます
symspec に一致するシンボルから から 一致するsymspecに 〜へ.

「-l」
" - ライン"
  -l オプションは、行ごとのプロファイリングを有効にします。
個々のソース コード行に課金されるヒストグラム ヒット、
関数の代わりに。 この機能はプログラムでのみ動作します
「gcc」コンパイラの古いバージョンでコンパイルされています。 新しいバージョン
「gcc」のは、代わりに「gcov」ツールで動作するように設計されています。

プログラムが基本ブロックのカウントを有効にしてコンパイルされた場合、これは
オプションは、コードの各行が何回実行されたかを識別します
実行されました。 行ごとのプロファイリングは、
プログラムが時間を費やしている大規模な関数
「gprof」の実行時間を大幅に増加させ、拡大します
統計の不正確さ。

"--inline-file-names"
このオプションを指定すると、"gprof" はソース ファイルを出力するたびに出力します。
フラット プロファイルとコール グラフの両方のシンボル。 フルパス
で使用すると、ファイルに出力されます -L オプションを選択します。

"-NS num」
"--min-count =num」
このオプションは、実行回数の出力のみに影響します。 シンボル
より少なく実行された NUM 時間は抑制されます。

"-NSsymspec」
"--time =symspec」
  -n オプションにより、コール グラフ分析で "gprof" が
シンボル一致の伝播時間 シンスペック.

"-NSsymspec」
"--no-time =symspec」
  -n オプションにより、コール グラフ分析で "gprof" が
シンボル一致の伝播時間 シンスペック.

"-NSファイル名"
"--external-symbol-table =ファイル名"
  -S オプションにより、"gprof" は外部シンボル テーブル ファイルを読み取ります。
など / proc / kallsymsからシンボル テーブルを読み取るのではなく、
指定されたオブジェクト ファイル (デフォルトは「a.out」)。 これは便利です
カーネルモジュールのプロファイリング。

「-z」
"--display-unused-functions"
あなたが与える場合 -z オプション、「gprof」はすべての関数を言及します
呼び出されたことのないものでさえ、フラットなプロファイルであり、
それらに費やす時間はありません。 これは、 -c
どのルーチンが呼び出されなかったかを検出するためのオプション。

その他 オプション
"-NS[num]」
"--debug [=num]」
  -d NUM optionは、デバッグオプションを指定します。 もしも NUM ではありません
指定すると、すべてのデバッグが有効になります。

"-NS"
" - ヘルプ"
  -h オプションは、コマンドラインの使用法を出力します。

"-O名前"
"--file-format =名前"
プロファイル データ ファイルの形式を選択します。 認識されるフォーマット
  オート (デフォルト)、 bsd, 4.4BSD, マジック, 教授 (まだ
サポートされています)。

"-NS"
" - 和"
  -s オプションにより、"gprof" は、
プロファイル データ ファイルを読み込み、プロファイル データ ファイルを書き出す
呼ばれます gmon.sumからのすべての情報が含まれています。
「gprof」が読み込むプロファイル データ ファイル。 gmon.sum 多分
指定された入力ファイルの XNUMX つ。 これの効果はマージすることです
他の入力ファイルのデータを gmon.sum.

最終的には、「gprof」を実行せずに再度実行できます。 -s 分析する
ファイル内の累積データ gmon.sum.

「-v」
" - バージョン"
  -v flag により、"gprof" は現在のバージョン番号を出力し、
その後終了します。

非推奨の オプション
これらのオプションは、symspecsを使用する新しいバージョンに置き換えられました。

"-e function_name "
  -e function オプションは、「gprof」に情報を出力しないように指示します
機能 関数名 (およびその子...)コールグラフ。
関数は引き続き、すべての関数の子としてリストされます。
それを呼び出しますが、そのインデックス番号は次のように表示されます [いいえ 印刷]。 もっと
XNUMXつより -e オプションが与えられるかもしれません; 唯一 関数名 多分
それぞれで示されます -e オプションを選択します。

"-E function_name "
「-E 関数" オプションは「-e」オプションと同じように機能しますが、時間がかかります
関数内(およびどこからも呼び出されなかった子供たち
else)、時間のパーセンテージの計算には使用されません。
コールグラフ。 複数の -E オプションが与えられるかもしれません; 唯一
関数名 それぞれで示される場合があります -E オプションを選択します。

"-NS function_name "
  -f function オプションにより、「gprof」は呼び出しグラフを
機能 関数名 およびその子 (およびその子)
子供...)。 複数の -f オプションが与えられるかもしれません; 唯一
関数名 それぞれで示される場合があります -f オプションを選択します。

"-NS function_name "
  -F function オプションは「-f」オプションと同じように機能しますが、時間だけです
関数で費やされ、その子 (およびその子...) は
の合計時間と時間のパーセンテージを決定するために使用されます。
コールグラフ。 複数の -F オプションが与えられるかもしれません; 唯一
関数名 それぞれで示される場合があります -F オプション。 ザ· -F オプション
をオーバーライドします -E オプションを選択します。

onworks.net サービスを使用してオンラインで i686-linux-gnu-gprof を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad