gprof
関数ごとに、プログラムの実行中に費やされた時間を計算するために使用 しています。
先週、CPU 使用率が 100% に達したとき、プログラムを起動することさえできないことに気付きました。
- コードはほぼ 1 日実行されましたが、何も変わりませんでした。
- 場合によっては CPU 使用率が 100% に達するのは避けられません。特に、システムに負荷をかけ、最大限のリソースを使用している間にプログラムをテストしたい場合は、"
stress
" ツールを使用します: http://weather.ou .edu/~apw/projects/stress/
私はスレッドを読みました:
Mike Dunlavey の回答を読んでください。
それほど局所化されていない問題はどうですか? それらは問題ではありませんか?主張されていない gprof に期待しないでください。これは単なる測定ツールであり、CPU バウンド操作専用です。
また、スコアが高かったノーマン・ラムジーの応答:
Valgrind has an instruction-count profiler with a very nice visualizer called KCacheGrind. As Mike Dunlavey recommends, Valgrind counts the fraction of instructions for which a procedure is live on the stack, although I'm sorry to say it appears to become confused in the presence of mutual recursion. But the visualizer is very nice and light years ahead of gprof
.
しかし、スレッドが閉鎖されているため、非建設的であるため、これが良い方向性であるかどうか疑問に思っていました
前もって感謝します
PS Google検索を使用しているときに、次のような質問をしたときに関連するものが見つかりませんでした
「CPU が 100% に達したときに gprof が機能しない理由」
前もって感謝します