プロセスとすべての子プロセスのCPUリソース使用率を見つける方法

プロセスとすべての子プロセスのCPUリソース使用率を見つける方法

サブプロセスを作成するプロセスがある場合は、そのプロセスとそのサブプロセスの組み合わせられたCPU使用率を表す単一の数値を取得するための良い方法はありますか?つまり、利用可能な単純なシェルコマンドはありますか?それとも/ procにいくつかの情報がありますか?

ターゲットオペレーティングシステムはCentosまたはUbuntuです。

答え1

次のようにプロセスを実行します。

time scriptname  # or
time command 

子供と親の合計を報告します。

デーモンという単語を追加すると、状況が異なります。おおよその値が上部に表示されますtop -p [pid] 。 CまたはPerlまたはPythonを使用して/ proc [pid] / stat.utimeと友達(utime、stime、cuttime、cstime(cで始まる子))を読み取ることもできます。一般的に、これらの数値に慣れていると、パフォーマンス評価では、システム時間とユーザー時間が合計CPU時間と同じくらい重要であることがわかります。

ps -p [pid] -o %cpu それほど有益ではありません。累積時間ではなく、現在使用中のCPUの数だけを表示します。

関連情報