Windowsスワップ(ページファイル):有効または無効にしますか?


28

私の個人的な経験から、Windows XPでページファイルを無効にすると、一般的に、他のソフトウェアの変更で得られる速度が最大になることがわかりました。明らかにこれは、かなりの量のRAMが使用可能なときに実行する必要があります。通常、+ 2GBのRAMでうまく動作します。私が今まで本当に経験した唯一の問題は、Adobe Photoshopをロードすることでした。

これは本当に速度の向上ですか、それとも想像していますか?

注:実際にオフにするには、0MBに設定するだけでなく、無効にする必要があります。それ以外の場合、Windowsは、ニーズを満たすために必要なときに拡張します。


9
注意:と呼ばれるドライバーに与えられたメモリの限られた量があるnon-pagedpaged、プールのメモリセクションが。ページファイルは、ページセクションがいっぱいになったときに必要です。ゲーマーが、8 GBシステムでページファイルを無効にしたという理由だけで、ゲームがページプールメモリについて文句を言うのを見てきたからです。結論:ページファイルが必要であり、ページプールの枯渇を防ぎ、実際にシステムを高速化します。
タマラウィスマン

回答:


18

Windows XPは、最小化されたアプリケーションを狂ったようにディスクにフラッシュします。自分で試して、大きなトレントのダウンロードを開始し、すべてを最小化します。すぐに、他のアプリケーションの代わりに、RAMのほぼすべてがトレントのファイルキャッシュとして使用されます。ページファイルを無効にすると、この動作が防止されます。

ただし、Windows VistaおよびWindows 7では、システムがこのシナリオをはるかによく処理します。したがって、これらのバージョンでページファイルを無効にすると、大きな違いが生じるかどうかわかりません。

一部のゲームでは、ページファイルを必要としない場合でもページファイルが必要になります。最近、Steamからダウンロードしたゲームデモをプレイしようとすると、このことに気付きました。私が利用可能なRAMの6本のライブを持っていたにもかかわらず、ゲームは、私は小さな、小さなページファイルを作成するまで開始することを拒否した。.. ため息

個人的には、RAMが十分にあるときは、ページングファイルを使用しないことを好みます。


この質問をしたので、WinXPでページファイルなしで行ってきましたが、それは素晴らしかったです。私はまだWin7で実際に試していないので、新しいバージョンのWindowsに価値があるかどうかはわかりません。
ジョーフィリップス

Win7で試してみましたが、素晴らしい経験はありませんでした。SSDは利用できないため、ページファイルを作成するだけで十分です
ジョーフィリップス

ページファイルの有無は、ファイルのキャッシュ動作とは直接関係ありません。
ジェイミーハンラハン

25

それを台無しにしないでください、Windowsがそれ自身を理解できるようにしてください。

このServerFaultの回答は、理由の最も優れた説明です。

多くの人は、Windowsがデータをオンデマンドでページファイルにプッシュすると想定しているようです。EG:何かが大量のメモリを必要とし、ニーズを満たすのに十分なRAMがないため、Windowsはこの最後の瞬間にRAMからディスクへのデータの書き込みを開始します。

これは間違っています。

パンチライン:

ページファイルを完全に削除すると、ディスクのスラッシングが発生する可能性があります。


12
ページファイルを削除すると、どのようなディスクスラッシングが発生しますか?どちらかといえばスラッシングを停止する必要があります。Windowsでは、RAMが不足するとエラーが発生します。無効になっている場合は、スワップを使用することを決定しません。
ジョーフィリップス

2
d03boy、SFの投稿を読んでください。アクティブなプロセスメモリをRAMから移動する必要がある場合、より多くのディスクアクティビティが発生します。
Factor Mystic

3
@ d03boy:答えはリンクされた投稿にあります。基本的に、使用するRAMが多すぎると、HDが何らかの方法で使用されます。ページファイルを削除しても、RAMをさらに割り当てる必要がある場合は、HDを使用してプログラムコードを潜在的に保存します(要求に応じて元のファイルから単純に読み取ります)。
ショーン

1
@ Factor、Windowsは、使用する物理RAMが多すぎる場合、単にエラーを返します。私の知る限りRAM @Darthの何かを外に移動するつもりはない、リンクされたポストは、それがやっていることのように聞こえることページングはとにかくオフにあるかどうか
ジョー・フィリップス

2
これはWindows XPには当てはまりませんが、Windows XPにはひどいメモリ管理があります。私の答えを読んでください。
zidar

7

マイクロソフトの回答「スワップファイルを無効にする」から

http://social.answers.microsoft.com/Forums/en-US/w7performance/thread/0bd8a75c-2607-4468-8342-c35ea82ea670

ケン・ブレイク、Microsoft MVP

それによるパフォーマンスの向上はありますか?ありがとうございます。

あなたはできる?はい。あなたは?いいえ、間違いありません。

それを行うことでパフォーマンスが向上しますか?いいえ、パフォーマンスが低下する可能性があります。

まず、2GBは多くのRAMではなく、ほとんどの人が必要とする最小量です。

