Як зменшити обмолот диска (пейджинг)?


11

У мене є 4 Гб оперативної пам’яті, але Windows все одно іноді обмолочує диск (особливо часто, коли програма мінімізується на деякий час, а потім я знову його активую). Цілком нерозумно, адже диспетчер завдань показує, що 2 ГБ оперативної пам’яті безкоштовні. Чи є спосіб запобігти витісненню пам'яті програми на Windows?

Я спробував налаштувати Superfetch на кешування лише файлів запуску (це трохи допомогло) та вимкнення файлу підкачки (це дуже допомогло та добре працювало для мене в Windows XP; але Windows Vista / Windows 7 цього не дозволяє - це показує "низький повідомлення про пам'ять ", навіть якщо у мене є 1 ГБ оперативної пам'яті.)

Що ви можете мені порадити?


6
Ви не хочете вимикати супервибір з 4 Гб оперативної пам’яті, але ви можете вимкнути індексацію. Залиште файл сторінки в спокої, Windows знає про нього більше, ніж хтось із нас. Я не можу допомогти з підкачкою.
Phoshi

2
Ні, я звичайно хочу вимкнути це. Проклята річ занадто погано оформлена. Одного разу я виявив, що він завантажував усі файли якоїсь гри під час кожного завантаження (я грав вечорами), і з’їв половину моєї оперативної пам’яті, і в останній день Superfetch працював на моєму ПК із необмеженими налаштуваннями.
skevar7

1
Термін обмолот звичайно відноситься до ситуації, коли фізична пам'ять заповнена або майже повна, і відбуваються постійні заміни сторінки. Це не стосується звичайної активності заміни сторінки. Те, що ви бачите, - це не молотіння, а лише те, як був розроблений алгоритм управління пам’яттю. Зберігайте простір для нещодавно породжених процесів, припускайте, що процес, у якого мінімізоване вікно, не використовується, і він повинен перенести свою пам'ять на диск тощо.
спонсори

2
Це найгірше рішення вважати, що оскільки вікно мінімізоване, воно не використовується. Якщо його мінімізувати, це тому, що на екрані не вистачає місця під час багатозадачності. Мені так нудно повертатися до свого комп’ютера, і, незважаючи на те, що мало запущених програм, воно буде відставати і заїкати, щоб повернути дані зі сторінки сторінки, коли я відновлюю деякі вікна з мінімізованого стану, незважаючи на те, що GIG мають безкоштовну оперативну пам’ять. Файл сторінки НІКОЛИ не повинен торкатися, якщо у мене не буде оперативної пам'яті. Якщо Windows хоче зробити припущення щодо мінімізованих програм, робіть це, коли насправді недостатньо оперативної пам’яті.
Трайнко

Відповіді:


7

Марк Русіянович написав добру довгу статтю про Віртуальну пам'ять,
просуваючи межі Windows: Віртуальна пам'ять

Віртуальна пам'ять відокремлює уявлення програми про пам'ять від фізичної пам'яті системи, тому операційна система вирішує, коли і якщо зберігати код і дані програми у фізичній пам'яті та коли зберігати їх у файлі. Основна перевага віртуальної пам’яті полягає в тому, що вона дозволяє виконувати більше процесів одночасно, ніж це могло б вписатись у фізичну пам'ять.

Хоча віртуальна пам'ять має обмеження, пов'язані з обмеженнями фізичної пам'яті, віртуальна пам’ять має обмеження, що виходять з різних джерел і які залежать від споживача. Наприклад, існують обмеження віртуальної пам’яті, які застосовуються до окремих процесів, які запускають програми, операційну систему та для системи в цілому. Важливо пам’ятати, читаючи це, що віртуальна пам'ять, як випливає з назви, не має прямого зв’язку з фізичною пам'яттю. Windows, призначивши файловий кеш певної кількості віртуальної пам’яті, не диктує, скільки файлових даних він насправді кешує у фізичній пам’яті; це може бути будь-яка кількість від не більше до суми, яку можна адресувати через віртуальну пам'ять.

Це дуже добре прочитане.

Наскільки великим я повинен зробити файл підкачки?
Мабуть, одне з найчастіше заданих питань, пов’язаних із віртуальною пам’яттю, наскільки великим я повинен створити файл підкачки? Немає кінця смішними порадами в Інтернеті та в журналах газетних кіосків, що висвітлюють Windows, і навіть Microsoft опублікувала оманливі рекомендації. Майже всі пропозиції ґрунтуються на множенні розміру оперативної пам’яті на деякий фактор, загальні значення яких складають 1,2, 1,5 та 2. Тепер, коли ви розумієте, яку роль відіграє файл підкачки у визначенні межі фіксації системи та як процеси сприяють заряду комісії, ви добре вмієте бачити, наскільки насправді такі непотрібні формули.


Рання стаття: Проштовхування меж Windows: фізична пам'ять

Ви можете побачити макет фізичної пам'яті за допомогою інструмента Meminfo від Алекса Іонеску .


5
Нічого нового для мене там немає. І це зовсім не відповідь на моє запитання.
skevar7

2
@ skevar7: Можливо, не для вас відповідь, але хороші посилання на пояснення в цілому для того, хто знайшов би цю тему і хто не мав би стільки знань, як ви.
Gnoupi

1
правило: навіть не згадайте про пейджинг, якщо це не є абсолютно впевненою, пов'язаною з вашою проблемою, або якщо ви просто хочете розгорнути нескінченну дискусію щодо ДО та НЕ'-і ... те ж саме стосується веб-браузерів та антивірусних програм: )

