Я хочу оптимизировать размер файла подкачки в соответствии со своими потребностями. И я хочу следовать формуле, предложенной Марком Руссиновичем: минимум должен быть Peak Commit минус физическая RAM, а максимум должен быть вдвое больше.

Чтобы быть уверенным, что я все делаю правильно, я хотел бы уточнить следующее:

1) Красным ли является этот номер, упомянутый г-ном Руссиновичем?

На экране окно Информация о системе в Process Explorer

2) В Панели управления> Система сказано, что моя установленная оперативная память составляет 4 ГБ, и только 2,45 ГБ можно использовать. И, очевидно, в диспетчере задач моя общая физическая память также составляет 2509 МБ. Это потому, что моя ОС 32-битная. Итак, правильно ли я понимаю, что эти 2509 (а не те 4 ГБ) - это число, которое я должен использовать для расчета размера файла подкачки?

Я знаю, что это глупо, но, как я уже сказал, я хочу убедиться, что я все делаю правильно.

Большое спасибо.

1 ответ1

1

Вы без сомнения имеете в виду «Расширение Windows: виртуальная память» Марка Руссиновича.

  1. Да, это номер.
  2. Да, у вас есть только 2,5 ГБ оперативной памяти (примерно - здесь нет необходимости в дополнительной точности).

Тем не менее .. вы пишете "делать все правильно". Я должен отметить, что статья Марка о "расширении границ", и эта формула дает вам абсолютный минимум для размера файла подкачки. Если вы хотите, чтобы ваша система работала хорошо, вы не хотите "раздвигать границы".

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

(И вам может понадобиться больше. Помните, что этот "пик", который вы видели здесь, является только пиком в течение времени выполнения Process Explorer. Это имеет смысл только в том случае, если вы запустили максимальную рабочую нагрузку приложения в течение этого времени. Это не просто означает запуск всех приложений, которые, по вашему мнению, когда-либо будут запущены одновременно. Вам также необходимо, чтобы каждое приложение использовало максимальную частную память ("выделенную" память), о которой вы когда-либо просили. Это сложно настроить и протестировать. И кто скажет, что вы никогда не добавите другое приложение к вашей обычной рабочей нагрузке? Таким образом, информация, которую вы получаете с помощью инструментов мониторинга, не гарантирует, что вам больше никогда не понадобится больше.)

Обратите внимание, что если вам действительно придется снова достичь этого пика, а для файла подкачки задано значение минимума, которое вы рассчитываете таким образом, в ОЗУ не останется места для ОЗУ, используемого сопоставленными файлами - такими как файлы кода, такие как exe и dll's. , (Это связано с тем, что в число "выделенной" виртуальной памяти не входят кодовые страницы или другие страницы, поддерживаемые сопоставленными файлами.) Поскольку код должен быть в оперативной памяти для выполнения, это проблема.

Хорошо, поскольку вы включаете расширение файла подкачки, это не проблема "showtopper". Но это, безусловно, будет хитом производительности.

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

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

Также нет причин ограничивать максимальный размер только в 2 раза меньше, если только вы не очень заинтересованы в использовании диска.

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

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

С другой стороны, если системе приходится много писать в файл подкачки - и в системе Windows 7 с использованием только 2,5 ГБ ОЗУ, я думаю, это будет - иметь файл подкачки, который значительно больше, чем когда-либо будет использовать система. ускорить вещи. Зачем? Потому что алгоритм распределения пространства, который используется для файла подкачки, может быть намного быстрее, если есть много свободного места.

Из-за этого мне нравится видеть счетчик PerfMon для использования% Pagefile%, чтобы оставаться ниже 25 процентов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .