Является ли размещение swapfile & temp папки на ramdisk хорошей идеей в Windows 7 64 bit с большим объемом оперативной памяти?

16

Я хочу, чтобы моя Windows работала как можно быстрее. Если у меня в Windows 7 64 ГБ ОЗУ, четырехъядерный процессор и все приложения помещаются в память, будет ли когда-нибудь использоваться файл подкачки? Вопрос в том, стоит ли помещать файл подкачки на RAM-диск.

Поможет ли RAM-диск или Windows будет разумно использовать всю доступную память для всей своей работы?

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

Tony_Henrich
источник
Название заставило меня немного посмеяться, но на самом деле ваше, если [...] все приложения уместятся в памяти, будет ли когда-либо использоваться файл подкачки для чего-либо, это довольно хороший вопрос!
Арджан
Файл подкачки - это не «файл подкачки» - будет использоваться по мере необходимости, чтобы позволить программам распределять виртуальное адресное пространство сверх того, что позволяло бы только ОЗУ. Это необходимо, даже если после выделения они фактически используют столько, сколько умещается в ОЗУ.
Джейми Ханрахан

Ответы:

7

Я согласен с тем, что размещение файла подкачки на виртуальном диске не имеет смысла для 64-битной ОС. Однако если у вас 32-битный WinXP, то Windows может «видеть» только первые 3,5 ГБ ОЗУ. Если у вас больше ОЗУ, скажем, 9 ГБ, то объем памяти выше 3,5 ГБ полностью теряется WinXP. Однако, используя такую ​​программу, как SuperSpeed ​​RamDisk Plus, можно использовать память объемом более 3,5 ГБ в качестве виртуального диска - и размещение файла подкачки имеет огромный смысл (опять же, на 32-битной XP, а не на 64-битной Win7). ).

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

Floont Artney
источник
6

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

user43161
источник
4

Я бы не сказал смешно; ни для 32, ни для 64-битных систем.

Начнем с очевидного, что 32-битные окна (большинство работающих систем) просто игнорируют все, что превышает 4 ГБ. Ramdisks, способные использовать PAE и 36-битную адресацию памяти, насколько мне известно, являются единственным способом сделать области с высокой памятью полезными в 32-битных системах.

Вопрос: как мы используем молниеносный / более безопасный виртуальный жесткий диск? Временные файлы приходят на ум и довольно просты в настройке, если вы знаете, как назначить букву фиксированного диска в Windows. То же самое с кешем браузеров. Интерес к ним в четыре раза:

  • Самый быстрый доступ / получить
  • Истинное удаление
  • Подавляет большую часть бесполезного износа дорогостоящей памяти SSD.
  • Меньше фрагментации диска ..

Что касается файла подкачки, кажется очевидным, что 32-битные системы имеют много преимуществ, помещая их в невостребованную оперативную память. Можно подумать о программе, требующей памяти, использующей до 3 ГБ (с переключателем 3 ГБ в boot.ini), который, скорее всего, вызовет много изменений. Два из тех же самых бонусов все еще применяются: истинное удаление и износ на SSD. Фрагментация менее важна для файлов подкачки.

Более того: плохо написанные программы используют виртуальную память независимо от объема доступной физической памяти, что приводит к бесполезному доступу к диску. Это относится как к 32, так и к 64-битным программам. Я даже сталкивался с программами, которые просто не запускаются при отсутствии файла подкачки.

Суть в том, что, несмотря на то, что имеет смысл иметь виртуальный диск ниже 4 ГБ и сохранять бесполезный доступ к диску для кэширования временных папок и программ, кажется, что гораздо предпочтительнее установить более 4 ГБ, причем цена памяти такая же, как в 32 ( с включенным оборудованием PAE) И 64-битными системами и переместите туда файл подкачки.

Следует отметить, что МНОГИЕ профессиональные пользователи компьютеров по-прежнему не могут использовать 64-разрядную версию по причинам аппаратной поддержки.

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

В моей основной системе на XP / 32 установлен виртуальный диск емкостью 8 ГБ, и это оказалось полезным. Это довольно тривиально для установки, и я должен сказать, что единственная программа, которая доставила мне неприятности, это Google Chrome, стратегия установки / обновления которого сложна для твикера.

Вы можете придумать много полезного использования для виртуальных дисков, кроме них; в моем случае аудиосэмплы для извлечения с диска в живых приложениях: поместите их туда во время загрузки (мучительно медленно) и получите молниеносный доступ к библиотекам multiGB. Но это далеко не по теме :)

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

