ディスクのスラッシング(ページング)を減らす方法は?


11

私は4 GBのRAMを持っていますが、Windowsはまだディスクを時々スラッシングします(特に、アプリケーションがしばらくの間最小化された後、再度アクティブにすると特に頻繁に起こります)。タスクマネージャーは2 GBのRAMが空いていると表示するため、完全に愚かです。Windowsがプログラムメモリをスワップアウトするのを防ぐ方法はありますか?

スタートアップファイルのみをキャッシュするようにSuperfetchを設定しようとしました(少し役立ちました)。 1 GBのRAMが空いている場合でも、頻繁に」というメッセージが表示されます。)

何をすればいいですか?


6
4GBのRAMでスーパーフェッチをオフにしたくないのですが、インデックスをオフにしたい場合があります。ページファイルはそのままにしておきます。Windowsは、私たちよりもそれについてよく知っています。ただし、ページングを支援することはできません。
Phoshi

2
いいえ、確かにオフにします。いまいましいものはあまりにもひどく設計されています。ブートごとにいくつかのゲームのすべてのファイルを読み込むと(夕方にプレイしていました)、それがRAMの半分を消費し、それがSuperfetchが無制限の設定でPCで実行されていた最終日でした。
skevar7 09

1
スラッシングという用語は一般に、物理メモリがいっぱいまたはほぼいっぱいになり、一定のページスワップが発生する状況を指します。通常のページスワップアクティビティを指すものではありません。表示されているのはスラッシングではなく、メモリ管理アルゴリズムの設計方法です。新しく生成されたプロセスに使用可能なスペースを確保し、ウィンドウが最小化されたプロセスは使用されておらず、メモリをディスクなどに移動する必要があると想定します。
パワー

2
これは、ウィンドウが最小化されているため使用されていないと想定する最悪の決定です。最小化されている場合、マルチタスク中に画面上に十分なスペースがないためです。私は自分のコンピューターに戻るのがうんざりで、プログラムをほとんど実行していないにもかかわらず、RAMの空き容量がGIGにあるにもかかわらず、最小化された状態からウィンドウを復元するときに、ページファイルからデータを戻すのに時間がかかります。RAMが不足している場合を除き、ページファイルに手を触れないでください。Windowsが最小化されたプログラムについて仮定したい場合は、実際に十分なRAMがないときに行います。
トリインコ

回答:


7

Mark Russianovichは、Windowsの限界を押し広げる仮想メモリに関する優れた長い記事を書いてい
ます。仮想メモリ

仮想メモリは、プログラムのメモリビューとシステムの物理メモリを分離するため、オペレーティングシステムは、プログラムのコードとデータを物理メモリにいつ、いつ保存し、いつファイルに保存するかを決定します。仮想メモリの主な利点は、物理メモリに収まるよりも多くのプロセスを同時に実行できることです。

仮想メモリには物理メモリの制限に関連する制限がありますが、仮想メモリにはさまざまなソースから派生した制限があり、消費者によって異なります。たとえば、アプリケーション、オペレーティングシステム、およびシステム全体を実行する個々のプロセスに適用される仮想メモリの制限があります。これを読むとき、仮想メモリは、その名前が示すように、物理メモリと直接接続していないことを覚えておくことが重要です。Windowsがファイルキャッシュに一定量の仮想メモリを割り当てても、実際に物理メモリにキャッシュされるファイルデータの量は決まりません。仮想メモリを介してアドレス指定できる量から、それ以上の量まで可能です。

とても良い読み物です。

ページングファイルはどのくらい作成する必要がありますか?
おそらく、仮想メモリに関連する最も一般的な質問の1つは、ページングファイルをどのくらい大きくすればよいですか?WebやWindowsを取り上げたニューススタンドの雑誌には馬鹿げたアドバイスが終わりませんし、Microsoftでさえ誤解を招くような推奨事項を公開しています。ほとんどすべての提案は、RAMサイズに何らかの要因を掛けることに基づいています。一般的な値は1.2、1.5、2です。システムのコミット制限とプロセスがコミットチャージにどのように寄与するかを定義する際にページングファイルが果たす役割を理解したので、そのような式が本当に役に立たないかを確認するのに十分な位置にあります。


以前の記事:Windowsの限界を押し広げる:物理メモリ

Alex IonescuのMeminfoツールを使用して、物理メモリのレイアウトを確認できます。


5
そこに私にとって新しいものは何もありません。そして、それは私の質問に対する答えではありません。
skevar7 09

2
@ skevar7:たぶんあなたへの答えではありませんが、このトピックを見つけてあなたほど知識がない人のための全体に関する説明への良いリンクです。
グヌーピ09

1
経験則:問題に絶対的な確実性がある場合や、DOとDOについて無限の議論を引き起こしたい場合を除き、ページングについても言及しないでください。 )

1
ページングが有罪であることは絶対に確信しています。cozperfmonはディスクがスラッシングしているときにハードフォールトを表示します。ページングファイルをオフにするとパフォーマンスが大幅に向上することは確かに知っています。これは客観的な事実であり、測定することができます。唯一の問題は、Vistaがそのような構成で動作することを望まないため、Windowsであるということです。
skevar7 09

3
@ skevar7:そして多分、ちょうど多分、マイクロソフトで考えている有能な人々がいて、彼らはページファイルが必要であると考え、そして決定した。彼らはあなたを煩わせるだけではありません。
グヌーピ09

4

仮想メモリ管理をWindowsに任せるだけで、うまくいきます。ページング(およびこの問題に関するMark Russinovicの宣伝文句)は、ディスクスラッシング(システムメモリが十分にある場合)とは無関係で、NTFSの調整を探しています