第二に、ページファイルがない場合は、持っているすべてのRAMを使用することはできません。これは、割り当てられた仮想メモリが決して使用されない場合でも、Windowsが仮想メモリを必要とする可能性があることを見越して仮想メモリを事前に割り当てるためです。ページファイルがない場合、その割り当ては実際のメモリで行われる必要があるため、そのメモリが占​​有され、あらゆる目的で使用されることを防ぎます。

第三に、ページファイルがないことによるメリットはありません。必要ない場合は使用されません。割り当てられたメモリと使用済みメモリを混同しないでください。

Ken Blake、Microsoft MVP(Windowsデスクトップエクスペリエンス)2003年からKen Blake


スラッシングはどうですか?無効になっている場合、HDの使用は少なくなりますか?これは全体の答えのようには見えません。言うまでもなく、この質問はXPに関するものであり、この回答はWin7に関するものです
ジョーフィリップス

スワップファイルを無効にできる十分なメモリがあれば、MVPが正しいとは思いません。メモリが不足しないようにしてください。
タマラウィスマン

1
@JoePhilllips-いいえ、簡単に言えば、データメモリ+プログラムメモリがページファイルのないシステムメモリを超える場合、プログラムに使用できるスペースが減ってデータ用のスペースが確保されます。プログラムは常に元のプログラムファイルから再フェッチできるためです。したがって、8GBのメモリ、6GBのデータ、および4GBのアプリケーションがある場合、OSはこれらの4GBのプログラム間で共有するのに2GBしかありません。常にコードを読み取り、ディスクをスラッシングします。実際に必要なデータが4GBのみで、残りを2GBのページファイルにスワップする場合、OSは他の4GBをプログラムに使用できるため、スラッシングは発生しません!
マークブース

6

enableと言います。

RAMの容量に関係なく、少なくともページファイルが有用な場合があります。また、ページファイルがある場合、ほとんどの場合、Windowsランタイムの大部分がそこにオフロードされることに注意する必要があります。理由?メモリーには必要ですが、現時点では必要ありません。スワップファイルに入れると、アクセスに時間がかかることを意味する場合がありますが、実際に使用しているプログラムのためにより多くのRAMが残されます。

パフォーマンスが向上した理由は、システム全体をRAMに強制的にロードしていたためです。これは明らかに高速です。ただし、FirefoxやPhotoshopなどのメモリを大量に使用するプログラムを一度に使用し始めると、その改善はすぐに実現すると思われます。*

ただし、コンピューティングの習慣だけで、この問題に遭遇することはありません。ページファイルをオフにしようとした場合、それを少し楽しんでいないことを知っています。したがって、本当にやりたい場合は、しばらくオフにして、何が起こるかを確認してください。後でいつでもオンに戻すことができます。

*「その段落はかなりの量の憶測だった」/免責事項;)


私は最近アップグレードしてから4GBのRAMを使用しています(winxpは約3.5しか表示されませんが)、数か月間はページファイルを何も問題なく1回または2回しか再起動しませんでした。私はこれまでのところ、問題なくかなり重いプログラム(Photoshopを含む)を使用しています。
ジョーフィリップス

その場合は、私のアドバイスを無視して、自分に合っていると思われることを行ってください。Factor Mysticの投稿には同じ結論に対するはるかに優れた議論がありますが、少なくとも彼が言っていることを念頭に置いてください;)
ショーン

たぶん私はそれをオンにして、それが役立つかどうかを確認します。しかし、スワップへの書き込みがハードドライブに適しているとは想像できません。
ジョーフィリップス

5

私は有効と言いますが、別のドライブ、できれば他のI / Oホグで使用されていないドライブに移動します。多くの場合、ページファイルを完全に無効にするよりも高速です。もちろん、RAMの最大化は優れた並列最適化です。


1
その場合は、ページファイルを別の物理デバイスに移動していることを確認してください。同じデバイスの別のパーティションにそれを移動するのは、工業グレードのハードドライブ(SCSIなど)がない限り、時間の無駄です。
パウェウポルビッチ

3

4 GBの物理メモリを搭載した32ビットWindowsシステムでスワップファイルを無効にします。仮想メモリをオンにしてもシステムにアドレスが追加されることはなく、オフにすることで、Windowsがスワップインまたはスワップアウトするのを待つ必要がなくなります。


6
どのタイミングテストを実行し、どのような負荷の下で実行しましたか?
マイケルコーネ

2
ハードデータなし==まだ主観的な逸話
ロマンダ09

4
もちろん、それは主観的な逸話です-私は今までにそうではないと主張しましたか?なぜ人々がタイミングデータを求めているのかわかりません。Windowsでサーバーを実行しているわけではありません(そうする必要がある場合を除きます!)。そして、そのようなマシンの場合、主観的な反応だけが重要です。
kquinn

1
そして、あなたは時間としてプロセス以上のものを実行したことはありません、私は思う?32ビットシステムでも、4GBを超える物理RAMをいつでも割り当てることができます。仮想メモリAPIを使用してアドレス空間のセクションを再マッピングすることにより、4GBを超えるRAMを単一のプロセスに割り当てることもできます。
Eclipseの

