Ansible parallelism


I’ve been using Foreman to run Ansbile roles against hosts for a bit and in general it seems to work pretty well. The one issue I have is I feel like it takes longer than it should. As an example I have a long set of Ansible roles, running them on one host take about 4 minutes. However, if I expand that to run on 15 hosts then the job takes about 30 minutes. I’m wondering if there are any guides or things like that which go over how to best increase performance in this area. Ideally I would like to get to a place where I’m comfortable running Ansible roles on several hundred hosts probably about once an hour.