2

Я довольно новичок в OS X, в Windows я смог назначить ядра для работающих программ.

Я занимался поиском, но, похоже, ничего не нашел по этому поводу.

Был бы признателен за все; или инструкции здесь или ссылки на статьи о моей проблеме.

1 ответ1

0

На уровне пользователя нет инструментов сродства процессора. Проверьте этот вопрос. https://apple.stackexchange.com/questions/166870/processor-affinity-on-mac

Разрешите мне немного по касательной. Возможен обходной путь, с помощью которого вы сможете удовлетворить свои требования к производительности.

1) Это всего лишь предположение. Допустим, вы хотите назначить ядро (я) приложению для обработки видео, потому что вы хотите, чтобы непрерывная (минимальная) обработка выполнялась при использовании компьютера для других задач. Используя утилиту bash "nice", вы можете запустить приложение с более высоким приоритетом, чем у других приложений. Теперь, когда я не буду копаться в поиске многоядерных алгоритмов планирования, которые использует ОС, это может улучшить производительность вашего приложения или не дать вам требуемый баланс обработки. Он по-прежнему будет использовать все n ядер, но он получит больше времени, чем другие процессы.

2) Используйте API для создания "оболочки" приложения, которое использует Affinity API. Все, что вам нужно сделать, это разорвать вызов вашего приложения, потому что в соответствии с этим документом API все разветвленные дочерние элементы приложения оболочки будут совместно использовать свое пространство имен сходства, поэтому, если вы используете процессор 1, то любое приложение, вызываемое из оболочки, будет запустить на процессоре 1.

1) приятно - https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/nice.1.html

2) Affinity API - https://developer.apple.com/library/mac/releasenotes/Performance/RN-AffinityAPI/index.html#//apple_ref/doc/uid/TP40006635

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .