У меня есть анализ, который можно распараллелить по разному количеству процессов.Ожидается, что процесс будет интенсивным как для ввода-вывода, так и для процессора (очень скоростное выравнивание ДНК с коротким чтением, если кому-то интересно).
Система, в которой работает этот сервер, - это 48-ядерный сервер Linux.Вопрос в том, как определить оптимальное количество процессов, чтобы общая пропускная способность была максимальной.В какой-то момент процессы предположительно станут связанными с вводом-выводом, так что добавление большего количества процессов не принесет никакой пользы и, возможно, пагубно.
Могу ли я узнать из стандартных инструментов мониторинга системы, когда эта точка достигнута?Позволит ли вывод top (или, может быть, другого инструмента) разграничить процесс ввода-вывода и процесс?Я подозреваю, что процесс, заблокированный на IO, может все еще показывать 100% -ую загрузку ЦП.