CPUの使用率が100%を超えたことがあります。これはどうやって可能なのでしょうか?私はCPUコアが4つあるので、100%は本当は最大ではないからでしょうか?
また、プログラムがこのようなことをする場合、k
コマンドを使う以外にtopで何ができるのでしょうか?
61 tony_sid 2010-08-11
ベストアンサー
AFAIK topは1コアのパワーに関連したCPU使用率を示しています。つまり、タスクが200%のCPUを使用する場合、2コアを占有していることになります
67 lajuette 2010-08-11
トップのマンページから
k: %CPU -- CPU usage
The task's share of the elapsed CPU time since the last screen
update, expressed as a percentage of total CPU time. In a true SMP
environment, if 'Irix mode' is Off, top will operate in number of
CPUs. You toggle 'Irix/Solaris' modes with the 'I' interactive com-
mand.
そうそう、トップにはコアあたりのCPUパーセンテージが表示されていますが、「I」を押すことでこの動作を切り替えることができます
18 IanH 2010-08-12
はい、topのプロセスが100%を超えたり、負荷が>1.0と表示されたりした場合、これは1つ以上のコアが占有されているか、システムがオーバーサブスクライブしていることを意味します。オーバーサブスクリプションとは、物理的に管理可能な量よりも多くの作業がコアに投入されていることを意味します
top
では、異なるパラメータ(使用メモリなど)でソートすることもできます。何でソートできるかを知りたい場合は、top
のヘルプやマニュアルを参照してください
また、プロセスが使用している仮想メモリや常駐メモリ、スリープ状態や現在実行中のメモリ、使用されているCPU時間など、プロセス自体に関するあらゆる情報を見ることができます
トップの負荷平均は、必要に応じて、uptime
コマンドでも確認できます
10 private_meta 2010-08-11