user102648
источник
3

Да, файлы подкачки используются, даже если у вас много оперативной памяти; но простое существование файла подкачки само по себе не является фактором, влияющим на производительность системы . Более того, запись файла подкачки на RAM-диск - это глупость. В конце концов, смысл файла подкачки - это место для хранения (переходных) данных страницы, когда эти данные не находятся в оперативной памяти . RAM диски находятся в RAM…

Разумеется, размещение временных файлов на RAM-диске - это совсем другой чайник.

JdeBP
источник
1
В этом посте не объясняется, почему ОС должна что-либо выводить на экран, если в системе есть тонны оперативной памяти и она может содержать ВСЕ. Весь смысл подкачки состоит в том, чтобы освободить место для более важных процессов, но если память может содержать временные и новые, старые и редко используемые и что-либо в памяти, почему бы не держать все в памяти? Что касается свалок, я не забочусь о них. Я не могу прочитать или понять их, поэтому они могут также быть удалены и не потрудиться сохранить их, если я не отправлю их в MS для анализа.
Tony_Henrich
В другой статье, на которую она ссылается, также есть обычный соломенный человек: «некоторые« программы »могут« потерпеть неудачу, даже не указав, какие программы на самом деле есть, или как они могут выйти из строя.
RolKau
@ Тони, аварийные дампы обычному человеку трудно читать и интерпретировать, но если вы устанавливаете средства отладки Microsoft, они могут быть весьма информативными для выяснения причины возникновения BSOD. Если ваш компьютер никогда не выходит из строя, то, конечно, это не имеет значения, но я обнаружил, что аварийные дампы чрезвычайно полезны при устранении неисправностей в сбойных компьютерах в прошлом, поэтому не игнорируйте их полностью.
nhinkle
2
@Tony_Henrich "почему бы не держать все в оперативной памяти" => потому что, если есть что-то, к чему никогда (или очень редко) не обращаются, сидя в ОЗУ, это тратит впустую это место. Это пространство может быть лучше использовано для кэширования файлов, к которым часто обращаются, что обеспечивает увеличение производительности сети. Любое физическое пространство ОЗУ, не активно используемое программным кодом или данными, может использоваться ОС для кэширования файлов, поэтому также не рекомендуется работать вблизи вашего общего объема ОЗУ.
Боб
Большинство людей, которые утверждают, что «система имеет тонны оперативной памяти и может хранить ВСЕ» никогда не смотрели на общее использование виртуального адресного пространства на своей машине.
Джейми Ханрахан
1

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

Однако я заметил большую разницу, перемещая мои временные файлы IE на виртуальный диск и устанавливая переменные окружения TEMP и TMP так, чтобы они указывали на виртуальный диск.

Я также запускаю Google Chrome с флагом "-user-data-dir =" R: \ ChromeTEMP ", чтобы он сохранял временные файлы на виртуальном диске. Это приведет к тому, что он забудет ваши настройки. Но так как я использую функцию синхронизации, он не Это сильно повлияло на меня. После начальной синхронизации все вернулось к нормальному состоянию. И экраны загрузки Skyrim стали короче после ссылки на копии некоторых файлов на моем виртуальном диске.

Андрей
источник
Удаление вашего файла подкачки (или размещение его на RAM-диске) не «заставляет Windows использовать RAM». Существуют сотни других файлов, используемых для подкачки страниц, и Windows по-прежнему будет пейджинговать туда и обратно.
Джейми Ханрахан
0

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

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

Что касается временных файлов, перемещение этих файлов на RAM-диск должно увеличить скорость их доступа, хотя убедитесь, что вам ничего не понадобится для сохранения после перезагрузки / сбоя и что драйвер ramdisk загружает и создает ramdisk перед любыми приложениями или система должна использовать временную папку.

