Как изменить приоритет логических ядер при SMT на Windows 11?

Имею ноутбук с процессором i5-11400H и Windows 11 22H2. Проблема в том, что когда запускаю многопоточные приложения, потоки всегда вначале назначаются на одни и те же физические ядра, а остальные не используются. Хуже все работает на двух потоках — они всегда назначаются на одно и тоже физическое ядро, в итоге производительность каждого из них в 1.5 раза ниже, чем когда я их вручную назначаю на разные физические ядра. Такая же проблема и при другом количестве потоков больше двух — производительность в среднем ниже до 25%. Я же хочу сделать так, чтобы потоки по умолчанию назначались на разные физические ядра, и только когда физических ядер начнёт не хватать, только тогда начинать назначать их на одинаковые ядра, используя SMT. При этом я не хочу отключать SMT полностью — мне нужен 30% прирост многопоточной производительности.
  • Вопрос задан
  • 391 просмотр
Решения вопроса 1
vitaliy2
@vitaliy2 Автор вопроса
1. Перейдите в Панель управления → Электропитание.
2. Нажмите "Создание схемы управления питанием".
3. Выберите за основу схему "Высокая производительность".
4. Скопируйте вручную все настройки из Вашей старой схемы (обычно "Сбалансированная") в новую схему, чтобы новая схема была максимально похожа на старую.
5. Установите созданную схему в качестве текущей.

Готово. Дело в том, что в схеме "Высокая производительность" присутствуют некоторые скрытые настройки, которые как раз и влияют на приоритет логических ядер. При использовании этой схемы приоритет будет отдаваться именно отдельным физическим ядрам.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы