У меня есть программа, которую я должен выполнять 100 раз с разными аргументами каждый раз, используя мои 10 процессоров.Команда queue multiple system() с использованием C++
Так что в основном я хочу сделать несколько системных вызовов, чтобы закончить мой список. Однако, если я просто поставлю system() в цикле for, он будет использовать только один процессор, и он будет идти один за другим. Как я могу открыть несколько терминалов, которые могут запускать разные программы одновременно, и в конце отчета, который они закончили, позволяя мне назначить этому конкретному процессору новую задачу из пула?
Спасибо заранее
Возможно, вы могли бы сделать один системный вызов в GNU параллельно, попросив его скоординировать параллельную работу? См. [Справочная страница здесь] (http://www.gnu.org/software/parallel/man.html). –
Вы хотите, чтобы очереди процессов, * и * запускали их одновременно? – juanchopanza
Мои задания больше, чем мои процессоры, поэтому я хочу запускать столько же, сколько мои работы с процессорами параллельно, оставаясь только в пуле остальных. – user4168715