私のラップトップがやや重い処理中に少し遅くなると、デスクトップ上にあるコンクなプロセスパネルで実際に見るよりも(CPU使用のために)より高い数値が表示されると期待します- およびシステムモニター。
ターミナルでtop
を使用すると、コンピュータの一時的な速度低下justifyという数値が表示されます。たとえば、Firefoxが比較的高いCPUリソース(「Webコンテンツ」として表示される)を使用するいくつかのアドオンで実行されている場合、conkyスクリプト(Gnome System Monitorと同様)はCPUリソースの約25%を表示しますが、top
PCがが実際に遅くなるという事実を考えると、約71%を示しています。
どのように私は私が使用する馬車でそれらの「本当の」数を得ることができますか?そして、なぜtop
はそれとシステムモニターとは異なるのですか?
ここで重要なconkyスクリプトの部分は次のとおりです。
${top name 1} $alignr ${top cpu 1}%
${top name 2} $alignr ${top cpu 2}%
${top name 3} $alignr ${top cpu 3}%
等.
これは、top
が単一のCPUコアのパーセンテージとして値を示しているのに対し、conky
は利用可能な合計CPUパワーのパーセンテージを示しているためです。 top
を実行して、 I 同じ(ほぼ同じ、常に競合状態が発生します:top
がCPUをポーリングする時間は、conky
が行う正確な時間とは異なります)。
これはman top
(鉱山を強調):
%CPU-CPU使用率
最後の画面更新からの経過CPU時間に対するタスクのシェア。合計CPU時間の割合として表されます。
真のSMP環境では、プロセスがマルチスレッドで、topがスレッドモードで動作していない場合、100%を超える量が報告されることがあります。対話モードの「H」でスレッドモードを切り替えます。
マルチプロセッサ環境の場合も、Irixモードがオフの場合、topはSolarisモードで動作し、タスクのCPU使用量はCPUの総数で除算されます。対話型のIでIrix/Solarisモードを切り替えますコマンド
したがって、この例では、top
がIrixモードであり、%CPU値を単一CPUのパーセンテージとして報告しているのに対し、conky
はすべてのパーセンテージとして報告している利用可能なCPU。
そして、説明のために、これは、複数のスレッドを使用できるtop
を実行しているときの8コアラップトップのIrixモードでのpigz
の外観です。
PID USER PR NI VIRT RES %CPU %MEM TIME+ S COMMAND
1090509 terdon 20 0 657.6m 4.5m 605.3 0.0 0:33.18 R pigz
%CPUが100をはるかに上回っていることを確認しますか?これで、Solarisモードで同じことが表示されます。
PID USER PR NI VIRT RES %CPU %MEM TIME+ S COMMAND
1100171 terdon 20 0 657.6m 4.5m 82.0 0.0 1:24.08 S pigz
出力を取得するためにコマンドを2回実行したため、数値は正確には一致しませんが、一般的なアイデアを確認できるはずです。