-
Use o Paralelo GNU:
$ parallel -j16 ./task ::: {0..127}
-
Use Moreutils paralelo :
$ parallel -j16 ./task -- {0..127}
-
Use o Make:
$ make -j16 {0..127}
Makefile (não tenho certeza se o padrão ou o GNU Make específico):
.PHONY: $(MAKECMDGOALS) %: ./task $@
-
Escreva seu próprio:
#!/usr/bin/env bash inputs=( {0..127} ) nproc=16 njobs=0 for input in "${inputs[@]}"; do until (( njobs < nproc )); do wait -n; (( --njobs )) done ./task "$input"& (( ++njobs )) done while (( njobs )); do wait -n; (( --njobs )) done