スループットが高い間にノートブックの速度が一時的に遅くなると、デスクトップのプロセスパネルに実際に表示されるよりも高い数値が表示されることが予想されます(CPU使用量)。そしてシステムモニターから。
端末にtop
表示されている数字を使って適法さを証明するコンピュータが一時的に遅くなります。たとえば、Firefoxが比較的高いCPUリソース(「Webコンテンツ」と表示されている)を使用する一部のプラグインを実行している場合、conkyスクリプト(Gnomeシステムモニタと同様)は使用されたCPUリソースが約25%ですが、top
ディスプレイには約71 %が表示されます。 %、PCを考えると、より「現実的な」ようです。持つ速度が遅くなりますね。
私が使用しているconkyから「実際の」数字をどのように取得できますか?top
システムモニタと異なる理由は何ですか?
conkyスクリプトの重要な部分は次のとおりです。
${top name 1} $alignr ${top cpu 1}%
${top name 2} $alignr ${top cpu 2}%
${top name 3} $alignr ${top cpu 3}%
など。
答え1
これは、値が使用可能な合計CPUパフォーマンスの割合ではtop
なく、単一のCPUコアの割合として表示されるためです。conky
実行しtop
て押すとI同じ(ほぼ同じであり、常に競合状態があります。CPUtop
をポーリングするのにかかる時間が実際に実行するのにかかる時間とまったく同じではない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回実行したため、数値は正確に一致しませんが、おおよその概念を見ることができます。