Есть ли причина не отключать подкачку ядра Windows?

17166
Nathaniel

Поэтому я планирую в конечном итоге перейти к 2 ГБ (mobo max) ОЗУ с 1 ГБ, и я хочу отключить подкачку ядра, как только я это сделаю, потому что я слышал, что это может повысить производительность (и я верю). Есть причина не делать этого или какие-то общие мысли по этому поводу?

Изменить: для ясности, это не отключение общего подкачки оперативной памяти. Это отключает подкачку памяти ядра (или, по крайней мере, ее части, как заметил Чарлз).

10
Было бы неплохо, если бы вы более конкретно указали, какие настройки вы планируете изменить. bk1e 15 лет назад 0

7 ответов на вопрос

6
Charlls

Следует отметить, что этот параметр влияет только на небольшую часть ядра. Windows будет выводить это только в том случае, если память нужна для других целей. Часть ядра никогда не может быть выгружена ни при каких обстоятельствах, в то время как другие останутся страницами. Если у вас есть достаточный объем ОЗУ (512 МБ или более), этот параметр вряд ли что-либо изменит. Кроме того, то, что Диспетчер задач показывает как «Постраничный», действительно означает возможность просмотра страниц. Сколько на самом деле выкладывается в любой момент времени, сказать невозможно. Windows просто не делает эту информацию доступной за пределами системы.

Ах, хорошо, спасибо. Некоторые твики действительно нуждаются в разоблачении, поэтому хорошо, когда люди приходят с реальной информацией и показывают, что на самом деле происходит. Nathaniel 15 лет назад 0
4
A Dwarf

Есть причина не делать этого или какие-то общие мысли по этому поводу?

Если вы сделаете это, вам придется смириться с тем фактом, что вы переместили большую часть ядра в ОЗУ. Сначала это хорошо. Вы избегаете пейджинга ядра, и система может испытывать увеличение производительности при выполнении этих задач, связанных с ядром.

Но что, если ваши приложения используют много оперативной памяти? 2ГБ больше не является большим объемом оперативной памяти по любым стандартам в наши дни. Даже если исполняемый файл имеет небольшой размер, он может выделять во время выполнения большие объемы ОЗУ, которые значительно превышают его физический размер на диске (практически все программное обеспечение делает это). Таким образом, с меньшим объемом доступной оперативной памяти, поскольку ядро ​​отбирает часть ее, вы будете испытывать это время подкачки ваших приложений. Таким образом, у вас есть более отзывчивая система для задач, связанных с ядром, и менее чувствительная система для ежедневного использования приложений.

Поскольку я предполагаю, что модель использования вашего компьютера основана в основном на использовании приложений, вы можете почувствовать снижение общей производительности.

На 2 ГБ ОЗУ я не советую вам это делать. Размер ядра варьируется. Но размер ядра Windows XP составляет около 200 МБ, а Windows Vista чуть больше 300 (?). Windows 7 может похвастаться еще большим ядром. Это я говорю только из памяти, из того, что я, кажется, помню, как их дампы памяти. Вы заберете значительную часть памяти. память, которая заставит многие ваши приложения, жаждущие памяти, перейти на страницу. И ... если вы хотите, чтобы пейджинг происходил, не допускайте, чтобы это происходило с приложениями, требующими памяти.

Также большое понимание, спасибо. Я использую XP Home, и у меня есть одноядерный процесс, так что, может быть, я должен просто оставить все как есть - Firefox уже достаточно кита Nathaniel 15 лет назад 0
Типичный дамп памяти ядра содержит гораздо меньше 200 МБ кода. В основном это данные: распределение пулов, стеки потоков, таблицы страниц и т. Д. На сайте http://support.microsoft.com/kb/Q184419 обсуждается только отключение подкачки кода ядра, а не данных ядра. И не все драйверы содержат много постраничного кода в любом случае. Объем ОЗУ, который он тратит, должен быть значительно меньше 200 МБ. bk1e 15 лет назад 5
При работе с Windows XP на моем ноутбуке и, очевидно, очистив почти все загрузочные приложения и ненужные вещи, после загрузки у меня было запущено 14 процессов и всего 70 МБ виртуальной памяти. Первым делом я запустил театрализованное представление Putty :) tzot 14 лет назад 0
У вас есть ссылки на эти 200 МБ для XP и 300 МБ для Vista? Мне тоже не подходит. scobi 14 лет назад 0
2

