「perf」を使用して壁時計時間に基づいてスタックサンプルを取得する方法

「perf」を使用して壁時計時間に基づいてスタックサンプルを取得する方法

私はLinuxperf_eventsフレームワークを使用して、私たちのサーバーの1つにあるアプリケーションの問題を調査しようとしています。perfツールについて読んだことによると、スタックを収集するのは比較的簡単です。

単にN秒ごとにスタックを収集するイベントとして壁時間を使用できるかどうか疑問に思います。

現在使用しているコマンドは次のとおりです。

perf record -e cycles -T -o <dir>/samples.data -F 1 --call-graph dwarf -T -p <pid>

現在の理解によれば、コマンドは、-F 1perfコマンドが信号によって終了するまで、1秒ごとにプロセス()でサンプリング()してスタック()を取得します。-g-p <pid>

しかし、私が収集したデータによると、1秒あたりのサンプルセットが2つ以上あると思いますか?それで、サンプル収集方法を誤解したり誤解したようですperf

また、収集されるデータ量を減らすために2秒、5秒、または10秒ごとにスタックを記録するにはどうすればよいですか?これを達成する方法はありますかperf

ベストアンサー1

おすすめ記事