1

http://valgrind.org/docs/manual/cl-manual.htmlを使用 してアプリケーションのプロファイルを作成しています。しかし、私はそれがo/pであるかについて質問があります

  1. その関数内で消費された時間

また

  1. その関数呼び出し内で消費されたcpU

私が推測するのは、現在、curl connectで90%の使用率を示しているということです。どちらがI/Oバウンドプロセスだと思います。

したがって、その関数呼び出し内で消費された時間を示していると思います。

4

2 に答える 2

1

ドキュメントに記載されているように、valgrind の callgrind ツールでは、Instructions read (Ir) のみがデフォルトで有効になっています。

ツール自体は、関数によって消費される時間の計算には適していません。こちらを参照してください。

時間と CPU 使用率を取得するには、Unix で詳細モードで「time」コマンドを実行することを好みます

/usr/bin/time -v

ただし、次のような他のユーティリティを取得できます

==ドキュメントのスニペット===

命令読み取り (「I1mr」/「ILmr」)、データ読み取りアクセス (「Dr」) および関連するキャッシュ ミス (「D1mr」/「DLmr」)、データ書き込みアクセス (「Dw」) および関連するキャッシュ ミス ( "D1mw"/"DLmw") のオプションを有効にすることで

--cache-sim=はい

また、実行された条件分岐と関連する予測ミスの数 ("Bc"/"Bcm")、実行された間接ジャンプと関連するジャンプ アドレス予測ミス ("Bi"/"Bim") などの他のユーティリティを有効にすることで取得することもできます。のオプション

--branch-sim=はい

最後に、callgrind_annotate ユーティリティを使用して、目的の出力ファイルを取得します。

==========

于 2013-11-15T06:06:04.500 に答える
0

命令数 (CPU 時間の大まかなプロキシ)、推定サイクル数 (CPU 時間の大まかなプロキシ)、またはさまざまな種類の推定キャッシュ ヒット/ミス カウントなど、さまざまなものを表示できます。

于 2011-09-30T07:46:11.340 に答える