Запуск приложения на выделенном ядре - PullRequest
0 голосов
/ 27 февраля 2020

У меня есть большое количество файлов симуляции.

Они должны быть выполнены и запущены в определенном c программном обеспечении. Я знаю, что могу использовать python, чтобы дать указание моему программному обеспечению запускать один указанный c файл.

Я хотел бы знать, могу ли я использовать python, заставляя мой компьютер выделять одно ядро ​​на симуляцию.

Например, предположим, что у меня есть 10 симуляций для запуска и 3 ядра. Я хочу что-то подобное

  • Запуск Simulation1 только на ядре 1

  • Запуск Simulation2 только на ядре 2

  • Запустить Simulation3 только на ядре 3

- дождаться завершения одной из симуляций -

...

- Simulation 2 закончено -

  • Запустите Simulation4 только на ядре 2

et c.

По сути, я вроде как хочу python поручить моей ОС связать указанное ядро ​​c с задачей. Знаете ли вы, если что-то возможно?

Большое спасибо

E

1 Ответ

0 голосов
/ 27 февраля 2020

Из python3 .8 документов:

os.sched_setaffinity (pid, mask) Ограничить процесс с PID PID (или текущий процесс, если ноль) для набора процессоров. маска - это итерация целых чисел, представляющих набор процессоров, для которых процесс должен быть ограничен.

В конце концов, планировщик ОС примет исполнительное решение о направлении каждого процесса.

...