1
Я абсолютно впевнений, що підказка є винною, бо perfmon показує сильні несправності, коли лускає диск. Я звичайно знаю, що вимкнення файлу підкачки значно покращує продуктивність. Це об'єктивний факт, і його можна виміряти. Єдина проблема полягає в тому, що Windows, оскільки Vista не хоче більше працювати в такій конфігурації.
skevar7

3
@ skevar7: І, можливо, просто можливо, в Microsoft є люди, які думають, і вони подумали і вирішили, що файл сторінки потрібен. Вони не зробили це просто для того, щоб вас турбувати.
Gnoupi

4

Просто залиште управління віртуальною пам'яттю Windows, це добре справляється. Пейджинг (і, таким чином, розмивання Марка Русиновича щодо цього питання) є досить невідповідним для обстрілу диска (якщо у вас багато системної пам'яті), ви шукаєте налаштування NTFS .

O'Reilly має цікаву статтю про Hack Performance NTFS .

З боку обладнання: покращення жорсткого диска з більшою швидкістю віджиму та більшим кешем теж допоможе.

Ось як вбити попередження про низьку пам'ять, взяти на себе право власності та видалити наступні ключі реєстру.

[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}]

Це запобіжить завантаженню RADAR служби діагностики. Це працює для мене в Windows Vista, ключі присутні в Windows 7. Я не пробував цього, хоча просто резервні копії цих клавіш, перш ніж їх видалити.


2

Єдиний спосіб, який я знайшов, - це збільшити розмір оперативної пам’яті до 8 ГБ та відключити підказка шляхом встановлення

HKEY_LOCAL_MACHINE \ Система \ CurrentControlSet \ Управління \ Менеджер сесій \ Управління пам'яттю \ DisablePagingExecutive = 1

(потрібно перезавантажити).

Це знизило активність диска майже до нуля.


Я підозрюю, у вас був химерний або повільний потяг, щоб цього хотіти. У мене є щось подібне і суперечить тому, що більшість з них припускає, що ви зробили, було б хорошим рішенням. Збільшення оперативної пам’яті та використання мінімальної кількості підказок на диску або відсутність може бути більш розумним (і економічним) рішенням, ніж заміна повільних носіїв.
j riv

Цей параметр реєстру не "вимикає підкачку". Він вимикає лише підкачування сторінок для тих, що в іншому випадку могли б бути частинами, що містяться на сторінці ntoskrnl.exe, і пулом, що підключається до сторінки.
Джеймі Ханрахан

Не знаю про Vista, але в Windows 7 я відключаю пейджинг і не має проблем і попереджень. Це з 8 або 16 ГБ оперативної пам’яті.
i486