Дарт Андроид
источник
Я думаю, мини-дампы сохраняются в какой-то специальной папке под Windows. Я не уверен насчет полных дампов, но, возможно, они сохраняются в файле подкачки. Но я не против поместить файл подкачки в любой диск без полномочий root. Я просто надеюсь, что Windows достаточно эффективна, чтобы максимально использовать доступную оперативную память и использовать файл подкачки только тогда, когда это абсолютно необходимо.
Tony_Henrich
@Tony: они сохраняются в файле подкачки до перезагрузки, после чего они сохраняются в папке Minidump в% SYSTEMROOT%.
Hello71
1
MS утверждает, что отключение файла подкачки, скорее всего, приведет к снижению производительности даже в системах с большим объемом памяти. Управление памятью в ОС основано на обмене.
Келтари
Обратите внимание, что вместо этого можно заставить Windows готовить аварийные дампы в отдельном файле, что устраняет требование наличия достаточного свободного пространства / файла подкачки на системном диске для хранения данных дампа; посмотрите, как использовать значение реестра DedicatedDumpFile для преодоления ограничений пространства на системном диске при захвате дампа системной памяти - Блог
Ntdebugging
0

Это на самом деле неплохая идея, на мой взгляд.

Логично, что люди неправильно понимают «файл подкачки» или, вернее, «файл подкачки» как ОЗУ. Это правда, что файл подкачки содержит те же данные, что и оперативная память. Но Windows не использует это как RAM. Как вы видите сегодня в растущем мире многозадачности, в котором мы живем, Windows была разработана для того, чтобы обрабатывать ограниченный объем ОЗУ путем постоянной записи между файлом подкачки и ОЗУ.

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

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

Теперь давайте представим RAM-диск для Windows. Поместите файл подкачки на виртуальный диск вместо жесткого диска, и вы улучшили возможность многозадачности Windows, поскольку оперативная память быстрее, чем жесткий диск / жесткий диск. Однако это не поможет в старой системе, если вы не купите физические диски RAM - и вам, возможно, придется заново установить файл подкачки в Windows, так как без питания он будет удален.

Файлы подкачки становятся совершенно бессмысленными для новых компьютеров с 8, 16, 32, 64 гигабайтами оперативной памяти.

Адам Р.
источник
3
Вопрос все еще в том, почему Windows поменяет что-либо, если есть достаточно памяти для хранения всего. Это не значит, что память «устает» от удержания приложений и нуждается в перерыве.
Tony_Henrich
На самом деле «файл подкачки» более корректен, чем «файл подкачки»; технически подкачка - это то, где вы отправляете ВСЕ память данного процесса во вторичное хранилище ...
SamB
Почему: потому что это агрессивно - обрезать «рабочий набор». Но это на самом деле не поменялось из , и втягивается обратно при необходимости без необходимости прочитать диск.
JDługosz
«файл подкачки всегда используется Windows » - неверно. Даже если случается так, что он использует файл подкачки, он записывает туда вещи, которые он решил по уважительной причине (например, если вы давно не касались этого), что не стоит хранить его в оперативной памяти. Как вы думаете, почему у вас больше информации о том, что хранить в оперативной памяти, чем у Windows? В любом случае, как уже говорили другие, размещение файла подкачки в оперативной памяти - это все равно, что выдавать себе кредит, а затем возвращать себя из его доходов. У вас больше нет денег, вы просто потратили много бесполезных усилий.
Джейми Ханрахан
0

Большинство из вас, скептики, забывают о 32-битном ограничении оперативной памяти Windows и упускают тот факт, что вы не можете поместить в нее больше кода и данных, чем 3,5 ГБ. Или вы просто верите, что мы пытаемся «урезать», скажем, 2 ГБ из доступных 3,5 ГБ - для быстрого подкачки файлов со стоимостью сокращения доступной памяти до 1,5 ГБ. Это, конечно, бессмысленно, но это не наша идея . Наша идея предназначена для пользователей 32-битной Windows, которые владеют ПК с ОЗУ БОЛЬШЕ, чем ограниченное ограничение 3,5 ГБ. Например, машина оснащена 8 ГБ, работает под управлением 32-битной XP или Vista или 2003.

Когда вы усердно работаете со многими приложениями одновременно, система часто сталкивается с проблемой исчерпания памяти. Во избежание критических ошибок система вынуждена хранить некоторые данные фоновых приложений в файле подкачки. Как правило, это означает запись на жесткий диск десятков и сотен МБ. И помните - это часто случается, когда вы действительно используете многозадачность (в настоящее время распространенные, а также потребляющие много памяти приложения). А когда вы выводите фоновое приложение на передний план - другая партия данных из ОЗУ должна идти на жесткий диск, просто чтобы освободить место в ОЗУ для возврата предыдущей партии с жесткого диска (на этот раз для записи и чтения большого количества МБ с диска). Просто наблюдайте за своим красным индикатором активности жесткого диска - он горит чаще, чем гаснет (ваш жесткий диск работает очень усердно).

