=====================================
When executing same task on a lot of hosts with execution time that depends on each specific host in cluster you may consider to run these playbooks fully independently on each host, so you not obligated to wait last finishers on each task.
$ python async.py -i /path/to/hosts_file playbook.yml
or
$ python async.py -i "host1.domain.name,host2.domain.name,..." playbook.yml
max_workers = 10 -------> max threads
log = True -------> log mode
logdir = '.log' -------> log path