Каков рекомендуемый подход для написания make-файла с целевыми рецептами, которые порождают несколько процессов? Пожалуйста, рассмотрите этот пример.
У меня есть мой Makefile следующим образом:
all: run1 run2 run3
run%:
<invoke script that spawns multiple processes>
Учтите, что у меня система с 4 ядрами. Учтите, что рецепт для run1 создает 1 процесс, run2 создает 2 процесса, а run3 создает 3 процесса. Существуют процессы с интенсивным вводом-выводом, а некоторые - с интенсивным использованием процессора Также я бы хотел включить параллелизм с помощью make.
Каков рекомендуемый подход для определения количества заданий, используемых для файла make? Если я использую 4, один из процессов может быть истощен процессором. Если я использую меньшее количество заданий, я могу не использовать свой процессор эффективно.
Есть ли опция в Makefile для обработки целей, которые порождают несколько процессов? Есть ли в make опция, которая предлагает процессу make рассматривать цель как 2 задания, а не как 1?