Диспетчер задач задать соответствие что это?

Задать соответствие в диспетчере задач — указать сколько ядер дать на работу программе/процессу. Например у вас процессор 8-ми ядерный. И есть программа какая-то, которой вы хотите выделить 2 ядра на работу, чтобы она могла использовать максимум 2 ядра. И для этого нужно пойти в диспетчер, найти процесс программы и выставить 2 ядра через пункт соответствия. В Windows 10 эта настройка уже называется иначе — Задать сходство.
Вообще как бы функция хорошая, если бы не одно но. В процессорах Intel, как и у AMD, есть не только ядра, но и потоки. Поток как бы слабее ядра. Но Windows определяет потоки как ядра и разницы между ними не видит. Я не знаю, но может быть как-то можно определить в диспетчере где ядро, а где поток, но.. я лично не знаю как это сделать.
Так, ладно, пошли в диспетчер. Вот например есть программа AnVir Task Manager и я хочу разрешить этой программе использовать только 1 ядро, так как всего у меня в процессоре — 2 (кстати у меня Pentium G3220). Нажимаю правой кнопкой по AnVir Task Manager и выбираю Подробно:

Открылась вкладка Подробности, на которой выделен процесс AnVir.exe, это и есть процесс программы. Нажимаю по нему правой кнопкой и выбираю пункт Задать сходство:

Появится окошко Соответствие процессоров:

Теперь смотрите, тут стоят галочка. Каждый пункт — это ядро (ну или поток). В моем случае чтобы программа могла использовать только одно ядро, то мне нужно оставить только одну галочку, я сниму с ЦП 0 и оставлю только ЦП 1:

Нажали ОК и все — теперь программа работает на одном ядре. В работе программы вы можете ничего не заметить, если программа немного использует ресурсов или если у вас мощный топовый процессор с высокой частотой. Но вообще полезно — например могут быть программы, которые ну очень много хотят ресурсов, и таким способом можно им утихомирить аппетит так бы сказать.
Вот и все ребята. Надеюсь что информация кому-то пригодилась. Удачи и до новых встреч!
Как сделать, чтобы программа использовала для работы определенное ядро процессора
Назначение логических процессоров определенной программе в Windows 7 и Windows 8
Указанные функции работают в Windows 7, Windows 8 и Windows Vista. О последней я не говорю, так как ее мало кто использует у нас в стране.
Запустите Диспетчер Задач Windows и:
- В Windows 7 откройте вкладку «Процессы»
- В Windows 8 откройте «Подробности»

Кликните правой клавишей мыши по интересующему Вас процессу и выберите в контекстном меню пункт «Задать сходство». Появится окно «Соответствие процессоров», в котором Вы можете указать, какими ядрами процессора (или, вернее, логическими процессорами) программе разрешено пользоваться.

Вот и все, теперь процесс использует только те логические процессоры, которые ему разрешили. Правда происходит это ровно до следующего его запуска.
Как запустить программу на определенном ядре процессора (логическом процессоре)
В Windows 8 и Windows 7 имеется также возможность запустить приложение так, чтобы сразу после запуска оно использовало определенные логические процессоры. Для того, чтобы сделать это, запуск приложения нужно осуществлять с указанием соответствия в параметрах. Например:
c:\windows\system32\cmd.exe /C start /affinity 1 software.exe
В этом примере будет запущено приложение software.exe с использованием 0-го (ЦП 0) логического процессора. Т.е. цифра после affinity указывает номер логического процессора + 1. Эту же команду Вы можете записать в ярлык приложения, чтобы оно всегда запускалось с использованием определенного логического процессора. К сожалению, мне не удалось найти информации, как передать параметр таким образом, чтобы приложение использовало не один логический процессор, а сразу несколько.
UPD: нашел как запустить приложение на нескольких логических процессорах с помощью параметра affinity. Указываем маску в шестнадцатеричном формате, например требуется использовать процессоры 1, 3, 5, 7, соответственно, это будет 10101010 или 0xAA, передаем в виде /affinity 0xAA.

А вдруг и это будет интересно:
- Лучшие бесплатные программы для Windows
- Как скачать msvcr100.dll x64 и x86 для Windows 11/10/8.1/7 и исправить ошибку при запуске игр и программ
- Загрузка с флешки в БИОС и UEFI
- Как проверить оперативную память компьютера или ноутбука
- Как подключить ноутбук к телевизору
- Как отключить Secure Boot
- Windows 11
- Windows 10
- Android
- Загрузочная флешка
- Лечение вирусов
- Восстановление данных
- Установка с флешки
- Настройка роутера
- Всё про Windows
- В контакте
- Одноклассники
-
frenor 04.04.2015 в 01:37
- Dmitry 05.04.2015 в 12:51
Вадим Стеркин
Вы тут: Главная → Толковые вопросы и ответы → Как задать постоянное сходство процесса (affinity) ядрам процессора?
Как задать постоянное сходство процесса (affinity) ядрам процессора?
Узнал о возможности задавать соответствие процессам, на нагрузку одного или нескольких ядер процессора. А вот чтобы этот параметр закрепить за *.exe файлом, такого нигде нет (за исключением использования сторонней программы, но это не вариант). В итоге приходится постоянно при загрузке задавать соответствие этому процессу. Может есть способ через ярлык или реестр указать, сколько ядер разрешено использовать тому или иному процессу?
- Nostra спросил(а) 8 лет назад
- последняя редакция 8 лет назад
- Войдите для отправки комментариев
- Новые вверху
- Старые вверху
- Случайным образом
- Недавно активные
Лучший ответ
Windows вполне эффективно управляет сходством процесса, поэтому менять это следует только в том случае, если в этом есть насущная необходимость, т.е. вы четко понимаете, что вы делаете и что это дает.
Для формирования ярлыка нужно знать шестнадцатеричное число, определяющее комбинацию желаемых процессоров.
1. Определите двоичное число
В диспетчере задач щелкните правой кнопкой мыши на процессе → Задать сходство.
Появится диалог со списком ЦП. Допустим, их 8 — от ЦП0 до ЦП7.

