Установка соответствия для данного процесса с помощью следующего отлично работает

PowerShell "get-process Notepad | %% { $_.ProcessorAffinity=1 }"

То, что я хотел бы сделать, это установить маску процессора по-разному для каждого экземпляра данного процесса, с которым сталкивается скрипт. То есть установите сходство экземпляров данного процесса в стиле «циклического перебора». Каждому экземпляру должно быть назначено «следующее доступное» ядро

 instance 1 -> 00000001 (first core)
 instance 2 -> 00000010 (second core)
 instance 3 -> 00000100
  etc..
 instance 8 -> 10000000 (8th core)
 instance 9 -> 00000001 (back to the first core again)
instance 10 -> 00000010 (second core again)

и так далее.

Обычно в каждый момент времени будет от 10 до 20 экземпляров процесса, и сценарий будет запускаться по расписанию каждые несколько минут, чтобы равномерно распределить нагрузку по всем ядрам.

Заранее большое спасибо за любые предложения.

0