web-dev-qa-db-ja.com

すべてのメモリが通常使用されていない場合、RAMが多いコンピュータは高速になる可能性がありますか。

16 GBのメモリを搭載したコンピュータがあるとしましょう。私のコンピューターが通常約4 GBしか使用せず、8 GBに達しない場合、それは(同じ種類の)8 GBのメモリーしかないコンピューターよりも速いですか? 16 GBの残りの半分を8 GBだけ残して、私のコンピューターも同等の速度で動作しますか?

85
Keavon

はい、オペレーティングシステムは余分なRAMをディスクキャッシュとして使用できるため、ディスク上のデータへのアクセスが高速化されます。

ただし、余分なRAMを使用しても、CPUに依存する計算はそれほど高速にはなりません(ディスクI/Oをあまり必要としない)。

112
Wyzard

各オペレーティングシステムはメモリを別々に管理し、何も与えられていないので、私はWindows 7のコンテキストで答えます。

下記は24GBのRAMを搭載したコンピューターの例です。現在「使用中」のメモリとして割り当てられているのは7 GBだけですが、さらに10 GBが「スタンバイ」メモリとして割り当てられており、再度読み取ることができる、または読み取れないデータが含まれています。それが読まれれば、それはあなたのコンピュータを「より速く」するでしょう。 「空き」メモリは現時点ではまったく利用されていません。

Resource Monitor

  • 「利用可能」はスタンバイおよび空きメモリです。言い換えれば、現在すべてのメモリが必要ではありません。
  • 「キャッシュされた」はスタンバイおよび変更されたメモリです。キャッシュに使用されるすべてのメモリ。変更されたものは、スタンバイになる前にディスクへの書き込みを待機している部分です。
  • 「合計」メモリは、ハードウェア予約以外のすべてのメモリです。

Windows 7のメモリ使用量についてもっと知りたい場合は、TechRepublicに 素晴らしい記事 があります。

59
Jason

オペレーティングシステムが8GBのうち4GBしか使用していない場合は、16GBのうち4GBを使用しているマシンと同じように動作します。

使用されていないラムは、マシンのパフォーマンスに影響を与えません。

ただし、理想的な状況は、OSがほぼすべて使用可能なRAMを使用することです。 OSとアプリケーションはそれらが必要とするものを要求するでしょう、そして残りのRAMはキャッシュとして使われるべきです - アプリケーションがより多くのRAMを必要とするならば交換を避けるためにおそらく自由な部分で。キャッシュはまだ「使用中」としてカウントされ、メモリフリーツールで使用されているように見えます。

起動時にこれが見えないように、キャッシュの構築には時間がかかります。しばらくしても、マシンがまだ4GBを超えて使用していない場合は、おそらく4GBを超えるアドレスを指定できない32ビットOS(通常)を実行しています。

16
Paul

方程式のもう一つの部分は、メモリースティックがどのように構成されているかです。特に、最近のマザーボードはデュアルチャンネルメモリをサポートしているので、マザーボードとメモリの間の帯域幅を2倍にすることができます。あなたがメモリをペアにしていて、あなたがそれぞれのペアのうちの1つを取り出したならば、あなたはこれを失った、そして多くのメモリ転送をするときあなたのメモリアクセスは減少するでしょう。 (逆に、8ギガの高速メモリを8ギガの低速メモリとペアにして8ギガしか使用していない場合は、8ギガの低速のメモリを取り出して高速で修復すると、デュアルチャネルになるので高速に実行できます。しかしそれは最も遅い記憶に減速する必要はない)

しかし、一般的に、他の答えで言及されているキャッシングのものは、全体的なパフォーマンスへのより大きな貢献者になるでしょう。

9
Foon

16GBのメモリの半分を取り外すと、コンピュータの動作が遅くなります。

これは、8GB近くのメモリを決して使用しない場合でも同じです。

そのソフトウェア側は他の答えでカバーされていて、ディスクではなくRAMを使うことを選んだOSに帰結します。

ただし、RAMの使用可能量を半分にすると、ハードウェア主導でパフォーマンスが低下することがあります。その理由は、RAMバスはマルチチャネルアーキテクチャを使用しているためです。つまり、コンピュータは複数のRAMモジュール間で同時にデータを転送できます。

おそらくあなたのコンピューターはデュアルチャンネルです。この場合、4 GBのRAM 4つのモジュールのうち2つを取り外すことができ、ハードウェアによるパフォーマンスへの影響はありません。ただし、2つの8GB RAMモジュールのうち1つを削除すると、パフォーマンスに影響します。

クワッドチャネルRAMアーキテクチャを使用している場合は、RAMが4GBモジュールであってもパフォーマンスが低下します。