Выбранные ЦП обозначаются двоичным числом, в котором столько цифр, сколько у вас ЦП. Выбранные ЦП обозначаются единицами, не выбранные — нулями. Самая правая цифра — ЦП0, самая левая — ЦП7.
При стандартном запуске (картинка выше) выбраны все ЦП, поэтому число состоит из восьми единиц: 11111111. Если вы хотите только ЦП1 и ЦП4, число будет 00010010.

2. Конвертируйте двоичное число в шестнадцатеричное
- Откройте калькулятор и переведите его в режим программирования.
- Нажмите BIN и вставьте скопированное число.
Соответствующее шестнадцатеричное число — HEX. В данном случае — 12.

3. Сформируйте команду для ярлыка
Используйте команду start, чтобы указать шестнадцатеричное число в качестве значения для ключа /affinity
cmd.exe /c start "Notepad ++" /affinity 12 "C:\Program Files (x86)\Notepad++\notepad++.exe"
В Windows XP команда start не поддерживает ключ /affinity. В этом случае надо использовать утилиту psexec с ключом /a из набора Systinternals PSTools.
psexec /a 12 "C:\Program Files (x86)\Notepad++\notepad++.exe"
4. Создайте ярлык
- Щелкните правой кнопкой мыши на рабочем столе и выберите Создать → Ярлык.
- Вставьте сформированную команду.
Дополнительная информация
- Vadim Sterkin ответил(а) 8 лет назад
- последняя редакция 8 лет назад
Подскажите, эта команда подходит для Windows XP?(у меня XP) Получилось сформировать вот такую команду: cmd.exe /c start «XR_3DA» /affinity 3 «D:\Games\S.T.A.L.K.E.R\bin\XR_3DA.exe» (команда ->2 ядра->путь) В ярлыке получилось: %windir%\system32\cmd.exe /c start «XR_3DA» /affinity 3 «D:\Games\S.T.A.L.K.E.R\bin\XR_3DA.exe» Но ярлык не работает, подскажите, пожалуйста, что не так?
- Vadim Sterkin
- 8 лет назад
Я добавил решение для Windows XP. Рекомендую не пользоваться устаревшими неподдерживаемыми системами и всегда указывать ОС, задавая вопрос.
Спасибо, получилось, но как-то интересно: при запуске ярлыка psexec /a 3 (или «-a 1,2») «D:\Games\S.T.A.L.K.E.R\bin\XR_3DA.exe» (%windir%\system32\psexec.exe /a 3 «D:\Games\S.T.A.L.K.E.R\bin\XR_3DA.exe» -nointro) загружает второе ядро, только при 100% загрузке первого. А если запустить приложение родным ярлыком и установить affinity из диспетчера, то нагрузка распределяется на 1ядро на ~70%-80%, а на 2ядро на ~20%-30% — странно. Каким же образом система задаёт параметр affinity, так, что он более адекватно распределяет нагрузку и где этот параметр временно меняется до завершения приложения. Может у, Вас, есть какие-нибудь идеи, по этому поводу?
- Vadim Sterkin
- 8 лет назад
Не интересовался. Курите MSDN или Windows Internals Руссиновича.
- Войдите для отправки комментариев
Как «Задать соответствие» в диспетчере задач? +10 гарантирую 🙂
На вкладке Процессы щелкните правой кнопкой процесс, которому нужно назначить обработчика, выберите команду Задать соответствие, а затем выберите один или несколько обработчиков.
Команда Задать соответствие доступна только в многопроцессорных компьютерах.
Применение команды Задать соответствие ограничивает выполнение программы или процесса выбранным обработчиком и может снизить общее быстродействие системы.
Остальные ответы
Процессы — правый мыш — задать соответствие.
Заходишь в процессы щёлкаешь по нужному правой кнопкой и выбираешь задать соответствие
Три ответа и все правильные. Почему у тебя не так, как у всех? Система виновата. Больше вариантов нет. Обнови Service Pack. А еще лучше снеси ее к нехорошей бабушке и поставь поновее с нормальной сборкой. Хотя, если у тебя процессор одноядерный, тебе и это не поможет.