Вопрос: Любая польза или ущерб от удаления файла подкачки на 8 ГБ оперативной памяти?


Я запускаю Windows 7 на двухъядерном процессоре x64 AMD с 8 ГБ оперативной памяти.

Мне даже нужен файл с файлами?

Удалит ли это помощь или урон производительности?

Будет ли это иметь значение, если это сервер или рабочий стол?

Отличается ли Windows 7 и Windows 2008 с файлом страницы?


212
2018-06-10 19:50


Источник




Ответы:


Версия TL: DR: пусть Windows обрабатывает ваши настройки памяти / файла подкачки. Люди в MS провели много больше часов думает об этих проблемах, чем большинство из нас, системных администраторов.

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

Это неверно. Там что-то происходит под капотом. Вообще говоря, Windows поддерживает резервный магазин, что означает, что он хочет видеть все, что находится в памяти, также на диске где-то. Теперь, когда что-то приходит и требует большой памяти, Windows может быстро очистить RAM, поскольку эти данные уже на диске, готовый к пересылке обратно в оперативную память, если требуется. Поэтому можно сказать, что большая часть того, что находится в файле подкачки, также в ОЗУ; данные были превентивно помещается в файл подкачки для ускорения новый потребность в распределении памяти.

Описывая конкретные задействованные механизмы, потребуется много страниц (см. Главу 7 Внутренние окна Windows, и отметим, что новый выпуск скоро будет доступно), но есть несколько замечательных замечаний. Во-первых, большая часть того, что находится в ОЗУ, по существу уже находится на диске - программный код, извлеченный из исполняемого файла или библиотеки DLL, например. Поэтому это не нужно записывать в файл подкачки; Windows может просто отслеживать, откуда изначально извлекались биты. Во-вторых, Windows отслеживает, какие данные в ОЗУ наиболее часто используются, и поэтому удаляет из ОЗУ те данные, которые прошли самый длинный, без доступа.

Извлечение файла подкачки полностью может вызвать больший излом диска. Представьте простой сценарий, когда какое-то приложение запускает и требует 80% существующей ОЗУ. Это вынудит текущий исполняемый код из ОЗУ - возможно, даже код ОС. Теперь каждый раз, когда эти другие приложения (или сама ОС) (!!) нуждаются в доступе к этим данным, ОС должна выставлять их из хранилища резервных копий на диске, что приводит к большому перерыву. Поскольку без файла подкачки в качестве хранилища резервных копий для временных данных единственными вещами, которые могут быть выгружены, являются исполняемые файлы и библиотеки DLL, для которых для начала были созданы резервные хранилища.

Конечно, есть много сценариев ресурсов / использования. Не исключено, что у вас есть один из сценариев, при которых не будет никаких побочных эффектов при удалении файла подкачки, но это меньшинство. В большинстве случаев удаление или уменьшение файла подкачки приведет к снижению производительности в сценариях использования пиковых ресурсов.

Некоторые ссылки:

ДМО отметил недавний Сообщение Эрика Липперта который помогает в понимании виртуальной памяти (хотя и менее связан с вопросом). Я помещаю его здесь, потому что я подозреваю, что некоторые люди не будут прокручивать другие ответы, но если вы считаете это ценным, вы обязаны DMO голосования, поэтому используйте связь попасть туда!


301
2018-06-10 21:15



Для Джеффа и Джоэла: он рифмуется с "уток" - quux
В Solaris это было / еще более активно. Файл подкачки зеркалируется в диске, таком как tmpfs, поэтому память всегда почти заполнена, но, по-видимому, это доказывает, что это оптимальная стратегия. - Martin Beckett
Я давно полагал, что вместо того, чтобы позволить Windows управлять моим размером файла страницы, я должен установить его на фиксированную сумму (например, не более 2 ГБ, не более 2 ГБ), поскольку разрешение на ее рост и сжатие может привести к проблемам фрагментации. Это хорошее мышление, или я должен следовать вашей первой строке и позволить Windows обрабатывать все? - John Fouhy
@Mehrdad: Потому что вы не хотите, чтобы 50% свободной памяти осталось свободным. Конечно, вы могли бы это сделать, но потеряли бы 50% физической памяти, которую вы могли бы использовать в качестве кеша диска для активных данных. Свободная ОЗУ - это признак неэффективности, это как грузовики FedEx на складе, а не на дороге. Это означает, что вы неперемещая как можно больше грузов, потому что вы тратите слишком много времени на погрузку и разгрузку. - David Schwartz
@Mehrdad: Проблема в том, что без файла страницы есть много данных, которые должен быть сохраненным в ОЗУ, даже если это, вероятно, никогда, никогда не будет доступно. Рассмотрим, например, любую память, выделенную процессом, который запускался при запуске системы, но предлагает службу, которая не будет использоваться в течение нескольких дней. Система не может доказать, что данные не будут доступны, и у нее нет места, кроме ОЗУ, чтобы ее сохранить. Таким образом, дисковый кеш сжимается, когда данные хранятся в ОЗУ, к которым не обращались в течение нескольких дней. - David Schwartz


