есть VirtualBox Вы нем можно выставить, сколько давать ядер виртуадьной машине, но нельзя выставить какие именно ядра давать, а какие нет.
и получается, что виртуальная машина в разные моменты времени выполняется на разных ядрах.
это, в свою очередь, влечет за собой то, что рассчетная загрузка «размазывается» равномерно по всем ядрам
и это отражается на работе cool n quiet следующим образом: если в виртуальной машине запущен, например, winrar, то он загружает 100% ядра виртуальной машины, Линукс в разные моменты времени предоставляет разные ядра. Допустим, у нас 6тиядерник. получается, что винрар грузит каждое ядро на 100/6 ~ 17% а есть такая настройка up_threshold, которая указывает до скольки % нужно нагрузить ядро, чтобы множитель частоты повысился. Но как бы эта настройка не была настроена, оно ведет себя не логично — от этого винрара либо все 6 ядер прыгнут с х4 до х15 (с 800 мгц до 3000) (и это, ясное дело отразится на энергопотреблении), либо все останутся на 800мгц, и тогда винрар паковать будет в 3 раза дольше.
нужно, чтобы виртуальной машине выделялось одно конкретное ядро, и никакое другое. В идеале хочется, чтобы наоборот тоже работало - чтоб в это ядро другие процессы не лезли. Как такое сделать, и если да, то что гуглить?
приемлемое решение — в системе куча процессов, каждый процесс выполняется только на ядре под номером (pid % core_count). Или как-то так. Такое как-то делается?