CPU使用率とRAMの関係は何ですか?


21

CPU使用率が100%で、RAMの50%しか使用されていないことを何度も見ました。これら2つの関係は何ですか?一方のパフォーマンスは他方にどのように影響しますか?

回答:


42

CPUはメモリ内のデータを処理(追加などの指示を実行)します。RAMはメモリピラミッドの一部にすぎません(以下を参照)。そのため、大量のデータを処理している場合、そのデータ(またはその大部分)がRAMにロードされ、CPUの準備が整う可能性があります。これは、RAMがストレージデバイスよりも高速にアクセスするため、速度を上げるためです。そのため、CPU使用率とRAMはしばしば相関関係にありますが、相関関係はありません。

基本的な例は、画像編集プログラムです。20MBのjpegをロードし、プログラムが画像全体を読み取り、OSがそれをRAMに保持します(すべての作業メモリはプログラムと同じように見え、OSはディスクまたはRAMのページ/スワップファイルに移動するかどうかを決定します) )。したがって、画像は処理されるのを待っているRAMにありますが、プログラムに愚かなフィルターを適用するように指示する前にコーヒーを飲みます。そのため、CPUは何もしていません。

戻って、フィルターを適用して画像にバブルを追加すると、CPUは100%になり、前処理された画像がメモリに保持されるため、さらに多くのメモリが使用されます。そのため、行った変更を元に戻すことができます。高RAM、高CPU。

プログラムがバブルの追加を完了すると、CPUは低下しますが、メモリは低下しません。

もちろん、それほど単純ではありません:-)

記憶ピラミッドの画像


仮想RAMとは何ですか?
オーカー

@Ooker:彼は仮想メモリを意味すると思いますか?
kailash19

24

それはあなたの脳が本と持っているのと同じ関係です。脳が速いほど、読むのが速ければ速いほど、本が大きいほど、より多くのページを含めることができます。


2
ああ...いいアナロジー!
MikeyB 09

また、本棚は永続的なストレージです。うーん
チャールズワトソン

素敵な説明:)
ジャイ

10

RAMはデータの保存に使用されます。CPU時間はデータの処理に使用されます。

CPUとメモリの使用量に関係はありません。プロセスは、システムのすべてのCPUを占有できますが、最小限のメモリしか使用しません。また、プロセスはシステムで使用可能なすべてのメモリを割り当てることができますが、最小限のCPU時間しか使用しません。したがって、両者の間に関係はありません。


5

2つの間に一貫した関係はありません。CPU使用率は、アプリで実行する必要がある処理または作業の量に依存します。RAMは、実行中にアプリを保持するために必要なスペース/メモリの量です。

より多くのRAM =より多くのアプリを同時に実行できます

より多くのCPU =より複雑な計算/操作を実行できます

お役に立てば幸いです。


2

それらは関連していません。いくつかのタスクはこれらのリソースの1つだけを多く使用し、一部は両方のリソースを多く使用します。


1

関係なし。いくつかの強力な数値計算を行うという点で考えてください。RAMは、これらの数値のうち、検索を高速化するために格納できる数値の数です。一方、CPUは、それらの数値に対して数学演算を実行できる速度です。

一方が他方にどのように影響するかについては、CPUは遅いがRAMはたくさんあると仮定しましょう。つまり、これらの数値のかなりの数をメモリに格納できることを意味します。一般的な32ビットマシンでは約5億個です。ただし、これらの数値の処理/計算などは遅くなります。

一方、高速なCPUで少量のRAMを使用している場合、数値の処理は高速になりますが、場合によっては、マシンはそれらをディスクからドラッグする必要があります。 )、RAMから取得するよりも何倍も遅いです。

本当に、それぞれがお互いに影響を及ぼし、最高のパフォーマンスを得るには両方が良いことが必要です。しかし、これは完全に、各アプリケーションが実際にされているものに依存してやって、私たちは今のところについてはあまり詳細には触れていない必要があります(例えば、ディスクの速度、プロセッサキャッシュ、などなど)他の要因がありますが、あなたは意識の意志であるべきです物事を複雑にします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.