Эрик Липперт недавно написал запись в блоге описывая, как Windows управляет памятью. Короче говоря, модель памяти Windows можно рассматривать как хранилище дисков, где ОЗУ работает как кэш повышения производительности.


80
2018-06-24 19:47





Как я вижу из других ответов, я единственный, кто отключил файл страницы и никогда не сожалел об этом. Большой :-)

И у себя дома, и у меня есть Vista 64-бит с 8 ГБ оперативной памяти. Оба файла страницы отключены. На работе мне ничего не остается, чтобы иметь несколько экземпляров Visual Studio 2008, Virtual PC с Windows XP, 2 экземпляра SQL Server и Internet Explorer 8 с большим количеством вкладок, работающих вместе. Я редко достигаю 80% памяти.

Я также использую гибридный сон каждый день (спящий режим сна) без каких-либо проблем.

Я начал экспериментировать с ним, когда у меня была Windows XP с 2 ГБ ОЗУ, и я действительно видел разницу. Классическим примером было то, что значки на панели управления перестали показывать себя один за другим, но все сразу. Также время запуска Firefox / Thunderbird резко возросло. Все сразу начало работать сразу после того, как я нажал на что-то. К сожалению, 2 Гбайт был слишком мал для моего использования приложений (Visual Studio 2008, Virtual PC и SQL Server), поэтому я включил его.

Но сейчас с 8 ГБ я никогда не хочу возвращаться и активировать файл.

Для тех, кто говорит об экстремальных случаях, это нужно сделать из моего Windows XP раз.
Когда вы пытаетесь загрузить большую сводную таблицу в Excel из SQL-запроса, Excel 2000 значительно увеличивает использование памяти.
Когда файл страницы отключен, вы немного подождёте, а затем Excel взорвется, и после этого система очистит всю память.
Когда у вас включен файл страницы - вы подождете некоторое время, и когда вы заметите, что что-то не так, вы почти ничего не можете сделать с вашей системой. Ваш жесткий диск работает как ад, и даже если вам удастся запустить Task Manager (после нескольких минут ожидания) и убить excel.exe вы должны подождать минуту или около того, пока система не загрузит все обратно из файла страницы.
Как я увидел позже, Excel 2003 обрабатывает одну и ту же сводную таблицу без каких-либо проблем с отключенным файлом страницы, поэтому это не была «слишком большая проблема с набором данных».

Поэтому, на мой взгляд, файл с отключенной страницей даже иногда защищает вас от плохо написанных приложений.

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

Редактировать: Я просто хочу добавить, что я установил Windows Vista SP2 без каких-либо проблем.


47
2018-06-28 21:10



У меня был отключен мой файл подкачки, и я сожалел об этом, когда действительно использовал свою память. Поэтому будьте счастливы, что у вас больше памяти, чем вам нужно. - Sam
+1, «меня тоже» :-). Такая же история - память 8 ГБ, Vista x64, работающая Visual Studio с виртуальными машинами ReSharper + SQL Server Express + IIS + 1-2 (каждая с памятью 1500 МБ) + набор утилит - никогда не было проблем. - Milan Gardian
Мне нравится, как все говорят: «Microsoft много часов размышляла над этой проблемой, поэтому не вмешивайтесь в нее», но полностью игнорирует опыт реального мира. У меня был файл подкачки, который был отключен с XP и никогда не сожалел об этом. Это похоже на то, что компьютер получил инъекцию удивительного. - AngryHacker
Практически стандартная практика отключает пейджинг на серверах, загружаемых iSCSI, пейджинг по SAN будет медленным. Вам просто нужно смотреть ваше использование памяти и держаться подальше от макс. - Chris S
-1 Я не вижу ссылок в этом ответе. У меня на самом деле был сбой в системе, потому что файл страницы был отключен, а моя память Paged Pool заполнена. Тем не менее, использование физической памяти было всего 2 ГБ ... - Tom Wijsman