1
えー、4GB以上の仮想RAMを割り当てることができるということですか?すべての物理RAMが使い果たされると、MMUからページングエラーが発生し始め、スワッピングが発生します。ページングファイルがないと、DLL / EXEデータがスローされてスワップインされます。ページングファイルの場合、ページファイルに書き込まれたものは何でもかまいません。
JBRウィルキンソン

3

4 GBの物理メモリを搭載した32ビットWindowsシステムでスワップファイルを無効にします。仮想メモリをオンにしてもシステムにアドレスが追加されることはなく、オフにすることで、Windowsがスワップインまたはスワップアウトするのを待つ必要がなくなります。

いいえ。アドレス空間は次のとおりです。すべてのPROCESSには独自の31ビットアドレス空間(下位2GB)があり、カーネルには独自の31ビットアドレス空間があります(現在のスレッドを所有するプロセスに関係なく常に同じです)。これにより、2GB *利用可能なユーザーモードアドレス空間のプロセス数が得られます。スワップを使用しない場合、ユーザーモード領域は、物理メモリサイズからカーネルメモリサイズを引いたものに制限されます(通常は約200 MB)。もちろん、システムが割り当てることができる仮想メモリの量には、人為的な制限があるかもしれませんが、私はマイクロソフトのライセンスポリシーの専門家ではありません。

また、スワップを無効にしても、ディスクアクセスにつながるページフォールトがないことを必ずしも意味しないことに注意してください。メモリがマップされるファイルはスワップファイルだけではありません。すべての実行可能ファイル(つまり、カーネルモードドライバーを除く.exeまたは.dll)には、独自のディスクバックアップ、つまりexeファイルがあります。もちろん、書き込み可能なデータセグメント、IAT、またはコードセグメント(パックされた実行可能ファイルの場合など)など、メモリ内で変更されたページには、個別のスワップバッキングが必要ですが、コード/静的データ/リソースの大部分はスワップを必要とせず、システムのリソースが少ないときにメモリから削除できます。プロセスがそのようなデータへのアクセスを必要とする場合、スワップが有効かどうかにかかわらず、ページフォールトとディスクアクセスが発生します。


2

ショーン・ナイマンは以前、「特にFirefoxやPhotoshopのようなメモリを大量に消費するものについては、その改善はすぐに実現するだろう」と述べました。

Firefoxで追加したかったのですabout:configが、アドレスバーに入力してFirefoxの詳細設定に移動した場合、新しい文字列を追加しbrowser.cache.disk.enableてブール値を設定できfalseます。これにより、FirefoxはRAMにのみキャッシュされます。また、文字列browser.cache.disk.capacityを追加して値を指定し、Firefoxがブラウザのキャッシュに使用するRAMの容量を制御することもできます。これがお役に立てば幸いです。私はRAMにキャッシュするように設定しており、Firefoxは常に超高速です。

このラップトップのシステムドライブ用のSSDドライブもあり、ストレージ用のセカンダリベイに500GBのロータリードライブがあり、Windows 7 Proのロータリードライブを指すようにTMP、TEMP、およびTemporary Internet Filesフォルダーを設定します。また、pagefile.sysをD:のロータリードライブに移動すると、システムは非常に高速に動作します。とにかく4GB RAMを持っているので、Windows 7でもページファイルをあまり使用しないと思いますが、ページファイルをオンのままにしておくと何が害になりますか?


あなたが持っているどのくらいのメモリどんなに、窓が何らかの理由でページファイルを使用するのが好き
ジョー・フィリップス

0

スワップファイルを無効にすることは、おそらくコンピュータのパフォーマンスを向上させるために使用できる最も劇的な改善の1つです。典型的なシナリオでは、ほとんどのラップトップは、可動部分を持つ物理的な磁気ハードディスクを使用します。これらのドライブは、コンピューターのメモリの速度と比較すると非常に遅いです。したがって、ウィンドウを「その範囲内」にとどめ、ディスクに書き出さないように強制するRAMがある場合、まだメモリにないファイルをディスクにヒットする必要がある場合にのみスローダウンします。メモリ内のすべてが大幅に高速に実行されます。アイデアは、オペレーティングシステム全体をキャッシュして、まだメモリにない何かが必要な場合にのみ物理ディスクの読み取りまたは書き込みを行うことです。

RAMの読み取り/書き込みは、物理磁気ディスクではミリ秒単位であるのに対し、ナノ秒単位で行われます。

ここで考慮すべきことは、新しいスワップファイルオプションが実用的になったことです。ソリッドステートディスクを使用する場合、またはウィンドウを開いてスワップファイルをSDカードに保存する場合、パフォーマンスが大幅に向上します。

ちょうど私の0.02ドル


3
スワップを無効にしても、すべてがメモリ内にとどまるわけではありません。つまり、メモリからフラッシュされたものは、必要に応じてディスク上の元の場所から読み戻す必要があります。これは、システムが遅くなることを意味します。私の回答でリンクしているSFの投稿を参照してください。
ファクターミスティック

3
これがまさにディスクをヒットする必要がないように最適化する理由です。私は前にこれをやったことがあり、それは動作します。
Axxmasterr 09
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.