Estimate execution time for a specific Ansible module across a batch of hosts.
Different Ansible modules have very different per-host cost profiles: `command`/`shell` execute directly and return quickly, `copy` and `template` must checksum and transfer file content, `apt`/`yum` cost depends heavily on whether the package cache is warm, and `git` involves a full network clone or fetch. This calculator applies representative per-host timings for common modules, then batches them by forks the same way any other task is batched.
total_module_time_sec = invocations × avg_module_duration_sec
Package manager modules can be nearly instant if the desired package is already installed (a no-op check), or take many seconds if it needs to update the cache and download/install — the default value here assumes a mixed, realistic average.
They're representative starting points, not measurements of your specific environment — network latency, file sizes, package mirror speed and target host performance all shift the real numbers, so use the override field with your own measured timings when possible.
Unlike most modules that operate on local state or make a single API call, `git` typically has to negotiate a network transfer proportional to repository size, which dominates its execution time compared to simpler state-check modules.
No — this models synchronous execution. Tasks run with `async` and `poll: 0` return immediately and don't block the batch, which would need a different model (fire-and-forget plus a separate job-status check).