Вы можете захотеть сделать некоторые измерения, чтобы понять, как ваша собственная система использует память, прежде чем настраивать параметры подкачки. Или (если вы все еще хотите внести коррективы), перед и после указанные корректировки.

Перфмон - инструмент для этого; не Диспетчер задач. Ключевым счетчиком является Память - ввод страниц / сек., Это будет специально график жесткий ошибки страницы, те, где требуется чтение с диска, прежде чем процесс может продолжаться. Мягкий ошибки страницы (которые составляют большинство элементов, отмеченных по умолчанию Ошибка страницы / сек. счетчик; Я рекомендую игнорировать этот счетчик!) На самом деле не проблема; они просто показывают предметы, которые обычно считываются из ОЗУ.

Граф перфмона http://g.imagehost.org/0383/perfmon-paging.png

Выше приведен пример системы без забот, памяти. Очень часто появляется всплеск жестких ошибок - их избежать нельзя, так как жесткие диски всегда больше, чем оперативная память. Но график в основном плоский в нуле. Таким образом, ОС очень редко работает подкачки из хранилища.

Если вы видите Память - ввод страниц / сек. график, который намного широк, чем этот, правильный ответ - либо уменьшить использование памяти (запустить меньше программ), либо добавить ОЗУ. Изменение параметров вашего файла не изменило бы тот факт, что из системы требуется больше памяти, чем на самом деле.

Дополнительным дополнительным счетчиком для мониторинга является PhysicalDisk - Сред. Длина очереди (все экземпляры). Это покажет, насколько ваши изменения влияют на само использование диска. Хорошо подобранная система покажет это среднее значение счетчика при 4 или менее на шпиндель,


34
2018-06-10 21:52



удушье кто-то даже собирается изо всех сил продемонстрировать, как проверять файл подкачки. здорово. - cgp
Мертвая ссылка на картинку. Требуется исправление. - kinokijuf
Да, «ImageHost.org закрыт» - Peter Mortensen


Я без проблем запускал свой 8-Гбайт Vista x64 без файла страницы.

Проблемы возникли, когда я действительно использовал свою память!

Три недели назад я начал редактировать действительно большие файлы изображений (~ 2 ГБ) в Photoshop. Один сеанс редактирования поглотил всю мою память. Проблема: Я не смог сохранить свою работу, так как Photoshop нуждается в дополнительной памяти для сохранения файла!

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

Все, что я мог сделать, это отказаться от моей работы, включить мой файл с файлами и переделать всю мою работу. Из-за этого я потерял много работы и не могу рекомендовать отключить файл вашей страницы.

Да, он будет работать большую часть времени. Но в тот момент, когда он ломается, это может быть болезненно.


34
2017-07-22 09:43



вам следует чаще спасать: D, чтобы минимизировать ущерб - alexandrul
легко сказать, когда экономия занимает несколько минут, это лаваш. - Sam
Мы все сможем сэкономить, если вы используете более сложное программное обеспечение, но иногда «крах» заканчивается выравниванием с «О, дерьмо, я не спасся через некоторое время». - Damon


Хотя ответы здесь хорошо освещены в этой теме, я по-прежнему рекомендую это прочитать:

http://blogs.technet.com/markrussinovich/archive/2008/11/17/3155406.aspx

Он говорит о размере PF почти в конце:

Некоторые считают, что отсутствие файла подкачки приводит к повышению производительности, но в целом наличие файла подкачки означает, что Windows может писать страницы в измененном списке (которые представляют собой страницы, которые не доступны активно, но не были сохранены на диске) файл подкачки, что делает эту память доступной для более полезных целей (процессов или кеша файлов). Таким образом, хотя могут быть некоторые рабочие нагрузки, которые лучше работают без файла подкачки, в общем случае с одним будет означать, что доступная система доступна для использования в системе (неважно, что Windows не сможет записывать дампы сбоя ядра без большого файла подкачки достаточно, чтобы держать их).

