profiling

マイクロベンチマークにどのツールを使用できますか?
profiling

マイクロベンチマークにどのツールを使用できますか?

Cプログラムのマイクロベンチマークにどのツールを使用すべきかわかりません。 私は両方を測定したいと思います。 メモリ使用量、RSS(常駐セットサイズ) CPUサイクル 私はawkスクリプトを使用しperf record -gてperf scriptパイプしました。これはメモリ使用量を見つけるのに役立ちますが、CPUサイクルperf recordはサンプリングによって得られるため、CPUサイクルは正確ではありません。perf stat正確ですが、明らかに各機能の統計を提供するわけではありません。 perf_eventライブラリは非常に豊富な文書を持っている...

Admin

mmap I/O レイテンシを測定する方法は?
profiling

mmap I/O レイテンシを測定する方法は?

ディスクI / Oが大量に進行している間に速度が遅くなったりブロックされたりするように見えるアプリケーションがあるため、アプリケーションのI / O操作がブロックされていると思われます。また何が間違っているのか想像できませんが、確認したかったです。問題は、アプリケーションが主にI / Oにmmapファイルを使用するため、mmapメモリからI / Oをブロックすることがページエラーであることを知りませんstrace。しかし、ページエラーのためにスレッドの実行が一時停止された時間を測定する方法はありますか? ...

Admin

サブプロセス花火グラフ
profiling

サブプロセス花火グラフ

サブプロセスを実行するためのフレームグラフを提供できるツールはありますか?たとえば、実行すると、開始時刻と終了時刻とともに、クールなmakeツリーのすべての呼び出しが表示されます。gcc 私が見つけることができる最も近いものスヌーピーしかし、具体的な機能は非常に不明です。また、LD_PRELOAD100%信頼できないブロック技術を使用しています。 (実際に可視化は生成されないと思います。) ...

Admin

VisualVMなどのプロファイリングツールを使用してJavaアプリケーションをプロファイリングできるLinuxライブラリ/パッケージはありますか?
profiling

VisualVMなどのプロファイリングツールを使用してJavaアプリケーションをプロファイリングできるLinuxライブラリ/パッケージはありますか?

VisualVMやjconsoleなどのプロファイリングツールに接続せずにJavaプログラムで実行するには、現在のメソッドが実行されているメソッドまたは所要時間を見つける必要があります。 Javaアプリケーションの組み込みプロファイリングを提供するライブラリはLinuxにありますか? ...

Admin

cgroupの最大RSSを報告する方法は?
profiling

cgroupの最大RSSを報告する方法は?

cgroupが作成されてから使用された最大RSSを監視したいと思います。 「ピークRSS」とは、合計が最大である時点のすべてのプロセスのRSS合計を意味します。 私はRSS + CACHEの報告を信じており、memory.max_usage_in_bytes私が知っている限り"max_cache_in_bytes"。"max_rss_in_bytes" 基本的に:私はtime -f %M。 誰もが解決策を知っていますか? ...

Admin

ユーザーモードとカーネルモードで行われた仮想メモリアクセスを分析する方法は?
profiling

ユーザーモードとカーネルモードで行われた仮想メモリアクセスを分析する方法は?

特定のプログラムを実行した結果、ユーザーモードとカーネルモードで実行されたすべての仮想メモリアクセスのログを生成したいと思います。 メモリアクセス場所を収集するだけでなく、他のステータス情報(コマンドポインタ、スレッド識別子など)もキャプチャしたいと思います。基本ツールを使用しても、必要な統計をすべて収集することはできません。 この分析をオフラインで実行する予定なので、パフォーマンスへの影響は心配しません。実際に利用可能な項目によっては、どのツールがすべてのメモリアクセスを記録できるのか、どのツールがサンプリングのみできるかを知ることが役に立ちます。 私はも...

Admin

Strace は、システムコールが総実行時間よりはるかに長くかかることを示しています。なぜ?
profiling

Strace は、システムコールが総実行時間よりはるかに長くかかることを示しています。なぜ?

Tensorflow-gpuに基づいて人工知能推論プログラムを実行しています。 を実行すると、/usr/bin/strace -c -f /usr/bin/time ./program次のような結果が出力されます。 <my program's output> 367.91user 1032.14system 26:43.41elapsed 87%CPU (0avgtext+0avgdata 4158812maxresident)k <----OUTPUT OF TIME 1760inputs+24outputs (0major+425984...

Admin

Bash / Shellスクリプトにどの分析ツールを使用できますか?
profiling

