18

ubuntu 11.10でperf 3.0.4を使用しています。その記録コマンドはうまく機能し、収集された 256 個のサンプルが端末に表示されます。しかし、perf reportを使用すると、次のエラーが表示されます。

perf.data file has no samples

私は解決策をたくさん探しましたが、まだ成功していません。

4

3 に答える 3

15

このスレッドにはいくつかの有用な情報があります: http://www.spinics.net/lists/linux-perf-users/msg01436.html

PMU をゲストに公開しない VM で実行している場合、デフォルトのコレクション ( -e cycles) は機能しないようです。で実行してみてください-e cpu-clock。そのスレッドによると、OPはUbuntu 10.04を実行している実際のホストでも同じ問題を抱えていたので、それも解決するかもしれません...

于 2016-03-04T17:41:35.277 に答える
5

コマンドによって報告されるサンプル数はperf record概算であり、正しいイベント数ではありません (こちらの perf wiki を参照してください)。

イベントの正確な数を取得するには、生ファイルをダンプし、wc -l結果の数をカウントするために使用します。

perf レポート -D -i perf.data | grep RECORD_SAMPLE | トイレ -l

このコマンドは、perf reportイベントが見つからないと言うケースでは 0 を報告する必要があります。

どのようにパフォーマンス レコードを使用しているか、どのイベントをサンプリングしているか、どのハードウェア、どのプログラムを使用しているかについて、詳細をお知らせください。

-c編集: 最初にまたは-Fオプションを使用して、サンプリング期間または頻度を増やすことを試みることができます。

于 2014-01-17T12:15:21.587 に答える
4

過去に動作していたマシンでこれに遭遇するときはいつでもperf record、パフォーマンス カウンターを使用する別の何かを実行したままにしておくことが原因です。たとえば、perf top別のターミナル タブで実行しています。

この場合、perf record単に PMU 関連のサンプルが記録されていないように見えます。

于 2018-07-29T19:01:15.570 に答える