Мне очень нравятся статьи Марка.


19
2018-06-29 00:42



+1, просто для ссылки Марка Руссиновича. Стоит отметить, что win7 даже выводит уведомление, чтобы указать, что вы не сможете «проследить системные проблемы», если вы отключите файл подкачки. - cgp


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

С файлом страницы система будет, по крайней мере, работать медленно, как только она начнет удалять страницу. Но если вы удалите файл страницы, он просто умрет (из того, что я знаю).

Кроме того, сейчас 8 Гбайт кажется много, но через несколько лет его можно считать минимальным объемом памяти для большого количества программного обеспечения.

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


13
2018-06-10 19:56



Я бы пошел немного дальше и не закройте файл страницы. Это не улучшает ситуацию. Пусть окна делают это ... они знают лучше. - Michael Haren
Просто попробовал использовать Media Player Classic для загрузки 6-мегабайтного файла mkv. Это вытолкнуло меня из памяти оперативной памяти и файла подкачки. Вернулся в VLC довольно быстро. +1 для «вы никогда не знаете, с чем будете сталкиваться». В конечном итоге MPC разбился, и моя оперативная память была восстановлена, но что, если вы получите DLL в стороннем программном обеспечении с утечкой памяти? У вас будет намного больше пробега, если у вас есть резервная память с памятью, чтобы помочь вам. - mpbloch
Плюс пункт, что пользы иметь 8 ГБ, если вам нужно жить в постоянном страхе, чтобы на самом деле его использовать ?! - David Schwartz
«Держать хотя бы небольшой файл подкачки» кажется мне немного странным, так как неясно, как Windows будет его использовать. Например, это может привести к большему, чем больший файл подкачки, который предлагает больше места - я предполагаю, но пока нет надежного источника, я бы рассмотрел небольшой файл с описанием файла, который может быть вреден, и рекомендовал вместо этого стандартную практику. - mafu


Вы не отметили, что это 64-разрядная версия Windows, но я думаю, да.

Файл подкачки обслуживает многие вещи, включая создание дампа памяти в случае BSoD (Синий экран смерти).

Если у вас нет файла подкачки, Windows не сможет выйти на диск, если памяти недостаточно. Вы можете подумать, что с 8 ГБ вы не достигнете этого предела. Но с течением времени у вас могут быть плохие программы, которые теряют память.

Я думаю, что это не позволит вам перейти в спящий режим / режим ожидания без файла подкачки (но я еще не пытался).

Windows 7/2008 / Vista не изменяет использование файла страницы.

Я видел одно объяснение от Марка Руссиновича (Microsoft Fellow), объясняющее, что Windows может быть медленнее без файла страницы, чем с файлом страницы (даже с большим количеством ОЗУ). Но я не могу найти причину.

Вы вышли из дискового пространства? Я бы сохранил как минимум 1 ГБ, чтобы иметь дамп ядра в случае BSoD.


6
2018-06-10 19:59



Вы имеете в виду это? blogs.technet.com/markrussinovich/archive/2008/11/17/...  Если это так, его совет хромает. Он говорит, что файл с файлами увеличит производительность, потому что, если бы он дал больше бара для других приложений. Верно, если у вас мало барана. Но если у вас более чем достаточно, файл страницы никогда не будет быстрее. - Pyrolistical
это было во внутреннем видео с Саломоном. Это как-то связано с пулом страниц ядра - Mathieu Chateau
Вы не можете опубликовать «ответ», когда вы понятия не имеете: у меня 32-разрядный ноутбук Windows Vista с 4 ГБ ОЗУ, и я все время ставил его в режим ожидания. Можете ли вы по крайней мере ограничить себя предоставлением ответов на вопросы, на которые вы действительно знаете ответы? - PP.
Что ПП пытался сказать: Процесс спячки использует файл отдельно от файла подкачки, так что это не проблема в этом случае. - mafu
Pyrolistical, вам, вероятно, слишком поздно, чтобы вы это заметили, но поверните свое заявление и произнесите его в качестве вопроса: когда файл подкачки замедляет работу? Хороший ответ на это докажет вашу теорию. - quux