Bash / Shellスクリプトにどの分析ツールを使用できますか?

シェルスクリプトで完全に書かれたプロジェクトがあります。コードの一部のモジュールは時間がかかるため、そのモジュールの機能を賢く減らす必要があります。シェルスクリプトにどの分析ツールを使用できますか? ...

Admin

子プロセスで費やされた時間を測定する方法は?
profiling

子プロセスで費やされた時間を測定する方法は?

他のコマンドを複数回呼び出すコマンド(同期)があります。サブコマンドに費やされた合計時間を取得する方法はありますか?つまり、次のようなコマンドがありますか?時間しかし、どちらが子プロセスの時間を測定できますか? 2021-02-01編集:コマンドのソースコードがないため、コマンド内で時間を測定できません。 ...

Admin

壁時計の時間を分析する方法は?
profiling

壁時計の時間を分析する方法は?

私のプログラムでは、リアルタイムの持続時間は時々CPU時間の最大3倍です。これは、多くのメモリ割り当てとNFSネイティブ読み取り/書き込み操作を実行するシングルスレッドアプリケーションです。そのため、mem-swap や NFS の読み書きが遅くなると思われます。たとえば、次の出力は次のようになります。/usr/bin/time a.out 2165.32user 64.93system 6036.33elapsed リアルタイム分析ツールはありますか?私はCPU時間分析のためにいくつかのツールを知って使用してみましたが、NFS / mem-swapやその...

Admin

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

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

私はLinuxperf_eventsフレームワークを使用して、私たちのサーバーの1つにあるアプリケーションの問題を調査しようとしています。perfツールについて読んだことによると、スタックを収集するのは比較的簡単です。 単にN秒ごとにスタックを収集するイベントとして壁時間を使用できるかどうか疑問に思います。 現在使用しているコマンドは次のとおりです。 perf record -e cycles -T -o <dir>/samples.data -F 1 --call-graph dwarf -T -p <pid> 現在の理解によれば...

Admin

パフォーマンスロギング/レポートを使用した高周波パフォーマンスカウンタのサンプリング
profiling

パフォーマンスロギング/レポートを使用した高周波パフォーマンスカウンタのサンプリング

このツールを使用して、高頻度(例:100〜200Hz)でパフォーマンスカウンタカウントを検索したいperf(例:https://github.com/RRZE-HPC/likwid/wiki/likwid-perfctr#the-timeline-modeしかし、より頻繁に)。これを行う方法はありますか?では、perf recordロギングとレポート結果を使用するときにどのフラグを使用する必要がありますかperf report? sleep 5これまで、実行中の5ms間隔でr6d70パフォーマンスカウンタを取得するために、次のことを試みましたsudo pe...

Admin

メトリックのLinuxコマンドの分析
profiling

メトリックのLinuxコマンドの分析

大容量の.gzファイルを解凍しようとしています。このコマンドを分析して、コマンドの実行中にCPU使用率を取得する方法があるかどうかを知りたいです。 私はこのようなものを探しています。 gunzip file.gz | profileTheCommand ...

Admin

Linuxシステムを分析して速度低下の原因を見つける
profiling

Linuxシステムを分析して速度低下の原因を見つける

私は日常業務に(Fedora)Linuxボックスを使用し、通常は毎朝起動するので、長期実行プロセスと短い稼働時間について話すことはありません。 最近、システムの速度が遅くなっていることがわかりましたが、問題を正確に見つけるのに苦労しています。システムがしばらく中断される可能性があり、SSHを介してログインし、少なくともコンソールでスムーズに実行されました。 top / htopを実行してみると、RAMやCPUを大量に消費するプロセスはありませんでしたが、GUIがまだ応答していないか、非常に遅れていることがわかりました。 データを取得し、何が起こっているの...

Admin

プロファイリングに使用されるPerfツールが過負荷でクラッシュする
profiling

プロファイリングに使用されるPerfツールが過負荷でクラッシュする

ロード平均中に「perf Record -F 99 -g -p --sleep 300」を使用すると、問題なくperf.dataファイルを取得できます。ただし、負荷が高いと衝突が発生します。良い結果を得る唯一の方法は、頻度を30程度に下げることです。これはひどいことです。 理想的には、より良い結果を得るには、より速い速度が必要です(〜997サンプル/秒)。この問題を解決する方法はありますか? この問題は、Linuxカーネルスペースに関連している可能性があると思います。では、この問題を解決するにはどうすればよいですか? ...

Admin