- Что такое сходство процессоров и как установить сходство процессоров в Windows 10
- Что такое сходство процессоров в Windows 10
- Как установить сходство процессов в Windows 10
- Диспетчер задач задать соответствие что это?
- Как изменить приоритет процесса и как его сохранить (высокий, низкий)
- Работа с приоритетами.
- Как я могу постоянно устанавливать сходство процесса?
- 3 ответов
Что такое сходство процессоров и как установить сходство процессоров в Windows 10
Когда программа работает в Windows 10, она использует процессор. Большинство компьютеров имеют многоядерный процессор. Любая запускаемая вами программа использует все ядра ЦП. Проще говоря, ОС Windows решает, как использовать ядра для любой программы. Тем не менее, можно настроить программы на использование только одного или двух ядер вместо всех ядер. В этом посте мы объясним, что такое Processor Affinity и как установить Processor Affinity для любой программы в Windows 10.
Что такое сходство процессоров в Windows 10
Сродство к процессору , также называемое закрепление процессора , позволяет пользователю назначить процесс для использования только нескольких ядер. Технически вы можете привязывать и отсоединять процесс или поток к ЦП или ЦП, которые здесь можно назвать ядрами ЦП. Но реальный вопрос заключается в том, почему такая опция доступна, и есть ли преимущество настройки привязки процессора.
Процессор Affinity полезен, если у вас тяжелая программа, такая как рендеринг видео. Когда вы выделяете ядро для программы редактирования видео, оно гарантирует, что ядро процессора всегда выделено для выполнения задачи. Это повышает производительность, поскольку уменьшает проблему с кешем, поскольку нет задержки с выделенным ядром.
Однако это также означает, что программа не может использовать любое другое ядро, которое влияет на балансировку нагрузки.
Обычно Windows 10 уравновешивает нагрузку на процессор, распределяя несколько потоков по нескольким ядрам процессора. Поэтому, если вы не уверены в том, что делаете, мы настоятельно рекомендуем вам запускать программы с настройками по умолчанию.
Как установить сходство процессов в Windows 10
В Windows 10 пользователь с правами администратора может указать, какие ядра процесс может использовать при каждом запуске. Вот как это сделать.
- Щелкните правой кнопкой мыши на панели задач.
- Нажмите на опцию диспетчера задач.
- В диспетчере задач перейдите на вкладку Подробности. Он покажет список запущенных программ.
- Щелкните правой кнопкой мыши на программе, для которой вы хотите установить сходство процессов.
- Выберите Установить сходство в меню.
- Откроется окно привязки процессора.
- Выберите, какое ядро может использовать процесс, и отмените выбор остальных.
- Нажмите OK, чтобы завершить задачу.
После этого ваша программа будет использовать не только это ядро процессора.
Я бы порекомендовал вам следить за тем, как работает программа, если она замедляется, лучше всего назначить больше ядер для использования всех ядер.
Процессор Affinity в Windows 10 должен использоваться профессиональными пользователями. Измените его, только если вы знаете, что и для чего вы делаете.
Диспетчер задач задать соответствие что это?
Задать соответствие в диспетчере задач — указать сколько ядер дать на работу программе/процессу. Например у вас процессор 8-ми ядерный. И есть программа какая-то, которой вы хотите выделить 2 ядра на работу, чтобы она могла использовать максимум 2 ядра. И для этого нужно пойти в диспетчер, найти процесс программы и выставить 2 ядра через пункт соответствия. В Windows 10 эта настройка уже называется иначе — Задать сходство.
Вообще как бы функция хорошая, если бы не одно но. В процессорах Intel, как и у AMD, есть не только ядра, но и потоки. Поток как бы слабее ядра. Но Windows определяет потоки как ядра и разницы между ними не видит. Я не знаю, но может быть как-то можно определить в диспетчере где ядро, а где поток, но.. я лично не знаю как это сделать.
Так, ладно, пошли в диспетчер. Вот например есть программа AnVir Task Manager и я хочу разрешить этой программе использовать только 1 ядро, так как всего у меня в процессоре — 2 (кстати у меня Pentium G3220). Нажимаю правой кнопкой по AnVir Task Manager и выбираю Подробно:
Открылась вкладка Подробности, на которой выделен процесс AnVir.exe, это и есть процесс программы. Нажимаю по нему правой кнопкой и выбираю пункт Задать сходство:
Появится окошко Соответствие процессоров:
Теперь смотрите, тут стоят галочка. Каждый пункт — это ядро (ну или поток). В моем случае чтобы программа могла использовать только одно ядро, то мне нужно оставить только одну галочку, я сниму с ЦП 0 и оставлю только ЦП 1:
Нажали ОК и все — теперь программа работает на одном ядре. В работе программы вы можете ничего не заметить, если программа немного использует ресурсов или если у вас мощный топовый процессор с высокой частотой. Но вообще полезно — например могут быть программы, которые ну очень много хотят ресурсов, и таким способом можно им утихомирить аппетит так бы сказать.
Вот и все ребята. Надеюсь что информация кому-то пригодилась. Удачи и до новых встреч!
Как изменить приоритет процесса и как его сохранить (высокий, низкий)
Доброго времени!
Первый и самый главный вопрос, с которого следовало бы начать данную статью: зачем вообще менять приоритет и стоит ли это делать. 👀
Представьте, вот вы запускаете тяжелую игру (или редактор видео, или еще что-то. ) далеко на не самом мощном компьютере. Причем, помимо вашей игры в Windows (обычно) запущено достаточно большое количество процессов, приложений. И в определенное время они могут «забирать» часть ресурсов себе — в результате игра время от времени притормаживает.
Смена приоритета процесса же позволяет указать Windows, что запущенная игра — это первоочередная задача, которой нужно выделить все основные ресурсы (а все остальное может подождать. ) . Благодаря заданию приоритетов для самых «главных» для вас программ — можно снизить количество притормаживаний и лагов, ускорить их работу.
Т.е. тема достаточно интересна, и может быть очень полезна как для любителей игр, так и для работы с видео, фото и пр. ресурсоемкими задачами.
Теперь ближе к сути.
Работа с приоритетами.
У каждой запускаемой программы или процесса в Windows есть приоритет. Обычно, ОС Windows «сама знает» кому и что выделять, и делает это автоматически (без участия пользователя). Вообще разнообразие приоритетов не такое уж и большое:
- Idle (низкий) — программы, выполнение которых может и подождать (при выставлении данного приоритета некоторый софт может тормозить) ;
- Below Normal (ниже среднего);
- Normal (средний) — большинство программ запускаются со средним приоритетом;
- Above Normal (выше среднего);
- High (высокий);
- Real Time (реального времени) — самый высокий приоритет. При его выставлении — в первую очередь будет выполняться именно эта программа.
Отмечу, что с приоритетами High и Real Time нужно быть крайне осторожными: в некоторых случаях при выставлении оных — компьютер может зависнуть или Windows завершит работу с ошибкой.
Еще один совет : нет необходимости выставлять приоритет каждой запускаемой программе (с этим Windows хорошо справляется в авто-режиме). Как правило, есть смысл указать приоритет для 2÷5 часто-используемых приложений, которые для вас наиболее важны.
Изменение приоритета
И так, чтобы поменять приоритет работающей программы (процесса) в Windows — необходимо воспользоваться диспетчером задач . Для того, чтобы его вызвать — нажмите сочетание кнопок Ctrl+Shift+Esc (либо Ctrl+Alt+Del).
Для вызова диспетчера задач — нажмите Ctrl+Shift+Esc
Далее откройте вкладку «Подробности» (это для Windows 10, для Windows 7 — «Процессы») и найдите в списке нужный процесс ( прим. : название программы совпадает с названием процесса) .
После, на нужном процессе кликните правой кнопкой мышки: в появившемся меню перейдите во вкладку «Задать приоритет» и укажите нужный вам.
Задание приоритета для запущенного процесса
Собственно, на этом всё! Теперь запущенная программа будет работать с новым приоритетом. При выставлении приоритета реального времени — возможно, компьютер начнет тормозить.
Сохранение приоритета с помощью настроек реестра
После перезагрузки компьютера (или при перезапуске программы) — установленный вами приоритет сбрасывается (т.е. Windows снова задает его автоматически). И это не очень удобно.
Но с помощью настроек реестра можно «сохранить» указанный вами приоритет (т.е. Windows будет «знать», что эту программу нужно запустить с таким-то приоритетом).
Как это сделать:
- сначала необходимо открыть редактор реестра (нажмите Win+R , и введите команду regedit , нажмите OK). У кого не открылся редактор, привожу в помощь одну свою старую заметку: https://ocomp.info/sposoby-otkryit-redaktor-reestra.html
regedit — открыть редактор реестра
далее необходимо открыть следующую ветку реестра (можно просто ее скопировать и вставить в редактор): HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\
Какую ветку в реестре нужно открыть
затем нужно узнать точное название исполняемого файла программы (игры). Для этого просто щелкните правой кнопкой мышки по ее ярлыку и перейдите в свойства . После, в разделе «Ярлык» — в строке «Объект» скопируйте название исполняемого файла;
Узнаем название исполняемого файла игры / Кликабельно
теперь в открытой ветке реестра создайте раздел (папку) с именем исполняемого файла программы (которое мы узнали в предыдущем шаге) . В моем случае — это «civilization4.exe» (без кавычек и с маленькими буквами!) ;
Создание раздела / Реестр
далее в ветке с названием игры (программы) создайте еще один раздел (папку) и назовите ее «PerfOptions» , см. пример ниже;
последний штрих: в разделе «PerfOptions» создайте параметр DWORD (32), присвойте ему имя » CpuPriorityClass » и задайте значение исходя из требований, в моем случае это «3» ( прим.: 1 — низкий приоритет; 5 — ниже среднего; 8 — средний; 6 — выше среднего; 3 — высокий) .
Создать параметр DWORD32
в конечном итоге получится так, как показано на скрине ниже.
Что получилось в итоге!
Для Windows 7 есть спец. программа Prio, позволяющая задавать (и сохранять) приоритеты для практически любых программ и процессов. Правда, в Windows 10 она не работает (поэтому выше я и привел универсальный рабочий способ для всех современных ОС Windows).
Запуск приложения с нужным приоритетом (через командную строку)
Есть еще один вариант задания приоритета приложению — речь идет о командной строке (разумеется, если создать «BAT» файл — то запуская его, можно всегда иметь программу с нужным приоритетом) .
Как это сделать:
- создать на рабочем столе (например) обычный текстовый файл;
Создать текстовый документ
Вставка строки в блокнот и сохранение
после чего сохраните текстовый файл, закройте его и переименуйте расширение: с «TXT» на «BAT» (или «CMD»). Если у вас не отображается расширение файла, ознакомьтесь вот с этой заметкой: https://ocomp.info/kak-uvidet-skryityie-faylyi-i-papki.html
Изменяем расширение блокнота с TXT на CMD
Дополнения по теме будут весьма кстати.
Как я могу постоянно устанавливать сходство процесса?
У меня есть игра, которая имеет проблемы с использованием процессора, так что одно из исправлений, чтобы отключить одно ядро из четырехъядерного процессора. Поскольку каждый раз, когда я запускаю игру, мне приходится вручную входить в Диспетчер задач и вручную вводить affinity, что отстой, так как игра недавно выпущена, но склонна к частым сбоям.
есть не программное решение?
Я посмотрел некоторые решения в интернете, и они, кажется, ориентированы только на Windows 7. Есть ли решение для Пользователи Windows 8.1, как я?
3 ответов
можно создать ярлык для назначения сходства.
Y является шестнадцатеричным и является битовой маской:
если под «не программным обеспечением» вы имеете в виду не требующее дополнительного программного обеспечения, есть. Вы можете запустить программу из командного сценария и использовать affinity switch «Start /AFFINITY 20 process.exe»
/AFFINITY 20 относится к 20 как шестнадцатеричное число, с двоичным эквивалентом 100000 , который устанавливает сродство к ядру 5 из 0-5 на процессоре 6 ядер. Подобная шестнадцатеричная маска позволит Вам отключить определенное ядро, например E , который запускает процесс только на ядрах 1-3 из 0-3 или 0-5.
для тех, кто ищет ответы на этот вопрос и не находит, решение, которое я нашел, было использовать приложение под названием WinAFC (или AffinityChanger). Это частичный графический интерфейс, частичное приложение командной строки, которая позволяет указать профили для некоторых исполняемых файлов, и будет опрашивать список процессов для них. Если он находит совпадающие процессы, он изменит сходство этих процессов в соответствии с настройками в загруженном профиле.
для моих целей, я создал профиль, который выглядел вот так:
этот профиль устанавливает любые преобразования.exe процесс использовать первые две пары ядра процессора (CPU0, CPU1, CPU2 и CPU3), опрос каждую секунду. TestMode это переключатель, который позволяет вам видеть, работает ли ваш профиль, фактически не устанавливая сходства.