#windows #cpu
В Интернете довольно популярная тема - как ОТКЛЮЧИТЬ парковку ядер (решение через реестр обычно). А у меня стоит обратная задача: можно ли запарковать ядра ПРИНУДИТЕЛЬНО и без перезагрузки операционной системы? Update: Вот скачал программу и у меня при "игре" ползунками это вроде получилось, но как это сделать самому программно?
Ответы
Ответ 1
Из комментария пользователя @nick_n_a: Если ядер «не хватает», всё равно идёт программная эмуляция нитей. Но у процессора также есть аппаратная поддержка нитей — Task-шлюзы. Думаю вам нужно почитать спецификацию процессора. Простейшая реализация — у каждого Task-шлюза есть AnifyMask, если сбросить у всех масок один бит, то ядро, соответствующее этому биту использоваться не будет. А вот общая маска для всех Task скорее всего хранится в ядре Windows и доступна на уровне драйвера. Возможно это можно найти дизассемблированием ядра, или его недокументироваными функциями. Всё равно с уровня приложения вам управлять процессором никто не позволит.
Комментариев нет:
Отправить комментарий