Теперь представьте, что все эти операции перенаправлены на ДОПОЛНИТЕЛЬНЫЙ RAM-диск (дополнительная RAM, за пределами области оперативной памяти системы, которая остается той же самой по размеру - максимум).

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

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

Хорошо, большинство машин, созданных в эпоху XP, не основывались на материнских платах, способных поддерживать более 4 ГБ ОЗУ. Так что я понимаю, что есть немного парней, которые действительно заботятся / нуждаются и понимают идею. Но сейчас...

ДОБРО ПОЖАЛОВАТЬ В ЭРУ ВИРТУАЛИЗАЦИИ! Все больше и больше людей счастливы иметь машину с большим количеством оперативной памяти. Новичок может настроить свою хост-систему так, чтобы она выделяла 4 ГБ для гостевой 32-разрядной Windows, и при этом все еще имеет много оперативной памяти. Тогда было бы очень полезно обогатить его 4-гигабайтным RAM-диском, назначенным для той же гостевой ОС, предназначенной для файла подкачки, без затрат на пространство гостевой оперативной памяти!

Сервер, который я контролирую, имеет 12 ГБ. Вместо того, чтобы покупать новую систему (64-2008 плюс клиентские лицензии!), Я мог бы выделить 8 ГБ для гостевой - виртуальной 32-2003 и попробовать протестировать программные RAM-диски. Однако я не доверяю им, поскольку они кажутся взломщиками, и я не люблю рисковать стабильностью. Вот почему я ищу решение, чтобы подготовить Linux Ramdisk моего хоста в качестве блочного устройства и отформатировать его в FAT или NTFS, чтобы сделать его приемлемым для виртуального диска гостевой ОС, для размещения файла подкачки на нем. Я считаю, что мой сервер увеличит и сэкономит много дискового усилия.

Где я не прав? Greetz!

Slawek
источник
1
Хороший момент в отношении виртуализации, но без виртуализации виртуальный диск не позволяет получить доступ к большему количеству оперативной памяти, чем вы обычно можете адресовать. Без PAE это около 3,5 ГБ, но NT 4.0, win2k и pro / server выпуски xp поддерживают PAE, обеспечивая до 64 ГБ оперативной памяти. Учитывая, что вы можете использовать весь этот оперативный памяти, лучше позволить системе использовать его так, как она считает нужным, в том числе для кэширования файлов, а не выделять его на виртуальный диск, что ограничивает систему только использованием его для хранения подкачанных личных страниц , который не включает программные файлы и данные кэшированного файла.
Псуси
Это звучит как напыщенная речь.
bwDraco - Восстановить Монику
Если ОС решила, что определенный набор данных не стоит хранить в ОЗУ, лучше поместить их в файл подкачки ... почему вы думаете, что у вас достаточно информации, чтобы с полным основанием сказать «нет, в любом случае, сохранить ее в ОЗУ», поместив файл подкачки на RAM-диске?
Джейми Ханрахан
0

Что касается временной папки, перемещение ее на виртуальный диск увеличит скорость.

Однако есть на что обратить внимание:

  • потеря мощности будет означать потерю данных
  • не каждое приложение использует временную папку, предоставляемую Windows, некоторые используют свои собственные
  • если во временной папке не хватает места, приложения или Windows могут вылетать
Keltari
источник
0

Ramdisks полезны для таких вещей, как быстрый интернет-кеш IE, Chrome, Firefox и т. Д.
Размещение файла подкачки на Ramdisk в 64-битной системе бесполезно.

DisablePagingExecutive может лучше удовлетворить эти потребности. Но размещение файла подкачки на Ramdisk в 32-битной среде с более чем 4 ГБ памяти Ram является огромным улучшением. Однако, если ваш компьютер является одноядерным процессором (только один в соответствии с менеджером задач), будет улучшение (не могу вспомнить, сколько именно, это было какое-то время). Но вам также нужно установить ClearPagefileAtShutdown, чтобы избавиться от ошибки при следующей перезагрузке, потому что файл подкачки там не будет.

Лучшее использование Ramdisk, о котором я могу подумать, - это зеркалирование папки ваших программных файлов (или выбор программ) в Ramdisk.

Бен
источник
DisablePagingExecutive отключает пейджинг только для исполнителя . Пейджинг всего остального, что обычно выполняется, все еще происходит.
Джейми Ханрахан