2017-12-04 6 views
0

特別スレッドでtsxアボートをトレースするために 'perf trace'コマンドを使用しようとしています。しかし、私は議論に間違いがある。私が思うと思うすべてのコマンドは、以下の通りです。トレースPERF'perf trace command'をTSXアボート付きの特別なスレッドに使用する

トレース--pid 24265 --event TX-アボートPERF

トレースPERF 24265 --event {TX-アボート}

を--pid 24265 --eventを{」--pid TX-アボート '}

トレースは、トレースPERF {24265} --event TX-アボート

を--pid PERFトレースPERF {24265} --event {TX-アボート}

を--pid - -pid {24265} --event { 'TX-アボート'}

は{ '24265'} --event

は{ '24265'} --event {TX-を--pidトレースPERF TX-アボート--pidトレースPERFすべてのエラーHINS { '24265'} --event { 'TX-アボート'}

を--pidトレースPERF}

を中止 'のオプションをチェックし、トレースする対象を解析する問題' です。 perfトレースを期待どおりに実行する方法はありますか?

答えて

0

問題は引数の構文ではありません。最初の行は問題ありません。まず、tx-abortperf listでリストされているかどうかを確認し、システムで一般的にサポートされているかどうかを確認します。指定されたpidが存在しないため、エラーが発生することがあります。

TSXイベントはPMUイベントです。 syscallsやtracepointとは異なり、個々のイベントはソフトウェアで計測されるのではなく、Performance Monitoring Unit内にハードウェアカウンタがあり、これらのイベントをカウントして特定のイベント発生後に割り込みをトリガします。各イベントでサンプルを取ることは、PMUイベントでは通常実現できません。私はそれが本来はsyscallsを対象としたperf traceのためにはうまくいかないと考えています。たとえどんなタイプのイベントがサポートされているのか少し曖昧ですが。

注:私はそれが動作しないことを再現できますが、私は "無効な引数"を取得します。そのPMUイベントはperf traceでサポートされていません。

analyzing TSX with perfにはIntelの広範なドキュメントがあり、perf recordでtxイベントを使用する方法の例と説明があります。

+0

ありがとうございました。私はtx-abortが 'perf list'にリストされ、pidが存在することを確信しています。しかし、私は試してみたように、まだperfトレースを実行することはできません。 PMUイベントがperfトレースによってサポートされない可能性があるという私の推測に同意します。 –

関連する問題