問題タブ [perf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
4894 参照

linux - perf ロック プロファイルのユーザー空間ミューテックスはありますか?

まとめ:perf lockプロファイルは pthread_mutex ですか?

詳細

ツールperfにはオプションがありますperf lock。マニュアルページには次のように書かれています:

しかし、実行しようとするperf lock recordと、次のエラーが表示されましたinvalid or unsupported event: 'lock:lock_acquire'。私が見たところ、エラーはおそらくカーネルがCONFIG_LOCKDEPorでコンパイルされていないことが原因のようですCONFIG_LOCK_STAT

私の質問はperf lock、ユーザー空間ロック (pthread_mutex など) に関連するイベントを報告するのか、それともカーネル ロックのみを報告するのかということです。主にユーザー空間で実行されるアプリケーションのプロファイリングに興味があります。perf のこのオプションは面白そうだと思いましたが、新しいカーネルをコンパイル (または取得) しないと実行できないので、試す前にそれが何をするかをよりよく理解したいと思っています。

0 投票する
1 に答える
3751 参照

perf - zalloc によるメモリの割り当て

Linux カーネル ソースの perf ソースを調べて、ユーザー空間のプローブがどのように実装されているかを調べます。多くの場所で、私はこれに遭遇しました:

zlib ライブラリ (fedora 18 用) にあると思います。この zalloc がメモリの割り当てにどのように役立つか誰か教えてもらえますか? 前もって感謝します...

0 投票する
1 に答える
1535 参照

android - Linux perf stat ツールがゼロの命令カウントを返します。ここで何が欠けていますか?

新しい Galaxy S4 電話で基本的なパフォーマンス データを取得しようとしています。私はすでにカスタム カーネルをコンパイルしており、Odin を使用してデバイスにフラッシュすることができました。これらは、有効にした perf ツールに関連するカーネル モジュールです。

また、perf ツールをクロスコンパイルしました。問題は、次のコマンドを実行したときです。

出力が正しくないようです。

CPUポリシーを「ユーザースペース」に設定して、次のことを行いました:

すべてのコアが常に最大周波数で動作していることを確認するため。

助けていただければ幸いです。

解決策のない同様のケースへのリンクは次のとおりです 15020-pmu-in-cortex-a8-omap-3530-what-am-i-doing-wrong/

関連する stackoverflow トピック: ARM Cortex-A8 プロセッサでプログラムの実行時間を測定する方法は?

0 投票する
3 に答える
333 参照

linux - インプロセス パフォーマンス プロファイリング用のライブラリ? (Linux の Intel パフォーマンス カウンター)

パスに沿ったさまざまなポイントでパフォーマンス カウンターを読み取って、アプリケーションのクリティカル パスをプロファイリングしたいと考えています。

libperfかなりきれいなC APIを提供するものに出くわしました。ただし、最後の活動は3年前。

も承知しておりPAPIます。これは活発に開発中です。

  • 知っておくべき他のライブラリはありますか?
  • どちらか一方を使用することについて、誰かが洞察を提供できますか?
  • これらをアプリケーションコードに統合するためのチュートリアル/紹介はありますか?
0 投票する
3 に答える
10326 参照

linux - Linux の perf ツールで L3 キャッシュのヒットとミスをキャッチする方法

Linux の perf ツールで L3 キャッシュのヒットとミスをキャッチする方法はありますか。の出力によるとperf list cache、L1 および LLC キャッシュがサポートされています。perf のソース コードのperf_evsel__hw_cache配列の定義によると、次のようになります。

LLC は L2 キャッシュのエイリアスです。私の質問は、Linux の perf ツールで L3 キャッシュのヒットとミスをキャッチする方法です。前もって感謝します!

0 投票する
2 に答える
9296 参照

performance - CPUキャッシュのパフォーマンス。ストアミスとロードミス

基本的なイベント カウンターとして perf を使用しています。私は、データ キャッシュ ストア ミスに悩まされているプログラムに取り組んでいます。%80の比率と同じくらい高いです。

原則としてキャッシュがどのように機能するかを知っています。さまざまなミスケースでメモリからロードし、必要に応じてキャッシュからデータを削除します。私が理解していないのは、ストアとロードのミスの違いです。読み込みと保存はどのように異なりますか。どのようにミスを保存できますか?

0 投票する
4 に答える
6745 参照

linux - perf はカーネルでシンボルを見つけることができますが、プログラムでシンボルを見つけることができません。修正方法は?

この質問を読んだことがあるかもしれません: プログラムでシンボルを見つけるために perf を取得するにはどうすればよいですか?

1) 私の質問は:

perf report を使用すると、次のような結果が得られます。

つまり、パフォーマンスはカーネルでシンボルを見つけることができますが、プログラムでシンボルを見つけることができません。

私のプログラムはここにあります:

2)次のようにプログラムをコンパイルしました:

gcc test.c -g -o テスト

私の環境: os:ubuntu カーネル:3.10.9

0 投票する
1 に答える
4860 参照

linux - パフォーマンス アノテーション、ソース コードのみの表示

Perf を使用してプロファイリングの実験を行っています。

ただし、特定のコード領域の結果を知りたいのですが、この場合、ソース コード (この場合は C/C++) の各行の結果 (パーセンテージ) を確認すると、作業が容易になります。

perf annotateASM+ソース コードを表示するビューがあり、ソース コードの表示をオフにするオプションもあります。このオプションのもう一方の目的を達成する方法、つまり、ソースコードとその行ごとのイベントの割合のみを表示し、ASM 出力を非表示にする方法を知りたいです。これは可能perfですか?

それを行うための他のツールの提案はありますか? Vtune も使用していますが、実行したくない分析が機能していません。Valgrind は問題外です。遅すぎます。

Ubuntu 13.04 を実行している x64 を使用しています。

0 投票する
1 に答える
372 参照

linux-kernel - これらのトレース イベントは何を表していますか?

ftrace と perf の使い方を学んだばかりですが、それらに共通していて理解できないことがいくつかあります。トレース イベントです。それらはいくつかのカーネル内部関数であると思います.ftraceは、それらが有効になっている場合、呼び出されたときにそれらの名前を記録します. そうですか?すべてのイベントは、以下にリストされているグループに分類されます。彼らが何を表しているのか、どこで詳細な情報を入手できるのか誰か教えてくれませんか? どうも。

ブロック btrfs コンパクション drm ext3 ext4 fs ftrace gpio header_event header_page irq jbd jbd2 kmem mce モジュール napi ネット パワー raw_syscalls rcu regmap レギュレータ rpm sched scsi シグナル skb sock syscalls タイマー udp vfs vmscan vsyscall ワークキュー ライトバック xen xfs