Я думаю, что решение сделать это должно основываться на том, сколько у вас системной памяти, а также на том, какие приложения вы обычно запускаете. Когда я набираю это, моя 8-битная Windows 7 (64-битная) система имеет следующую статистику:

Всего 8125 МБ Кэшировано 2618 МБ Доступно 6485 МБ Бесплатно 4200 МБ

(Если эти цифры не совсем складываются, это потому, что они меняются, пока я печатаю).

Память ядра выгружается 278Mb, не выгружается 59Mb

Мне очень кажется, что я мог выстоять только в ПРЕИМУЩЕСТВЕ от использования этих колоссальных 4200 МБ ОЗУ, не делая абсолютно ничего (даже не используя в кеше), кэшируя только 278 МБ ядра.

На практике мне придется посмотреть, как это получится, потому что я не пробовал. Я предполагаю, что части ядра, которые разбиваются на страницы, вероятно, используются не так часто (следовательно, причина, по которой они разбиты на страницы), и шансы запустить большое приложение, которое хочет использовать память, могут быть выше, чем шансы, которые я сделать что-то, что нужно для доступа к этим областям ядра. Было бы интересно услышать от пользователей с 8 ГБ или более ОЗУ некоторые впечатления от эффекта отключения подкачки памяти ядра.

0

но дело в том, что отключение разбиения по страницам в ядре может сильно повлиять на производительность, если у вас система с 3-4 ГБ ОЗУ ... я, собственно, замечаю значительное улучшение при запуске приложений Adobe: D

0
nXqd

Вы должны прочитать эту статью, чтобы понять, почему бы не отключить разбиение по страницам Kernal :) Понимание файла подкачки Windows

0
David Dutton

Microsoft (even OSX and Linux and Unix.. AND SunOS, etc, etc) DEFAULTS are for the AVERAGE USER! LOL

Anyone with a shred of proper computer expertise with Windows (or appropriate OS) knows that there are MANY things you can tweak to get better performance. MS does not enable all these tweaks so the OS is compatible to the widest range of hardware configurations.

2GB ram is not a lot these days, but you can STILL prevent to the kernel from being swapped out. Even the windows 8 kernel doesn't take THAT much memory. Anythings else that's idle will get swapped if you load a large program.

That being said with larger video card memory (1.5-4GB being the norm), you should NOT be using a 32bit version of Windows anymore. 2GB of ram on 32bit Windows is a WASTE! If you put in a 3GB video card, kiss 1GB of your system memory goodbye. 32bit windows can only see 4GB of address space, and EVERYTHING must be loaded into that space, system memory, video memory, expansion card memory. That's why you want 64bit Windows. Most consumer intel/amd cpus are limited to about a 32-64GB memory address space - which is fine. I think the max for a fully enabled cpu and mobo is 64 or 128TB of ram.

Why is this good? Video cards, etc won't reduce your system memory. Plus if you only have 2GB ram on Win x64, you can expand it to as much as your mobo allows, and you don't have to do a thing to windows.

If you load Win x64, then you can stick any size video card in there and it won't affect system memory at all. Idle drivers, DLLs, exes, etc will be swapped to disk if memory is needed for a large app or game

Also to consider: 2GB is the largest amount of memory a 32bit app can use. A 32bit exe compiled in LAA (Large Address Aware) can use 4GB on a 64bit Win OS. So if you only have 2GB of RAM and fire up a 32bit LAA program, and it uses 3GB, your swap file will be swapping a LOT

For modern computers, 4GB is the MINIMUM you should have, preferably 8GB. For a gaming rig, nothing over 8 is needed. 16GB is great, but all it does is gives you a nice BIG read cache (or write if u have it enabled - Id recommend a APC power backup b4 enabling write cache back). Right now, I know of NO game that actually uses over 4GB of ram. I've seen a few use about 3-3.5 though.

Summary: don't bother keeping the kernel in memory with 32bit Windows... if you have Win x64 with 2 or more GB of ram, then DEFINATELY keep the kernel in memory! Because when the system runs low, you do NOT want the kernal swapped! This will really kill performance. Better to have other idle DLL, drives, serives, etc swapped instead

-2
kelly

Оставьте все по умолчанию. Пусть Microsoft сделает свою работу. Если ваша система замедляется, это означает, что это вызвано чем-то другим (третьим лицом). Почему Microsoft или другие коммерческие операционные системы продают что-то, что может привести клиентов в бешенство от разочарований?

Похожие вопросы