![CPU (および可能な場合は IO) を使用している上位のアプリケーションをグラフで監視するにはどうすればよいですか?](https://rvso.com/image/50561/CPU%20(%E3%81%8A%E3%82%88%E3%81%B3%E5%8F%AF%E8%83%BD%E3%81%AA%E5%A0%B4%E5%90%88%E3%81%AF%20IO)%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E3%81%84%E3%82%8B%E4%B8%8A%E4%BD%8D%E3%81%AE%E3%82%A2%E3%83%97%E3%83%AA%E3%82%B1%E3%83%BC%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92%E3%82%B0%E3%83%A9%E3%83%95%E3%81%A7%E7%9B%A3%E8%A6%96%E3%81%99%E3%82%8B%E3%81%AB%E3%81%AF%E3%81%A9%E3%81%86%E3%81%99%E3%82%8C%E3%81%B0%E3%82%88%E3%81%84%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
これらのアプリケーションが CPU (および可能であれば IO) を大量に使用した理由と時期を見つける必要があります。これは、GNOME システム モニターの CPU 履歴に表示されるようなグラフィック タイムラインに表示される必要があります。また、そのグラフィックを Psensor 温度モニターと比較することも必要です。
PID が既にわかっている単一プロセスについては回答を見つけましたが、過去 1 時間で、アプリケーションが CPU または IO を最も多く使用しているときはいつでも、その情報を探しています。これは、いつでも任意の PID である可能性があります。
それができるアプリケーションはあるのだろうか。
答え1
Pythonとmatplotlibを使ってこれをやってみようかと思った。ここに投稿するにはちょっと大きいけどここ私のサイトへのリンクです。これは本当に醜いやり方ですが、何かアイデアが浮かぶといいのですが。私は OpenBSD ボックスを使用しているので、ps の出力を解析し、sysctl の出力から CPU 温度を取得しましたが、十分に機能しています。データ取得部分をかなり凝ったものにして、さまざまなことを思いつくことができると思います。よろしければ、github か何かにアップロードすることもできます。
-ジャミル