The abstraction behind this, the "Foon" fork manager is back. I couldn't reuse the forks between tasks, but it looks slightly more efficient now.
Testing/tweaks is welcome. Normally this would have been devel branch material but I got a bit excited by the initial results prior to discovering my theory required a bit more work :) On Fri, Feb 7, 2014 at 6:11 PM, Michael DeHaan <[email protected]> wrote: > This is reverted for now. The trick is we need to pass the current Runner > to the function in the fork. > > I'm going to investigate some options about how to do this though. > > > > > On Fri, Feb 7, 2014 at 5:42 PM, Michael DeHaan <[email protected]>wrote: > >> This currently doesn't allocate a new Runner between tasks. >> >> I am investigating. >> >> >> >> >> On Fri, Feb 7, 2014 at 5:06 PM, Michael DeHaan <[email protected]>wrote: >> >>> One of the previous aspects of Ansible was that if you were using a high >>> fork count (such as 100-400) there was a performance cost to allocating and >>> combining the forks. This cost was not trivial and is actually where >>> Ansible could spend most of it's CPU time. >>> >>> I just committed some code that pre-allocates the series of forks >>> ansible uses, so that in a playbook they are not allocated at every task >>> step. >>> >>> The result of this is playbooks should run blindingly faster now. >>> >>> I'd appreciate testing and bug reports in case we've broken something >>> subtle. >>> >>> In particular: >>> >>> * Control-C handling is different, and may not yet be perfect - want to >>> make sure we don't leave zombies around and do kill any outstanding ops >>> >>> * I haven't super-well-tested things with the prompts for host keys on >>> new hosts when host key checking is enabled. Should work like before. >>> >>> This should be included in 1.5 and is currently available on the devel >>> branch. >>> >>> Let me know how it works for you! >>> >>> Thanks! >>> >>> --Michael >>> >> >> > -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
