Not being a jerk, but what does parallel bring to the table that xargs doesn't?
find . -type f -name | xargs -I {} -n 1 -P 5 process_file {} find . -type f -name | xargs -I {} -n 1 -P 5 process_file {} parallel --progress --wd '.' -S '4/fourworkers@blehworker.org,8/eightworkers@eightworkers.org,2/:' "./complicated_command --param1={1} --param2={2} ::: $(some_shellcommand_to_generate_param1_values.sh) ::: $(some_shellcommand_to_generate_param2_values.sh)
It's very flexible, become my go-to for speeding up parallelizable work. Next step up would be Celery or Spark or something.