3
Taemyr

メモリがこれまでに最大値または99%を超えている場合は、ハードディスク上にあるページファイルのために速度が落ちます。ハードディスクはRAMの速度に近づくことさえできません。バス速度によってはRAMがCPUから直接アクセスされるからです。

Windowsは、他のアプリケーションを数えないで、3〜4 GBのRAMのアイドルを使用します。私は何年も前から16 GBを使っていて、実際には8 GB以上必要なことはありませんでした。現実的には、平均的なPCユーザーは、ゲームに4〜6 GB以上を使用することは決してありません。私は、映画を圧縮したり、あるいは[RAM)を集中的に行うことが通常マルチメディアに関係しているときに12 GBに近づくのを見たことがあるだけです。はい、それは同じくらい速く走るでしょう。 IMO.

1日の稼働時間後にアイドル状態 enter image description hereenter image description here

2日のアップタイム後にアイドル状態: enter image description hereenter image description here

RAMウィンドウが多いほど、使用していると思われるRAMが多くなります。

enter image description here

Windows 7では、特定のプロセスを高速化するためにRAMを使用していますが、これはその一例です。

enter image description here

Chkdskは、キャッシュを高速化するためにRAMを最大化することで、パフォーマンスとディスクチェック時間を高速化しています。

2
MORBiD

実際には、答えは述べられているように質問に対して "NO"である可能性がより高いです。 Q.「(使用量)が8 GBに達することはない」と述べ、「同じ種類のメモリ」と記載されているため、速度に影響を与える可能性が最も高い要因(ディスクバッファリング)は影響を受けません。一般的な実用的な例は、ハードディスク全体をバッファするのに十分なメモリを備えたデータベースサーバです。たとえば、4GBのファイルと2GBのプロセス/システム割り当てメモリでは、8GB以上のメモリを使用してもメリットはありません。

例外:

32GBのメモリとSSDディスクを搭載した私のシステムでは、コールドブートはハイバネーションで32GBを節約するので、ハイバネーションから目覚めるよりもかなり速くなりますが、コールドブートを読むのに必要な時間ははるかに少なくなります。メモリを減らすとシステムの速度が上がります。

あなたがより多くのハードディスクにアクセスし、バッファリングのために残されたメモリより多くの人々がより多くのディスク使用量を持っているならば、それはより速いでしょう、それで余分なメモリは助けになります。また、多くのO/Sは使用状況の一部のみを「使用状況」として報告し、残りは「使用状況」ではなくバッファリングとしてカウントされます。 (Linuxはバッファリングを含むものと含まないものの両方の使用法を報告します)。

メモリチャネルがパフォーマンスに影響を与える:[メモリを取り外すことで使用中のメモリチャネルの数が減ると、Foonが正しく指摘しているようにシステムの速度が低下する]

[編集:] David Schwartzさんは、メモリを減らすと、ウィンドウズの下でのプライベートで変更可能なメモリマッピングの制限が減るとコメントしました。 「空きメモリ」が報告されているにもかかわらず(実際のメモリ/スワップはページがアクセスされるまで割り当てられていないため、このリソースを使い果たすことはできません)メモリ使用量としてカウントされます。 Linuxの動作は異なります。各プロセスは最大でメモリとスワップサイズの合計まで割り当てることができ、すべてのプロセスにわたる合計はメモリとスワップの合計を超えることができます。

2
iheggie

おそらく、必ずしもそうとは限りません。とりわけ、RAMでコンピュータに許可されていることの1つは、アプリケーションがメモリを割り当てないことです。可能な限り多くのメモリを消費するためにこれまでに発行したすべての割り当てを許可するのに十分なバッキングストア(RAMを含む)がシステムにない場合、オペレーティングシステムはそれらの割り当てを拒否するか、オーバーコミットする必要があります。一部のオペレーティングシステムではオーバーコミットが発生せず、ほとんどすべての最新のオペレーティングシステムでは許容されるオーバーコミットの量が制限されています。

そのため、使用されていないメモリを使用すると、RAMを必要とする可能性のある操作が失敗した場合に成功することでパフォーマンスが向上します。

0
David Schwartz

メモリの断片化は、追加のメモリを持つもう1つの理由です。あなたが8GBのRAMを持っていて、あなたがそれを80%利用する傾向があるならば、特に最近の使用例では(ブラウザタブの開閉からのようなたくさんのメモリスワップで)、結局かなりの断片化を得るでしょう。

8GBのRAMを追加すると、OSが連続した空きメモリ領域を見つける可能性が高くなります。つまり、パフォーマンスの低下を防ぐために再起動の頻度が少なくて済みます。

0
Joe