Выбор ядра, используемого при запуске программы

Выбор ядра, используемого при запуске программы

Я работаю на сервере Fedora, работающем на Intel Xeon с 15 ядрами. Некоторые пользователи запускают симуляции, которые занимают четыре ядра, но другие, похоже, не используются. Есть ли способ запустить программу на свободных ядрах, а не ждать, пока освободится используемые ядра?

решение1

Я выяснил, что это была ошибка Matlab. Он не уважал мой процесс. Я запустил его снова после того, как были запущены другие симуляции, и теперь он работает на отдельном ядре. СпасибоСинетехЯ так или иначе узнал, что команда Linuxнабор задачпозволяет мне делать то, что мне нужно, в случае, если мне нужно сделать это вручную.

$ taskset
Usage: taskset [options] [mask | cpu-list] [pid|cmd [args...]]

Options:
 -p, --pid               operate on existing given pid
 -c, --cpu-list          display and specify cpus in list format
 -h, --help              display this help
 -V, --version           output version information

The default behavior is to run a new command:
    taskset 03 sshd -b 1024
You can retrieve the mask of an existing task:
    taskset -p 700
Or set it:
    taskset -p 03 700
List format uses a comma-separated list instead of a mask:
    taskset -pc 0,3,7-11 700
Ranges in list format can take a stride argument:
    e.g. 0-31:2 is equivalent to mask 0x55555555

For more information see taskset(1).

Связанный контент