Переверните проблему с ног на голову; вместо того, чтобы выяснить, как ограничить приложение только для использования ядер n на машине с ядром m , выясните, как обеспечить доступность только ядер n к вашему заявлению. Вы могли бы написать очень простую программу, которая потребляет одно ядро, выполнив что-то вроде while (true);
и запустив m - n экземпляров этой программы, работающих с наивысшим приоритетом, таким образом гарантируя, что ваш код имеет только n доступных ядер.
В качестве альтернативы, если ваш BIOS или ОС позволяет отключить ядра процессора, это тоже работает. Я знаю, что инструменты CHUD на Mac OS X раньше делали это, но я не касался этих инструментов с эры G5, так что они могут больше не работать.