O'ReillyにはNTFS Performance Hacksに関する興味深い記事があります

ハードウェア側では、より高いスピンレートとより大きなキャッシュを備えたより良いハードドライブも非常に役立ちます。

そして、メモリ不足の警告を無効にし、所有権を取得し、次のレジストリキーを削除する方法を次に示します。

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WDI\DiagnosticModules\ {5EE64AFB-398D-4edb-AF71-3B830219ABF7}]

そして

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WDI\DiagnosticModules\ {45DE1EA9-10BC-4f96-9B21-4B6B83DBF476}]

これにより、診断サービスがレーダーをロードできなくなります。Windows Vistaでは動作しますが、キーはWindows 7に存在します。私は試していませんが、削除する前にそれらのキーをバックアップするだけです。


2

私が見つけた唯一の方法は、RAMサイズを8GBに増やし、設定してページングをオフにすることでした

HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ DisablePagingExecutive = 1

(再起動が必要です)。

これにより、ディスクアクティビティがほぼゼロになりました。


私はあなたがそれを望む風変わりなまたは遅いドライブを持っていたと思う。私がここで最も想定していることと似たようなものがありますが、あなたがしたことは良い解決策でしょう。RAMを増やし、ディスクページングを最小限またはまったく使用しない方が、低速のメディアを交換するよりもインテリジェント(かつ経済的)なソリューションになる可能性があります。
J RIV

そのレジストリ設定は「ページングをオフにしません」。ntoskrnl.exeおよびページプールのページング可能な部分のページングのみを無効にします。
ジェイミーハンラハン

Vistaについては知りませんが、Windows 7ではページングを無効にし、問題や警告はありません。これは、8または16GBのRAMを搭載しています。
i486

1

コントロールパネル\システムおよびセキュリティ\システム>システムの詳細設定> [詳細]>パフォーマンス:設定> [詳細]

プロセッサのスケジューリングは問題に関連しており、実行すべきではないページングファイルを無効にする機能も同様です。(君はそれが要る)


0

キャッシュ/メモリクリーナーをインストールしたようです。メモリに残すのではなく、最小化するとアプリケーションをスワップに移動します。

HDライトが点滅しているため、システムが遅いか、スラッシュという言葉を使用していますか?


クリーナーなし。簡単な操作(5〜10秒)を実行するのに通常よりはるかに時間がかかり、ディスクがスラッシングしている場合があります。これは通常、アプリがしばらくアイドル状態になった後に発生します。非常に単純なオペレーション-Operaで新しいタブを開く、Visual Studioで新しいファイルを作成するなど。したがって、Windowsのページングアルゴリズムは完璧にはほど遠いと思います。ページングファイルを完全にオフにすることはWinXPでうまくいきましたが、残念ながらVistaとWin7ではそれを許可していません。
skevar7 09

多くのOSのWindowsとは異なり、Windowsはクラッシュせずにかなりの量のハードウェアの問題に対処します。また、バックグラウンドで何らかの回復が行われ、遅延が発生している可能性があります。私はそれが悪いことを知っていますが、HDテストを実行して、システムがスワップを使用することを許可しないと問題がなくなるため、本当にI / Oの問題のように聞こえるので、ジャックされないことを確認します。既知の問題がある可能性があるため、I / O、hdコントローラーなどに関連するBIOSアップデートを確認してください。システムの起動にはFOREVERが必要ですか(XP、Vista、または7)?もしそうなら、それは間違いなくI / Oの問題です。
UnderLoK 2009

*「Windowsは問題を通知せずにかなりの量のハードウェアの問題に対処する」と言っておくべきでした;)
UnderLoK 2009

0

Linuxに移行しても、それはできません。

Windowsはあなたよりも賢いので、ページファイルの設定をいじってはいけない、彼らは正しいと人々は言うでしょう。しかし、そのシステムはほとんどの場合、プロセスに新しいメモリをほぼ瞬時に割り当てるように調整されており、それは非常に優れています。副作用の1つは、メモリ内にあるすべてのものを常にディスクに移動することです。したがって、メモリの新しい部分が必要になったときに、メモリのこの部分を消去し、もちろん変更されていない場合はすぐにそれを与えることができます。アプリケーションを実行したままにすると、すべてのデータがディスクに保存され、ある時点で他のアプリケーションまたはキャッシュシステムがこのメモリの使用を開始すると思います。そのため、アプリケーションには最小限のデータが物理RAMに残されたままであり、再び使用を開始すると、ディスクからすべてを取り戻す必要があります。

そうは言っても、それですべてができるとは思わない、それはシステムの主要な特性の1つにすぎない。さらに悪化させるには、ページをオフにするか、他のシステムチューニングを実行します。それを念頭に置いて書かれていないため、好きなように動作させることはできません。


2
そしてもう一度、「私のウィンドウはそれをする、どうすれば...?-> Linuxに移行する」という答えが返ってきます。ただし、答えの残りの部分は正しいですが、最初の文なしで行うこともできます。
グヌーピ09

わかりましたが、8GBのRAMがあり、実際に3GBが必要な場合-なぜディスクへのスワップが必要ですか?一方、2GBの物理RAM + 2GBのスワップファイルがあると想像してください。このシステムが「爆発」せずにどのように機能するのでしょうか。すべてに4GBで十分ですが、8GBの物理RAM + 0スワップでは、メモリが不足している可能性があります。どうやって?私は、仮想メモリのためのアルゴリズムは、Windows 95倍から間違っていると思うと、それは、Windows 10で変更されていません
i486の
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.