Лайкнуть
Лайкнуть
Твитнуть
Оптимизация ядер и памяти с помощью MSConfig
Совет основан на допущении, что Windows при загрузке не использует все ядра процессора и мегабайты оперативной памяти. Якобы нужно указать нужное количество, чтобы компьютер быстрее включался с помощью «секретной» настройки.
Делается так: Пуск - Выполнить
(в Windows 10 есть поле поиска вместо Выполнить
) - msconfig - OK.
Запустится программа Конфигурация системы
(msconfig.exe). Вкладка :
Нужно нажать, Дополнительные параметры,
чтобы открыть параметры загрузки Windows:
Пока очумелые ручки не добрались до настроек, здесь ничего указано не будет, галочки проставлены не будут. С чего бы разработчикам Windows ограничивать производительность системы?
Но люди, не знакомые с критическим мышлением, думают иначе: изначально галка не стоит, поэтому ограничение включено. Якобы отсутствие галочек не даёт операционной системе узнать, сколько ядер у процессора и сколько оперативной памяти установлено. И якобы нужно указать вручную:
И после перезагрузки компьютер начнет использовать все ресурсы.
Вариантов у этого совета несколько. Я прошёлся по сайтам, посвящённым оптимизации Windows, выбрав несколько.
Например, некий Юрий считает, что по умолчанию установлена загрузка с одного ядра:
Другие вспоминают про оперативную память. «Блог мастера ПК» утверждает, что с ней та же беда.
Начало совета
Я обрезал часть текста, чтобы не было длинного скриншота, но и так понятно, что автор ничего не знает ни про этапы загрузки операционной системы, ни в принципе про то, как работают современные вычислительные устройства. Вот что он советует дальше:
Здесь советуют указать не только количество ядер, но и размер памяти. А в конце говорят, что можно
снять
галочку.
Где логика? Устанавливается опция, потом отключается, как это может на что-то влиять в принципе?
Откуда миф?
Полагаю, дело не только в незнании матчасти советчиков, но и неоднозначной официальной справке по MSConfig. Посмотрите статью MSConfig the System Configuration Tool на официальном сайте Microsoft. Описание опций действительно оставляет место домыслам, если не знать контекста:
Перевод: «Если вы нажмете на Advanced Options (в любой ОС), вы можете установить такие параметры, как количество процессоров, выделенных для операционной системы при загрузке, или максимальный объем оперативной памяти. (Как правило, обычно не отмечено)».
Текст не противоречит мифу: действительно можно указать, сколько процессоров и оперативной памяти использовать при загрузке. Вот только предназначены эти опции не для повышения производительности.
На самом деле Windows всегда
использует все
процессоры и ядра процессоров и всю
оперативную память. Никто не думал ограничивать систему, да еще во время загрузки.
Опции в msconfig нужны программистам для тестирования программ, чтобы ограничить
доступные ресурсы ПК.
В каком бреду можно утверждать, что Windows не задействует все возможные ресурсы при загрузке компьютера? Ведь в интересах разработчиков Windows сделать так, чтобы компьютер включался как можно быстрее. Вводить ограничения глупо.
Некоторые «гении» пытаются доказать, что опция «Число процессоров» ускоряет компьютер, потому что при значении 1
игры начинают тормозить. Логики в этом не найти. При включенном лимите на одно ядро производительность снижается (особенно это заметно в играх), но по умолчанию ограничения выключены
и программы вольны использовать все ядра, как им вздумается.
К счастью, этот совет безвреден. Установка максимальных значений никак не влияет на работу компьютера, ведь результат тот же, что и при выключенных настройках. Вот когда добавите оперативной памяти компьютеру или установите процессор с большим количеством ядер, придётся снова в msconfig менять настройки на максимальные.
Заставить игру использовать все ядра процессора
Следующий миф объяснить сложнее. Дело в том, что программы работают совсем не так, как представляется пользователям ПК. Работа софта с ядрами процессора и многопроцессорными системами - тема книг, не представляющих интереса для непрограммистов.
Поэтому люди просто смотрят потребление ресурсов ЦП в Диспетчере задач и занимаются бессмысленными попытками что-то оптимизировать. К примеру, пытаются регулировать параметры вроде предыдущей настройки, чтобы их любимая программа загружала на 100% все ядра процессора.
Это сродни использованию чехлов для телефонов, защищающих тело от вредной радиации. Знающие физику люди только покрутят пальцем у виска, в то время как остальные скупают чехлы пачками и рекомендуют их знакомым.
Но вернёмся к работе программ на многоядерных процессорах. На границе знания и незнания возникла бредовая идея использовать программу CPU Control для назначения играм всех ядер.
Совет встречался ещё десять лет назад. Например, при обсуждении игры Gothic 3:
На скриншоте выше пользователь s063r
посчитал, что игра не задействует второе ядро процессора. Shifroval
ответил, что нужно использовать программу CPU Control.
Что же это за чудо-зверь такой
, который залезает в программный код и заставляет программу изменить логику своей работы? Вот как утилита выглядит:
Увидев это чудо-юдо, я схватился за голову: как же глупо
поступили разработчики, сделав так, что при запуске все запущенные программы автоматически «назначаются» на первое ядро процессора!
Смотрите столбец «CPU» при запуске CPU Control:
Единица и три нуля означают, что программе назначено только первое по счету ядро процессора. И это происходит после
запуска самой
утилитой. То, что до
запуска ситуация была иной, с помощью CPU Control увидеть нельзя. Можно, конечно, до всех манипуляций запустить Диспетчер задач и глянуть назначения процессов на ядра, но кто в наше время мыслит критически и проверяет работу программ?
Ложный совет звучит так:
программы работают только на одном ядре, в чем можно убедиться, запустив CPU Control. И там можно назначить программе использование всех ядер процессора.
Этот как если выстрелить себе в ногу и лечиться наложением повязок. А может, нужно не стрелять вовсе и всё будет хорошо?
Миф очень живуч, потому что иногда
он помогает: если запущенный софт сильно нагружает процессор (чаще всего это вирусы), назначение только на одно ядро ограничивает доступные зловреду ресурсы и дает возможность остальным ядрам процессора работать на благо игры. Но это лечение симптома, не решение проблемы.
На самом деле до запуска CPU Control ограничений на одно ядро не было. Программа ставит его при запуске. Установка отдельной программы на все ядра возвращает настройку по умолчанию. Только и всего.
Как нужно настраивать на самом деле?
А никак. Просите авторов программы/игры переписать своё творение под многоядерные системы. Не весь софт умеет задействовать все ядра процессора, на это нельзя повлиять извне. Лучше займитесь
Для тех пользователей, у которых есть многоядерные процессоры, может оказаться полезным функция, которая позволяет программе использовать только одно определенное ядро. Большинство процессоров сейчас обладают несколькими ядрами и, как думают пользователи, должны работать намного быстрее, чем одноядерные. Во многом скорость обработки информации зависит от частоты процессора
, однако, если грамотно задать распределение нагрузки на несколько ядер, то можно сильно увеличить скорость обработки информации.
Как узнать количество ядер
Есть несколько способов узнать количество ядер процессора. Для начала, можно кликнуть по компьютеру правой кнопкой мыши и выбрать его свойства. После этого следует перейти в диспетчер устройств
, и выбрать раздел процессоры.
Этот пункт стоит развернуть, сколько наименований окажется под ним, столько ядер и есть. Также можно зайти в диспетчер задач
(Ctrl+Shift+Esc) и перейти на вкладку быстродействия, там будет отображена нагрузка на каждое ядро, а по количеству окон можно определить количество ядер.
Установка соответствия ядер в Windows
Данные действия можно провести не только для десятки, но я для ранних систем, начиная с седьмой версии. В любом случае, для начала потребуется открыть диспетчер задач
, в 7 нужно перейти на вкладку Процессов, а в других версиях на вкладку Подробности.
Теперь следует кликнуть правой кнопкой по той утилите, для которой будет задаваться ядро, и выбрать пункт . После этого выскочит окно, в котором пользователь сможет задать то, каким именно ядром будет пользоваться приложение, например можно включить только второе ядро.
Теперь утилита сможет работать на одном ядре, проблема в том, что после перезагрузки все настройки будут сброшены.
Как включить все ядра
В Windows 7, 8, 10 по умолчанию всегда задействованы все ядра. Только при загрузке ОС, может использоваться не вся мощность процессора. Чтобы это исправить следует:
Внимание!
Максимум памяти должен устанавливаться из расчета – минимум 1024 МБ оперативной памяти на каждое ядро, иначе это скажется на работоспособности компьютера.
Запуск программы с привязкой к ядру
Для того, чтобы сразу после запуска приложение использовало определенное ядро, потребуется запустить его с нужными параметрами. Для этого, можно зайти в командную строку
(Win+R и ввести cmd) и указать соответствующие параметры, например c:\windows\system32\cmd.exe /C start /affinity 1 software.exe
. Таким образом, будет запущено приложение software.exe на 0 ядре. Здесь указывается номер ядра+1.
Эту же команду, пользователь может записать в ярлык приложения
, что позволит запускать утилиту без дополнительных действий. Для этих же действий можно использовать сторонние приложения.
Приложение Bill2’s Process Manager
Весьма интересная утилита, которая поможет пользователю лучше контролировать ресурсы на своем компьютере. С помощью можно будет задавать приоритеты
выполнения для каждой из утилит на компьютере, что позволит оптимально расходовать ресурсы.
Здесь же можно ограничить программы
по потребляемым ресурсам. Если есть утилиты, которые отнимают много памяти, то можно наложить на них ограничение и выделить только определенное количество на их выполнение. Эта же программа позволит создать правила не только для активных программ, но и для свернутых, что позволит еще лучше оптимизировать работу. Также есть возможность настройки того, что делать в случае, если программа зависнет. Можно подождать некоторое время, а можно и перезапустить его.
Программа Mz CPU Accelerator
Неплохая программа, которая автоматически добавляет наивысший приоритете
тому окну, которым пользуются в данный момент. Это позволяет сделать так, чтобы текущий процесс не тормозился и выполнялся без задержек, так что пользователю будет удобно работать, а на остальные программы ресурсы будут выделяться по остаточному принципу.
В разделе Exlusions
можно задать исключения для некоторых процессов, их приоритеты программа не будет менять ни в коем случае. А вот в CPU Manager
, как раз и находится интересующая пользователя функция. С помощью можно будет распределить программы по ядрам, что сможет повысить эффективность работы, а также может оказаться гораздо более удобным для пользователей, у которых часто выполняется множество программ в фоновом режиме.
Утилита CPU-Control
Установка стандартная и можно ничего не менять. После установки следует сразу же зайти в options
и выбрать русский язык, а также отметить галочкой пункты минимизировать, автоматический запуск, а также ядра для устройств, у которых больше 4 ядер.
После этого можно переходить к основному окну настройки, в котором можно будет сделать несколько профилей для распределения процессов по ядрам, их можно будет менять, в зависимости от того, какой сегодня больше нужен.
А можно включить автоматический режим
и оставить все на усмотрение программе.
Программа не видит процессор
В некоторых случаях в списке могут отсутствовать процессы. Это значит, что утилита не совместима
с типом процессора, установленным у пользователя. В этом случае лучше всего будет воспользоваться одной из альтернативных программ.