Как я могу запустить команду и выбрать ядро ​​для использования?

У меня есть команда для запуска (в данном случае это скрипт php5), и я хотел бы знать, есть ли что-то для запуска этой команды и выбрать ядро ​​для запуска.

Что я хочу сделать, так это запустить 1 команду на каждое ядро, чтобы использовать несколько ядер моего сервера.

Любая идея? Или мне нужно переписать скрипт на других языках с поддержкой многоядерности и разработать основной элемент управления прямо в скрипте?

3 ответа

Решение

Команда для запуска или назначения конкретной команды для конкретного ядра taskset,

Вставьте его в скрипт запуска или используйте из командной строки, например:

taskset -c 0,5 command_name-c список одного или нескольких процессоров для выполнения команды; в этом случае ядро ​​0 и 5.

Вы также можете изменить базовое назначение запущенного процесса, указав PID с помощью taskset,

Но вы также можете посмотреть: Назначение процессов ядрам процессора

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

Что я хочу сделать, так это запустить 1 команду на каждое ядро, чтобы использовать несколько ядер моего сервера.

Многоядерный для начинающих: системный планировщик заботится об этом.

Экземпляры StartX, где X - это количество аппаратного обеспечения, которое у вас есть (ядра или реальные ядра x2 для Intel с гиперпоточностью).

Если ваша программа использует только одно ядро, то вы оптимизируете его, учитывая, что вы используете ОС, поддерживающую NUMA, в архитектуре NUMA.

Другие вопросы по тегам