1

Перевірте Панель управління \ Система та безпека \ Система> Розширені налаштування системи> [Додатково]> Продуктивність: Налаштування> [Додатково]

Планування процесорів пов'язане з вашою проблемою, як і можливість вимкнути файл підкачки, який ви не повинні робити. (Тобі це потрібно)


0

Це здається, що ви встановили очищувач кешу / пам'яті. Вони переміщують програми для обміну, коли ви їх мінімізуєте, а не залишаєте їх у пам’яті.

Система повільна чи ви просто вживаєте слово thrash, оскільки ви бачите, що блимає світло HD?


Ніяких очищувачів. Іноді потрібно провести набагато більше часу, ніж зазвичай, щоб виконати просту операцію (5-10 секунд), і диск молотить. Зазвичай це відбувається після простою програми протягом деякого часу. Дуже прості сподівання - відкрити нову вкладку в Opera, створити новий файл у Visual Studio тощо. Отже, я припускаю, що алгоритм підкачки Windows не є ідеальним. Повністю вимкнення файлу підкачки працювало для мене в WinXP, але, на жаль, Vista і Win7 цього не дозволяють.
skevar7

На відміну від багатьох ОС Windows, помилки з апаратними засобами вирішать досить багато, без збоїв. Можливо, у фоновому режимі відбувається відновлення, яке спричиняє відставання. Я знаю, що це відстійно, але проведіть тест HD, щоб переконатися, що він не підключений, оскільки це дійсно звучить як проблема вводу / виводу, оскільки проблема відходить, коли ви не дозволяєте системі використовувати своп. Перевірте наявність оновлень BIOS, пов'язаних з введенням / виведенням, контролером hd тощо, оскільки може бути відома проблема. Чи приймає система FOREVER до завантаження (XP, Vista або 7)? Якщо так, то це безумовно проблема вводу / виводу.
UnderLoK

* Я мав би сказати: "Windows поставить досить багато апаратних проблем, не повідомляючи про проблему";)
UnderLoK

0

Перейдіть до Linux, це не робить.

Люди скажуть вам, що Windows розумніша за вас, і ви не повинні поспішати з налаштуваннями файлів сторінки, і вони мають рацію. Але ця система здебільшого налаштована на виділення нової пам'яті для процесу майже миттєво, і це робить це добре. Одним з побічних ефектів є те, що він весь час переміщує все, що є в пам'яті, на диск, тому, коли йому потрібна нова порція пам'яті, вона може просто стерти цю частину пам'яті та подати її відразу, якщо вона, звичайно, не змінилася. Я вважаю, що, коли ви залишаєте запущені програми, всі вони зберігаються на диску, а потім в інші моменти інші програми або система кешування починають використовувати цю пам'ять. Тому додаток залишає мінімум своїх даних у фізичній оперативній пам’яті, і коли ви знову почнете його використовувати, він повинен повернути все з диска.

Однак, я не думаю, що ви можете все зробити з цим, це лише одна з основних властивостей системи. Ви можете зробити це лише гірше, відключивши сторінку або зробивши будь-яку іншу налаштування системи. Ви не можете змусити його працювати так, як вам подобається, як це просто не було написано з цим на увазі.


2
І ще раз відповідь "моє вікно робить це, як я можу ...? -> Перейти до Linux". Однак решта відповіді правильна, але можна було обійтися і без першого речення.
Gnoupi

Гаразд, але якщо у вас є 8 Гб оперативної пам’яті, і справжня потреба полягає в 3 Гб - навіщо потрібно робити будь-яку підкачку на диску? З іншого боку, уявіть, що у вас є обмінний файл 2 Гб оперативної пам'яті + 2 ГБ - як ця система працює без "вибуху"? 4 Гбайт вистачає на все, але за допомогою 8 Гб фізичної оперативної пам'яті + 0 своп "можливо" недостатньо пам'яті. Як? Я думаю, що алгоритм віртуальної пам’яті неправильний для Windows 95 разів, і він не змінений у Windows 10.
i486
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.