Оперативная память: разрушаем мифы
Существует целый ряд программ, по сути своей шарлатанских. Все они обещают чудодейственный прирост скорости компьютера благодаря освобождению места в оперативной памяти компьютера. Чтобы понять, почему это бесполезно и даже вредно, для начала надо разобраться — что такое вообще оперативная память?
Что такое оперативная память и зачем она нужна?
Оперативная память (или RAM — Random Access Memory, или ОЗУ — Оперативное Запоминающее Устройство) — энергозависимая память, используемая для временного хранения команд и данных, необходимых для вычислений, которые делает процессор (или процессоры) компьютера. Более точно и подробно об этом рассказано в Википедии, а я сосредоточусь на собственно проблеме свободного места в оперативной памяти.
RAM нужна процессору для быстрого доступа к данным, что жесткий диск никак обеспечить не может. Поэтому программа при запуске загружается в оперативную память — только так компьютер может делать вычисления, гоняя данные к процессору из оперативной памяти и обратно.
В Windows запущенные программы физически могут располагаться не только «в платах оперативной памяти», но и на жестком диске в файле pagefile.sys. Этот файл называется «файлом подкачки» или «свопом» (от англ. swap).
Идея такова: если программа занимает много памяти, ее часть выгружается на жесткий диск в файл подкачки, освобождая «жизненное пространство» для других программ, а в случае надобности данные загружаются обратно в оперативную память.
Проблема заключается в том, что разница в скорости между оперативной памяти и жестким диском огромна. Наглядно это можно продемонстрировать так:
Чтобы в файл подкачки сбрасывались только ненужные данные, в Windows работает Менеджер памяти. Работает вполне успешно, благодаря чему на компьютере с 512 Мб ОЗУ можно запускать программы, занимающие более гигабайта памяти. Типичный пример — современные версии Adobe Photoshop, 3DS Max и многие другие программы для сложных вычислений. Конечно, при таком малом количестве оперативной памяти программы будут сильно тормозить, однако работать в них худо-бедно, но возможно.
Что же делают оптимизаторы памяти?
Проведу аналогию с лекарствами для снятия симптомов — они не лечат причину, только облегчают симптомы. Если человек болеет гриппом, избавление от насморка не вылечит его. Если компьютер тормозит и свободной памяти мало — он тормозит не из-за занятой памяти, но из-за чересчур ресурсоемкой программы или, например, перегрева.
Все оптимизаторы обязательно показывают размер свободного места в оперативной памяти. Причем зачастую с красными буквами и предупреждениями о том, что это негативно сказывается на скорости компьютера. Что, вообще-то, неправда. Если программе нужна вся оперативная память — значит, это требуется для дела (расчетов) и работать быстро она будет только в том случае, если ей дадут места столько, сколько попросит.
Типичный пример программ, требующих большие объемы ОЗУ — игры. Если игре требуется 2 гигабайта оперативной памяти — с этим ничего поделать нельзя. Без требуемого объема RAM играть будет проблематично из-за низкой частоты кадров — игра будет тормозить из-за того, что часть данных будет располагаться на медленном файле подкачки. Оптимизаторы оперативной памяти создают такой же негативный эффект — после освобождения памяти программам выделяется памяти меньше, чем им того требуется, из-за чего опять-таки начинаются «тормоза».
Замечание №1: Я не утверждаю, что частота кадров в играх напрямую зависит от объема оперативной памяти. Установив больше оперативной памяти в компьютер, удастся повысить производительность только в тех программах, где действительно важен объем ОЗУ без оглядки на другие более важные параметры: частота процессора, характеристики видеокарты, частота оперативной памяти, скорость жесткого диска и т.д.
Замечание №2: С программами случаются ошибки под общим названием «утечка памяти«, когда программа беспричинно «разрастается» и занимает всю память без надобности, но в таком случае надо требовать от разработчиков этой программы исправления ошибки, а не освобождать память оптимизаторами.
Как работают оптимизаторы памяти
Программы оптимизации памяти (названия у них могут быть разные — SuperRAM, FreeMemory, Memory Management SuperProMegaEdition и т.п.) могут освобождать память несколькими способами, но все они завязаны на принципе обмана Менеджера памяти Windows:
- Программа вызывает специальную функцию EmptyWorkingSet(), которая заставляет все программы как можно больше выгрузить «себя» в файл подкачки.
- Программа начинает бесконтрольно разрастаться в памяти, сообщая Менеджеру памяти Windows о том, что ей это нужно для дела (я говорю метафорами, но вообще-то дело обстоит именно так), в результате чего Менеджер памяти выбрасывает как можно больше программ на жесткий диск в файл подкачки.
Итог всегда один: программы начинают тормозить, зато циферка свободного места в оперативной памяти зеленого цвета и программа оптимизации памяти говорит, что все хорошо. В итоге пользователь радуется, открывает окно со свой любимой программой и… ждет. Потому что его любимая программа начинает сильно тормозить. Так будет до тех пор, пока программа не вернет «себя» в оперативную память из файла подкачки. В итоге оперативная память снова заполняется, индикатор свободного места снова сообщает о занятости памяти, пользователь злится, запускает очистку памяти и все происходит по второму (третьему, пятому, десятому) кругу.
Обратного эффекта — чтобы программа заняла всю оперативную память якобы для быстрой работы — добиться не удастся. Слово «якобы» я употребил потому, что в идеальном случае (когда памяти достаточно) программы берут столько памяти, сколько им нужно и мешать этому процессу нельзя. Вмешаетесь в процесс — получите тормоза, вызванные частым обращением к файлу подкачки.
Еще один печальный момент: оптимизаторы памяти не могут выгрузить из оперативной памяти ненужные программы. Их «ненужность» определяем мы сами, в компьютере все устроено иначе. В файл подкачки выгружаются все программы без разбора.
Вывод №1: освобождение оперативной памяти оптимизаторами идет только во вред и снижает производительность.
Вывод №2: нельзя судить о скорости работы программы по тому, сколько места она занимает в оперативной памяти.
Вывод №3: если программа занимает много места в оперативной памяти, значит — она оперирует большими объемами данных. Помочь ей «думать» быстрее можно только увеличив объем оперативной памяти, т.е. поставив в компьютер побольше плат ОЗУ. Но это не поможет, если остальные характеристики ПК не соответствуют требованиям.
Чтобы не быть голословным, вот ссылка на аналогичные выводы с объяснением работы Менеджера памяти Windows: Сказки про «полезные» оптимизаторы памяти. Пожалуйста, ознакомьтесь со статьёй, прежде чем писать комментарии в духе «Аа, вы всё врети, оптимизаторы помогают!».
Как надо оптимизировать память?
Самый очевидный способ повысить производительность компьютера, который может сделать каждый вот прямо сейчас — закрыть ненужные программы.
Второй, требующий денежных вложений — установить побольше планок (плат) оперативной памяти, чтобы программы «чувствовали себя более вольготно» и работали шустрее. Других способов ускорения компьютера, непосредственно связанных с оперативной памятью, нет.
Еще раз повторюсь: оптимизаторы памяти — бред с целью заработать деньги на доверчивых пользователях. Такой же глупостью является и подстройка «скрытых настроек памяти» в Windows, так как там все уже настроено наиболее оптимально после тестирования на большом количестве компьютеров. Специфичные моменты бывают, но к домашним компьютерам это не относится.
О свободной оперативной памяти в Windows Vista, 7, 8, 10
На форумах я часто вижу возмущенные крики (цитирую): «Поставил Windows 7 (8, 10), посмотрел Диспетчер задач, а там говорится, что занято полтора гигабайта или вся оперативная память! Windows 7 (8, 10) жрет очень много памяти!»
На самом деле все обстоит совсем не так и причин возмущаться нет. Совсем наоборот: в современных операционных системах свободная память отводится под кэш. Это происходит преимущественно благодаря функции SuperFetch. Благодаря кэшу программы запускаются быстрее, так как вместо обращения к жесткому диску данные загружаются из оперативной памяти (см. картинку выше, разница в скорости работы жесткого диска и ОЗУ написана жирным шрифтом). Если какой-то программе понадобиться больше оперативной памяти — кэш моментально сократит свой размер, уступив ей место. Подробнее об этом написано на Хабрахабре.
Выводы:
- Память очищать не нужно, потому что каждый байт объема используется максимально эффективно.
- Забудьте про оптимизаторы памяти — они не оптимизируют ничего, мешая работе кеша и прочим функциям Windows.
- Если занято много оперативной памяти сразу после включения компьютера — это абсолютно нормально и не является причиной медленной работы программ. Конечно, если автозагрузка забита десятком-другим программ, которые и занимают эту самую память, заодно нагружая процессор и эксплуатируя жесткий диск, тормозить будет обязательно. С такими программами нужно бороться, удаляя их или убирая из автозагрузки, а не очищать память оптимизаторами.
Также существует миф, что при использовании Windows Vista, 7, 8 и 10, кэш мешает программам. Якобы «когда программе нужно больше оперативной памяти, оказывается, что она забита кэшем, возникают тормоза». На самом деле это неправда. Кэш улетучивается мгновенно и программе сразу становится доступен нужный объем оперативной памяти.
Изменение размера файла подкачки, его перемещение или отключение
Тоже довольно распространенные, в некотором роде вредные, советы. Об этом есть хорошая статья на Хабре: Файл подкачки Windows. Приведу наиболее важные выводы той статьи с добавлениями из личного опыта:
- Изменять размер файла подкачки нет смысла. Теоретически, в идеале надо выставить размер файла подкачки не больше того, который требуется запущенному софту. Проблема в том, что даже если вы используете одни и те же программы одних и тех же версий день ото дня, ситуации случаются разные (вы можете запустить в браузере одну вкладку, а можете сотню, каждую с открытой игрой на Flash) и требования к доступной памяти получатся разные — предполагаемый «идеальный» размер файла подкачки будет меняться от минуте к минуте. Поэтому смысла изменять размер файла подкачки нет, так как «идеальный размер» файла подкачки меняется постоянно. Проще оставить тот размер, который определила система, и не морочить себе голову.
- Если отключить файл подкачки на системном разделе (при этом файл подкачки может использоваться на других разделах), не будет работать дамп памяти при ошибках BSOD. Поэтому, если система будет показывать «синий экран смерти», для выявления причины сбоя придется сначала включить файл подкачки на системном разделе, затем ждать повторения сбоя. Есть только одна ситуация, когда целесообразно отключать файл подкачки на системном диске (лишаясь возможности диагностики) и включать на другом — если в компьютере установлено два и более физических жестких диска. Перемещение файла подкачки на другой физический диск может снизить количество подтормаживаний из-за распределения нагрузки на диски.
- Отключение файла подкачки (полное, т.е. на всех дисках) вызовет проблемы и вылеты ресурсоёмких программ. Вы не поверите, но даже сейчас, когда в домашнем ПК установлено в среднем 16 Гб RAM, встречаются программы, которым требуется больше. Лично я сталкивался с проблемами при рендеринге сложных сцен с помощью V-Ray и при работе в программе GIMP — эти программы довольно прожорливы по части доступной памяти и закрываются при её нехватке.
Примечание: очевидно, что программы обычно не пишут данные в файл подкачки сами, за них это делает ОС (но бывают исключения). Как бы то ни было, отключенный файл подкачки нельзя рассматривать как часть нормального режима работы компьютера. - Перемещение файла подкачки на RAM-диск (очень быстрый виртуальный диск, находящийся в оперативной памяти) нецелесообразно.
Во-первых, при запуске Windows RAM-диск может инициализироваться позже того момента, когда системе понадобится файл подкачки. Из-за этого может случиться что угодно — от BSOD до спонтанных подтормаживаний системы (столкнулся с перечисленным, когда проверял эту идею).
Во-вторых, размер такого файла подкачки будет небольшой — память-то не резиновая. Возникает патовая ситуация — либо провоцирование нехватки ОЗУ при большом файле подкачки в памяти и вылеты программ из-за этого, либо вылеты программ при нехватке места в маленьком файле подкачки. Золотой середины нет, т.к. компьютер может выполнять совершенно разные задачи.
В-третьих, и это самое главное — это просто глупо, потому что своп нужен для расширения виртуальной памяти за счёт жёсткого диска или SSD. Если эта память есть, зачем откусывать от неё кусок для диска с пейджфайлом, если можно использовать по прямому назначению?
Очистка файла подкачки
В файле подкачки pagefile.sys может храниться разнообразная информация конфиденциального характера — например, картинки из недавно открытых в браузере страниц. Это нормальный процесс, обусловленный особенностями работы программ в Windows. При желании можно включить очистку файла подкачки при выключении компьютера. Однако производительности этот твик никоим образом не прибавит, наоборот — серьезно замедлит выключение и перезагрузку компьютера.
Если вы не работаете с конфиденциальными данными, не включайте очистку pagefile.sys.
Доступность более 4 Гб оперативной памяти в Windows
Интернет буквально завален рассуждениями пользователей о том, почему в битной Windows доступно 3,5 Гб оперативно памяти вместо, например, установленных 4 Гб. Было придумано множество теорий, мифов и легенд. Например, считают, что это ограничение, сделанное Microsoft, которое можно снять. Это отчасти правда — принудительное ограничение действительно есть. Только снять его корректно нельзя. Это обусловлено тем, что в 32-разрядных системах драйвера и программы могут нестабильно работать при использовании системой больше четырех гигабайт оперативной памяти. Для 64-битных Windows драйвера тщательнее тестируют, вышеупомянутого ограничения там нет.
Но не все так просто. Windows 7 Начальная (Starter) (и ее аналог у Vista) не видит больше 2 Гб оперативной памяти. Это тоже ограничение, только не по причине нестабильно работающего софта. Дело в том, что Windows 7 Начальная распространяется исключительно на маломощных нетбуках, по факту практически бесплатно, поэтому необходимо было дистанцировать ее от более дорогих изданий: Домашней базовой, Домашней Расширенной, Максимальной и т.д. Часть ограничений Windows 7 Starter можно снять, но только не ограничение на два гигабайта оперативной памяти.
Что касается остальных 32-битных изданий Windows XP, Vista, 7 и Windows 8/10: на практике пользователю доступно еще меньше — 3,5 Гб. Все дело в том, что драйвера тоже имеют свои адреса, которые лишают программы Windows доступа к части памяти в 512 мегабайт. Существует патч, позволяющий «задвинуть» такие адреса за пределы четырех гигабайт, чтобы система стала использовать все 4 Гб оперативной памяти, но это практически не имеет смысла:
- Как я писал выше, драйвера и программы не смогут корректно работать после такого патча, так что система может начать зависать, выдавать ошибки, т.е. вести себя непредсказуемо.
- Даже если в компьютере будет установлено плат оперативки на 8, 16, 32 Гб или больше — это никак не поможет их задействовать в 32-битном режиме операционной системы.
Какой смысл от доступности дополнительных 512 Мб оперативной памяти, если система станет нестабильной? Может, стоит поступить проще и наконец-то поставить 64-битную Windows?
То, что «видно» 4 Гб оперативной памяти, не значит, что ее можно эффективно использовать. Проблема в том, что 32-битная Windows не может грамотно выделить процессу (программе) более двух гигабайт физической оперативной памяти. Об этом многие забывают, и зря. Неважно, сколько оперативной памяти в компьютере, если программе нельзя дать больше 2 Гб ОЗУ. Пример: если пользователь работает в 32-битной Windows с Photoshop на компьютере с 4 Гб оперативной памяти, графический редактор сможет задействовать всего лишь два гигабайта максимум, остальные данные скинет в файл подкачки и будет тормозить. С играми то же самое.
На самом деле, только в 64-битной операционной системе программы могут задействовать весь потенциал оперативной памяти объемом больше двух гигабайт. И то не все, а только рассчитанные на использование больше 2 Гб ОЗУ. Ситуацию опять-таки можно исправить с помощью соответствующих патчей в 32-битной Windows, но это работает далеко не со всеми программами. Повторюсь: только 64-битная Windows и 64-битные программы, запущенные в ней — единственный выход задействовать весь потенциал большого объема ОЗУ.
Между тем, с серверными версиями Windows ситуация иная: там доступны гораздо большие объемы оперативной памяти даже в 32-битных версиях ОС. Почему так происходит, рассказано в статье Преодолевая границы Windows: физическая память от Марка Руссиновича.
Также есть моя заметка Какую выбрать систему — 32 бит или 64? в статье про установку Windows 7 для новичков.
Мифы: 64-битная Windows 7/8/10 потребляет много памяти, ей нужно 4 Гб оперативной памяти, и вообще она прожорливый монстр
Как говорится, «у страха глаза велики». На самом деле разница между Windows обеих разрядностей не так существенна, как кажется. Например, 64-битная Windows 7 может работать даже на компьютере с 256 Мб ОЗУ, хотя тормозить будет нещадно (как и 32-битная версия):
Windows 7 на компьютере с 256 Мб оперативной памяти.
Чтобы показать разницу в требованиях к оперативной памяти 32-битной и 64-битной Windows, я установил Windows 7 обеих разрядностей:
Потребление памяти Windows 7 обеих разрядностей
Обе Windows были установлены в одинаковые виртуальные машины с 2 Гб ОЗУ в каждой. Из программ установлены только VMWare Tools (использовалась пробная версия виртуальной машины VMWare). В 32-битной Windows 7 было выделено 606 Мб, в 64-битной — 766. Выделенная память — это вообще вся занятая программами и системой виртуальная память (в ОЗУ и файле подкачки). Занятой оперативной памяти будет меньше, в зависимости от запущенных программ.
У вас на свежеустановленной системе могут быть несколько другие значения, потому что системы могут быть разных изданий, с разными драйверами и т.п. Но итог всегда примерно одинаков:
Если обратиться к официальной странице с системными требованиями Windows 7 и Windows 8, то можно увидеть, что для 32-битной Windows 7/8 требуется компьютер с 1 Гб оперативной памяти, а для 64-битной — 2 Гб минимум. Действительно, если использовать 64-битную Windows 7/8 на компьютере с 1 Гб ОЗУ, свободной памяти останется мало, что снизит производительность компьютера из-за явной нехватки оперативной памяти. В масштабах двух гигабайт потеря 0,15 гигабайта уже будет малозаметна, зато начнут проявляться преимущества 64-битной системы и 64-битных программ.
Вывод: устанавливать 32-битную Windows 7/8/10 есть какой-то смысл только на компьютере с ОЗУ меньшим, чем 2 Гб, и то — сейчас этого объёма ОЗУ недостаточно, поэтому выбор разрядности не будет основной проблемой. На компьютере с количеством оперативной памяти более 2 Гб (или равном) ничего не мешает установке 64-битной Windows 7/8/10.
О преимуществах 64-битной версии Windows 7/8/10 рассказано выше, так что рекомендую поскорее переходить на нее. Точнее — на Windows 10, потому что у старших ОС окончание срока поддержки не за горами, они скоро перестанут получать обновления и будут более уязвимы для вредоносных программ.
Увеличение оперативной памяти с помощью ReadyBoost
Здесь уже Microsoft сама внесла путаницу во времена выхода Висты, рассказывая на своем официальном сайте о том, что с помощью ReadyBoost можно решить проблему с нехваткой оперативной памяти по принципу «вставил флешку и расширил объем ОЗУ». На самом деле это не так. При работающей технологии ReadyBoost на флешке создается специальный файл, куда копируются наиболее часто используемые файлы. Благодаря этому некоторые программы запускаются быстрее, что частично устраняет проблему «подвисаний» компьютера, но, к сожалению, не повышает производительность системы в целом и тем более не увеличивает объем оперативной памяти. ReadyBoost позволяет частично решить проблемы, связанные с чтением медленного жесткого диска, и только.
Подробнее об ReadyBoost можно почитать здесь.
Ещё немного о файле подкачки
Судя по комментариям, этот момент понимают не все: файл подкачки — не оперативная память. Даже на SSD. Даже на SSD, который быстрый NVMe — без разницы.
Цель существования pagefile.sys — не дать закрыться программам, которым не хватает физической оперативной памяти. Это — единственная задача, которую решает данный «механизм». Изменение размера файла подкачки влияет на то, при нехватке какого объёма ОЗУ запущенный софт начнёт закрываться. Это как аварийный водосброс, не позволяющий дамбе прорваться.
Производительность ПК изменением размера swap-файла вы не повысите. Вот вообще никак. Если у вас не хватает ОЗУ — добавляйте её. Если добавить невозможно — меняйте компьютер. Размер файла подкачки в контексте увеличения производительности обсуждать бессмысленно.
Подвожу итоги
- Оптимизаторами оперативной памяти пользоваться нельзя.
- Трогать настройки памяти — тоже, даже если в программе есть множество подсказок, дающих ощущение контроля над ситуацией.
- Свободная оперативная память в Windows Vista/7/8/10 используется во благо, лучше не трогать этот функционал — все хорошо работает, улучшить практически ничего нельзя.
- Сама по себе занятость ОЗУ — не причина замедления работы ПК (она может быть занята полезным кешем). Если у вас спонтанно замедляется работа компьютера, проверьте компоненты на перегрев. Также тормоза могут случаться от большого количества запущенных программ или одной программы, которая все ресурсы «забирает» себе.
WooCommerce: недостатки, о которых следует знать
Настройка Arch Linux для хостинга сайтов с оптимизацией PageSpeed
Настройка геймпада на ПК
Если оперативная память перегружена…
Если оперативная память перегружена, но система работает.
Ваша операционная система потребляет большое количество памяти? И оперативная память перегружена из сессии в сессию. Не стоит паниковать. Как это не кажется парадоксальным, особенно для тех, кто страдал на стареньких компьютерах от недостатка RAM, состояние, при котором оперативная память перегружена , порой абсолютно нормально. «Недозагруженная» память – лишь трата этой самой памяти.
Разводим причины и проблемы по сторонам
Но для начала уточним ситуацию. Если оперативная память перегружена – это иногда плохой признак. Если память заполнена, а компьютер при этом начинает тормозить, индикатор загрузки жёсткого диска непрерывно помигивает, и система начинает заполнять оперативными данными файл подкачки на винчестере. Если это происходит, вывод один: запущено множество приложений, которые потребляют слишком большое количество ресурсов Windows, или в системе висит работающий против вас процесс. О характере этих приложений можно судить по Диспетчеру задач, в котором описываются все программы, работающие в данный момент. Это могут задачи, запущенные вами, или вирусы. Нередко программы способны маскироваться даже от Диспетчера, так что, если оперативная память перегружена «ни с того ни с сего», стоит призадуматься о смене антивируса или пришло время добавить антималварь. Но первое, с чего бы начал я, это проверка RAM утилитой memtest.
И опять же, ситуация ситуации рознь. Если вы замечаете, что память начинается заполняться под завязку именно при подключении к сети или при попытке что-нибудь скачать (а Диспетчер от Windows молчит, как партизан), стоит припомнить, не устанавливалось ли некое программное обеспечение или специальные драйверы для усиления загрузки. В любом случае, проверьте-ка сетевые драйверы. А самый простой способ проверить, не работает ли против вас какое-то конкретное устройство — это Безопасный режим без сетевых драйверов.
Продолжаем далее. У товарища Руссиновича, который вкупе с коллегами написал очень много чего полезного для Windows, есть отдельный экземпляр, который существенно расширяет функции Диспетчера задач в области работы оперативной памяти. Речь об утилите RamMap. У любого, который задавался вопросом использования оперативной памяти, эта утилита должна на компьютере появиться.
Работа с утилитой — тема отдельной статьи, а в пределах данной… переходите сразу на вкладку File summary: она уже сейчас может многое прояснить, ибо именно там даётся список не просто абстрактных программ и служб, а ПОИМЁННЫЙ СПИСОК файлов, которые КОНКРЕТНО прямо сейчас кушают вашу RAM. Откровенно говоря, это утилита из числа немногих, которая действительно может помочь выцепить виновника проблем с оперативной памятью не в виде «да это Хром много жрёт!», а покажет конкретный документ на жёстком диске, который в числе остальных в запущенной службе виновник ситуации.
ПОПРАВКА
В этой статье я рассматриваю не специальные случаи, когда оперативная память перегружена так, что система просто останавливается и работать с ней становится невозможно. Причём неважно, какой объём RAM установлен на компьютере: 4 Гб или 16 Гб — память заполняется полностью почти сразу после запуска системы. В этом случае:
- Если ваш компьютер особенно тормозит при выходе в интернет, прочтите статью Почему медленно работает интернет. Там рассмотрим на примере, как выявить причину таких тормозов.
- Диспетчер задач показывает, что систему тормозит какой-то из конкретных процессов, однако без видимых для пользователя причин. Прочтите статью Windows Explorer грузит оперативную память
- Оперативная память полностью занята, система останавливается, однако Диспетчер задач не может указать на причину: визуально все процессы потребляют некритический объём памяти. Это вирус или малварь, которые «редактируют»сетевые драйвера. Копайте в эту сторону.
Так что следует развести по углам ситуацию с полной загрузкой RAM в результате действий зловредных программ или битых драйверов и неисправностью связки «RAM-слот-vатеринка» и вариантом, когда на самом деле всё работает корректно, открыты всего несколько программ, а признаков замедления работы компьютера не наблюдается, однако оперативная память перегружена всё равно.
Одни из способов выяснить причину или попытаться докопаться до причин перегрузки RAM — создать в Windows ещё одну учётную запись с правами администратора. И сравните всё, что только можете сравнить: запущенные процессы и службы в Диспетчере задач, сведения из Мониторинга системы, папки Автозагрузки и Конфигурацию системы из msconfig. Если проблема есть — она может проявиться.
Кэширование
Те, кто застал Windows XP, хорошо помнят, как свежеустановленная Windows потребляла 150-250 Мбайт оперативной памяти. Для владельцев Windows 7 и позднее ситуация в корне изменилась. Она по умолчанию потребляет не менее 1,3 Гбайт RAM. Отсюда многие из пользователей в своё сделали неправильные выводы о преимуществах предшествующей системы перед Windows 7. Оперативная память для современной системы используется гораздо более выгоднее, нежели в те времена, когда на свет появилась бессмертная Windows XP. Теперь это кэш для часто используемых файлов и данных программ. Именно на плечи кэша RAM и ложится обязанность хранить в себе копию файлов, к которым вы недавно обращались (если система будет лезть за этими данными на жёсткий диск постоянно, она остановится через мгновения после запуска).
Таким образом, впервые в Windows Vista появилась технология SuperFetch (супер выборка). SuperFetch — это внутренний сервис, который запускается внутри системного процесса svchost. Технология SuperFetch позволяет определять наиболее часто используемые приложения пользователя, создавать их базу данных и всякий раз при запуске программы повторно выгружать данные в память готовыми блоками. В итоге программы загружаются быстрее. Постоянно обновляя список пользовательских предпочтений, SuperFetch прямо во время работы способна сама изменять скорость работы Windows, наблюдая за действиями пользователя.
МАЛЕНЬКАЯ ИНСТРУКЦИЯ ПО ДИАГНОСТИКЕ ПАМЯТИ
Сейчас я покажу на небольшом примере как можно использовать некоторые из встроенных и специальных программ в поиске пропавшей оперативной памяти в Windows.
- Итак, что нужно знать про кэш и как его контролировать? Средствами Windows — почти никак. Однако, раз размер кэша RAM в данный момент легко проверить (его размер в текущем сеансе может кое-что рассказать), взглянем на него: в Диспетчере задач он во вкладке Производительность. Так, в Windows 10 он здесь:
пока ситуация нормальная, но через мгновения она начнёт изменяться
Главное, что вы должны сейчас уяснить: если на компьютере установлено 4 Гб RAM, она заполнена, а под кэш при этом выделено в районе 200 Мб, у вас серьёзные проблемы. Значит…
- откройте вкладку Процессы Диспетчера и для удобства просмотра проранжируйте столбец с процессами по величине потребления RAM, и путём сложения величин прикиньте, действительно ли все процессы потребляют столько физической памяти, что упомянутых в примере 4 Гб не хватает? Обнаружили провал и половины недосчитались:
даже навскидку — здесь и гигабайта RAM не наберётся
- в том же Диспетчере нам нужен Монитор ресурсов. Здесь всё подробнее и некоторые несоответствия уже налицо (просто вырисовывается реальная картина того, как оперативная память в системе распределяется и куда сейчас используется):
ситуация не требует вмешательства: наиболее потребляющие приложения видны как на ладони — это браузеры Хром и Edge
- однако уже через несколько минут ситуация изменится и настаёт время RAMMap — становится теплее:
многовато для «небольшой» части системного кэша
Кому интересно, но подзабыл: Метафайл — это часть системного кэша и состоит из метаданных NTFS. А это, в свою очередь, таблица MFT, имена папок, пути к ним и присвоенные атрибуты. Но что-то уже больно чересчур…
- Вобщем, дальнейшие изыскания могут быть вам неинтересны. Журнал событий показал, что служба дефрагментации пыталась проанализировать все системные тома жёсткого диска по расписанию, но всякий раз натыкалась на ошибку в одном из них. К счастью, ситуация благополучно разрешилась коррекцией ошибок на диске и запуском службы дефрагментации вместе с MFT таблицей. Времени ушло много (вся ночь на 500 Гб раздела), но после перезагрузки на лице хозяина компьютера проступили слёзы радости: 1,2 Гб максимум загрузки RAM вместо 4 Гб до того. Для слабенькой системы прирост весомый.
Что ещё есть в арсенале по ускорению системы?
Разработчики Windows продолжают с заботой о пользователе нагружать систему набором функций, позволяющим реагировать на неполадки, не дожидаясь массовых отзывов. Для этого треть служб Windows имеет лишь диагностический характер, которые работают по принципу «запустилась-наблюдаю-заметила-сообщаю». Стабильна система или нет — службы будут запущены. Процессор загружен, RAM забита. Кому хорошо-то? Нет, речь не о том, что пора останавливать все «ненужные» службы. Вопрос стоит в области «сочленения» устаревающего компьютера и впихуемой версии Windows. Вобщем, драйверы и ещё раз драйверы.
Кстати, из наиболее вероятных вариантов избавиться от одной из таких служб — остановка, например, службы мониторинга Network Diagnostic Usage (она же NDU). Что она там смотрит, знают только разрабы. Лично мне после её отключения немного полегчало и процентов 10 к объёму свободной RAM прибавилось:
параметр Start вывожу со значения 2 на 4:
Повторюсь, таких служб в системе может быть немало, о чём будет свидетельствовать пункт NonpagedPool окна той же RAMMap. Или не может быть вовсе.
Далее по теме: переходим на Линукс?
Ситуация, когда оперативная память перегружена, характерна не только для пользователей Windows. «Пингвинятники» — они же линуксоиды – они же пользователи Линукс-подобных систем – также отмечают возрастающие потребности системы в виде заполненной оперативной памяти, выражая по этому поводу обеспокоенность. Большинство программ отслеживания ресурсов системы, например, Gnome System Monitor, скрывают от пользователя память, используемую кэшем, чтобы те особо не переживали по этому вопросу.
Тоже относится к браузерам и другим программам, которые используют свой собственный кэш. Посмотрите в Диспетчер задач при запущенных Хроме или Мозилле. Обратите внимание, как загружается оперативная память. Если объём установленной RAM на компьютере велик, для Windows использование больших объёмов памяти даёт положительные результаты. Ведь кэшируя страницы в памяти, Windows может ускорить загрузку страниц, а значит и скорость работы в сети, в разы. Это заметно по работе с кнопками Вперёд и Назад при переходе по только что посещённым страницам. То же с другими программами. Использование оперативной памяти программами «на всю катушку» означает лишь то, что она не растрачивается попусту.
Пустая память бесполезна?
Мнение о том, что иметь много свободной оперативной памяти для ускорения запуска пока ещё не работающих программ, абсолютно ошибочно. Неважно, оперативная память перегружена кэшем запущенных программ или целые гигабайты простаивают в ожидании запуска – RAM компьютера готова к «приёму» новых приложений. Кэшируемые данные в памяти имеют самый низкий приоритет, потому выводимое на Рабочий стол приложение автоматически повышается системой в ранге, и вся нагрузка из RAM устремляется к ней. А простаивающая часть памяти просто бесполезна. Трижды подумайте о том, бежать ли за дополнительной «оперативкой» в магазин (благо можно купить недорого любые RAM-планки, в том числе и «отходящие» стандарты типа DDR3 или DDR2 очень надёжных брендов), наблюдая в Диспетчере Windows гигабайты загруженной RAM.
Пять мифов об оперативной памяти
Что будет, если поставить в компьютер две планки оперативной памяти разных объёмов или от разных производителей? Оперативное запоминающее устройство (ОЗУ) окружено множеством различных мифов и заблуждений, которые пришло время наконец-таки развеять!
ОЗУ (оперативное запоминающее устройство) – один из важнейших компонентов любого компьютера и смартфона. Оперативная память нужна для работы системных процессов в режиме реального времени: браузера, почтовых клиентов, офисных приложений, компьютерных игр и так далее.
Таким образом, задача оперативной памяти – выполнять функцию временного хранения данных и команд, которые необходимы процессору для выполнения определённых операций. Однако существует множество разногласий касательно того, можно ли использовать планки ОЗУ разных объёмов памяти, брендов и частот (скоростей).
В данной статье мы постараемся ответить на все вопросы и развеять наиболее распространенные мифы.
«Нельзя ставить планки разных объёмов памяти»
Большинство ноутбуков и компьютеров оснащены как минимум двумя слотами для ОЗУ, если не больше. Кроме того, многие современные материнские платы имеют четыре слота для оперативной памяти.
Довольно-таки распространенным является миф, что нельзя использовать планки ОЗУ разных объёмов или производителей вместе.
Если коротко, то это неправда.
Итак, можно ли ставить планки разного объёма или производителя? Ответ: ДА. Но есть одно «но»: смешивать разные модули ОЗУ – не самое лучшее решение для производительности системы.
Для обеспечения оптимальной производительности компьютера рекомендуется использовать планки одного производителя, одинакового размера и с одинаковой частотой. Дело в том, что ОЗУ состоит из нескольких компонентов, которые вместе обеспечивают оптимальную работу устройства.
Таким образом, ОЗУ лучше всего работает именно в паре с точно таким же оборудованием. Для оптимальной производительности оперативная память должна работать под одинаковым напряжением, а соответствующие контроллеры должны хорошо взаимодействовать друг с другом и с материнской платой.
Именно поэтому лучше всего использовать одну и ту же модель оперативной памяти во всех слотах.
Однако это не означает, что вы не можете ставить планки разных объёмов памяти. Например, если на ПК уже установлена ОЗУ на 4 ГБ, то вы все равно можете добавить еще одну на 8 ГБ.
Как только вы включите двухканальный режим ОЗУ, то устройства будут работать как две планки по 4 ГБ, работающих бок о бок с оптимальной производительностью.
Оставшиеся 4 ГБ будут работать в одноканальном режиме. В целом, это не так быстро, как использование двух планок одинакового размера, однако производительность в любом случае возрастет.
То же самое касается частоты и скорости. По умолчанию ОЗУ будут работать вместе на частоте нижней планки.
Итак, должны ли совпадать объёмы, производитель, частота и скорость оперативной памяти? Нет, но для оптимальной производительности следует установить одинаковые модели.
«На моем компьютере уже достаточно ОЗУ»
«Данного объёма оперативной памяти достаточно для запуска программного обеспечения. Вам не нужно добавлять больше», — довольно-таки распространенный совет, который вы часто найдете на просторах интернета.
Да, планки на 8 ГБ может быть достаточно для запуска приложений, но это не значит, что компьютер не может работать еще быстрее. Чем больше ОЗУ, тем лучше, даже если вы ставите две планки разных объёмов.
Здесь все сводится к тому, как именно создаются приложения: большинство разработчиков пишут свои программы так, чтобы приложение запрашивало определенный процент доступной оперативной памяти.
Если компьютер использует лишь 60 процентов (или любой небольшой процент) от общей емкости ОЗУ, то это не значит, что вам не нужно больше оперативной памяти. Да, программы, которыми вы пользуетесь повседневно, могут запрашивать только 60 процентов ОЗУ, однако остальные 40 сохраняются для других задач, которые вы можете запустить в будущем.
Как правило, для компьютеров минимальный размер составляет 4 ГБ, а для обычных пользователей рекомендуется 8 ГБ. Геймеры, профессионалы, работающие с графикой, видео или звуком и другие энтузиасты, должны приобрести как минимум 16 ГБ, в то время как системы с 32 ГБ становятся все более и более популярными.
«Объём памяти – самое главное»
Вы наверняка знаете, сколько оперативной памяти установлено в вашем телефоне или ПК.
Когда кто-то говорит, что на его компьютере больше оперативной памяти, то вы автоматически думаете, что его система работает быстрее. Но это не обязательно так, поскольку не только ёмкость ОЗУ определяет скорость RAM.
Среди определяющих факторов производительности оперативной памяти также стоит выделить скорость и частоту. Как и в случае с центральным процессором, оперативная память имеет тактовую частоту. Чем она выше, тем больше операций ОЗУ способно выполнять за одну секунду.
Вы часто найдете модели с частотой 2400 МГц или 3000 МГц, тогда как на сегодняшний день 3200 МГц и 3600 МГц являются нормой для высокопроизводительных систем.
Одна из проблем, с которой вы можете столкнуться, — несоответствие скоростей ОЗУ, что может повлиять на работу ПК.
- Во-первых, если оперативная память работает на частоте 2000 МГц, а материнская плата поддерживает только 1333 МГц, то разница в 700 МГц будет потрачена впустую.
- Во-вторых, если вы ставите планки ОЗУ с разными показателями частоты, то они будут работать на более низкой скорости.
Например, если на вашем компьютере установлено два стика оперативной памяти с частотой 2400 МГц и 3600 МГц, то работать они будут на частоте 2400 МГц, из-за чего мощность просто-напросто теряется.
Вообще говоря, обычный пользователь вряд ли заметит большую разницу между 8 ГБ и 16 ГБ ОЗУ. Однако замена на более скоростную планку с теми же 8 ГБ может привести к значительному увеличению скорости работы компьютера.
«При освобождении оперативной памяти она заработает быстрее»
Один из самых распространенных мифов об ОЗУ гласит, что нужно всегда освобождать оперативную память, чтобы она работала быстрее. Данное заблуждение возникло после наплыва различных программ типа «ускорителей оперативной памяти» и «оптимизаторов ОЗУ».
На самом деле чистить оперативную память не нужно. Наоборот, если она заполнена, то это даже хорошо, поскольку операционная система и программное обеспечение вашего компьютера должны использовать каждый бит доступной оперативной памяти.
Освобождение оперативной памяти с помощью различных программ-ускорителей не даст ровным счетом ничего. Это, наоборот, может замедлить работу системы, поскольку под «освобождением» подразумевается процесс, во время которого вы удаляете определенные задачи из оперативной памяти.
Не стоит путать ОЗУ с накопителем. Оперативная память автоматически управляет данными: если на вашем ПК установлено 4 ГБ ОЗУ, то система будет постоянно записывать, стирать и перезаписывать эти самые 4 ГБ.
Однако это не значит, что нужно постоянно заполнять оперативную память до отказа, поскольку это может привести к другим проблемам со скоростью.
Большинство современных операционных систем используют так называемый файл подкачки, также называемый виртуальной памятью. Он нужен для того, чтобы компенсировать нехватку оперативной памяти, если приложениям ее не хватает.
Виртуальная память действительно полезна, поскольку не позволяет компьютеру тормозить. Тем не менее, если у вас часто заканчивается ОЗУ, то пора бы задуматься о том, чтобы ее расширить.
Вернемся к мифу об увеличении скорости RAM за счет её освобождения. Не используйте стороннее программное обеспечение, которое «освобождает память или ускоряет её». Они не работают – это лишь пустая трата времени. Не говоря уже о том, что есть высокая вероятность занести на свое устройство вирус.
«Нужно всегда ставить парное количество планок ОЗУ»
Еще один миф заключается в том, что вы всегда должны использовать парное количество планок ОЗУ. Как и в первом пункте о разных размерах, заблуждение гласит, что нужно всегда ставить два, четыре или шесть модулей оперативной памяти.
Но это не правда, поскольку вы можете поставить даже одну планку – именно поэтому производители часто выпускают и продают одинарные модели.
Вы также можете использовать даже три планки, если хотите, но, как мы уже описывали выше, это может привести к снижению общей производительности. Если ваш ПК оснащен двумя одинаковыми модулями по 8 ГБ, то они будут работать в двухканальном режиме, обеспечивая наиболее эффективную производительность системы.
Теперь предположим, что у вас есть три планки по 8 ГБ. Таким образом, общий объем памяти составляет 24 ГБ. Отлично, не так ли? Однако в зависимости от конфигурации вашей системы, типа используемой оперативной памяти и модели материнской платы, установка третьего модуля может отключить поддержку двухканального режима для первых двух планок. Таким образом, несмотря на большую емкость, общая производительность может снизиться.
В сети можно наткнуться на большое количество споров касательно количества модулей оперативной памяти.
Ставить парное количество устройств необязательно, однако это может негативно повлиять на общую производительность системы.
«ОЗУ устроено по-другому на iPhone и Mac»
Apple применяет немного другой подход к оперативной памяти по сравнению с ПК и телефонами на базе Android, поэтому многие из вышеперечисленных правил здесь неприменимы.
Базовая архитектура iPhone сильно отличается от Android. Американская компания в первую очередь старается правильно распределять ресурсы своего железа за счет умных алгоритмов сжатия файлов в оперативке.
Именно поэтому Apple никогда не объявляет о том, сколько оперативной памяти установлено в новом iPhone. Как итог, даже старые модели айфонов работают быстрее, чем лучшие современные смартфоны на базе Android.
К сожалению, не все модели Mac позволяют обновлять системную оперативную память. Да, для многих пользователей Mac это не проблема, но бывают исключения.
Итоги
Что ж, вот мы и рассмотрели пять наиболее распространенных мифов об оперативной памяти.
Таким образом, чтобы подытожить, следует сказать, что на компьютер МОЖНО ставить планки ОЗУ разных производителей, частот, объёмов памяти и так далее. Устройство от этого работать не перестанет, но пострадает скорость – компьютер будет работать медленнее. Поэтому для получения оптимальной производительности мы все-таки советуем ставить одинаковые модели ОЗУ.