GNU параллель и управление ресурсами

Я хотел бы использовать параллельную командную строку gnu в качестве простого механизма планирования.

в моем случае у меня есть N графических процессоров в системе, и я хотел бы эффективно поставить в очередь список заданий на эти графические процессоры.

в основном, у меня есть список входных данных, и я бы наивно запускал

parallel --jobs=4 ./my_script.sh ::: cat list_of_things.txt ::: 0 1 2 3

где ./my_script.sh принимает два аргумента: то, что я хочу обработать, и графический процессор, на котором я хочу это обработать.

я хочу, чтобы каждая вещь в списке просто запускалась на одном из графических процессоров (от 0 до 3).

однако в итоге это просто запускает каждую вещь 4 раза.


person yee379    schedule 13.07.2018    source источник


Ответы (1)


Попробуй это:

parallel --jobs=4 ./my_script.sh {%} {} :::: list_of_things.txt
person Ole Tange    schedule 21.11.2018