私はスクリプトを使って遊んでいますが、うんざりしてしまいました(今でもまだ実行中ですし、まだコンピュータは死んでいません)。私はスクリプトを17回実行しています(私のコンピューターをクラッシュさせるつもりで)。
アクティビティモニターを見ると、各Pythonプロセスには固有のpidがあり、それぞれが私の処理能力の約17〜20%を占めるように見えます。これはどのように可能ですか?私のコンピュータは魔法の力で200%のパワーを伸ばし、そしてどこかで熱力学の法則を破りましたか?
OS Xでは、他の* nixと同様に、CPU負荷は仮想プロセッサコアごとに測定されます。あなたが複数ある場合 - あなたは全負荷の下で200%以上を組み合わせることができます。
これは、Windowsとは異なり、CPU負荷がCPU全体(またはCPU - 複数の物理プロセッサを使用している場合の動作方法を思い出せない)ごとに計算される他のシステムとは異なります。
OS XとLinuxそしておそらく他のUNIXオペレーティングシステム(あるいはこれらのシステムで最も一般的なツール)はWindowsと異なったCPU使用率を表示します。 Windowsでは、100%は「allCPUリソースの使用」を意味します。 Linuxでは、(ハイパースレッディングのように)1つの「スレッド」が完全にビジーです。そのため、合計で(Number of Threads per Core) * (Number of Cores per CPU) * (Number of CPUs)
に達することがあります。
完全には関連していませんが、別の興味深い事実として、Windows 10はCPUの現在のスロットル状態を使用してCPU使用率をさらに正規化します。そのため、1 GHzで調整された2 GHz CPUは、最大50%しかビジーになりません。
アクティビティモニターは実際には各アプリ/プロセスが使用する処理能力を測定するのではなく、単にアルゴリズムを使用して見積もります。それは不正確になる可能性があります...
また@Vasfedが指摘するように、CPUの消費はプロセッサコアごとに測定されます。マルチコアは100%以上の使用率を意味することができます...
オタクは時折この現象に遭遇し、スーパーユーザーが彼の助けを借りるまでばかげています...; D