On Thu, Jul 5, 2012 at 12:28 AM, DEGREMONT Aurelien
<aurelien.degrem...@cea.fr> wrote:
> Le 04/07/2012 19:29, Brice Figureau a écrit :
>
>> Fixing #2198 [1] would be a very good start, then parallelize
>> non-dependent sub-trees. In a word, that's not easy.
>
> I know that's would the *true* way to speed up puppet agent. But, as you
> said, I think this is far from trivial. But I do not enough of puppet
> internal to be sure about that.

It is a big win for people who have a slow package tool, like folks
using yum - there, there is a potentially multi-second cost to every
invocation of yum that is paid repeatedly at the moment.

Unfortunately, that change is neither necessary or sufficient to
address the second part:

It is not necessary, in that we could identify and run in parallel
independent subtrees today.

It is not sufficient, in that it addresses some-but-not-all of the
potential resource conflicts: many tools, including but not limited to
the package manager, will fail if you run them concurrently.

We have no easy way to identify that, and since the set of tools is
(as good as) unbounded and unknowable from our perspective, unless we
wanted to open the door to random failures over conflicts, or the
Maelstrom approach[maelstrom], we would need to make that opt-in.

That would ... probably not show a lot of short-term performance gain
for you.  The static compiler, or implementing #2198, would because
they attack specific performance headaches.

[maelstrom]: http://dl.acm.org/citation.cfm?id=1047538

> But, as shown in graph in topic "Trying to isolate performance issues with
> config retrieval." there is room for improvements, only doing some
> profiling/patching I think. There is unjustified slowness in several places.

Absolutely.  One sad part is that some of that comes from the Ruby VM,
which has terribly slow GC and object allocation, and makes both of
those common operations.  (Well, technically, only the later, but it
leads to the former. ;)

-- 
Daniel Pittman
⎋ Puppet Labs Developer – http://puppetlabs.com
♲ Made with 100 percent post-consumer electrons

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" group.
To post to this group, send email to puppet-dev@googlegroups.com.
To unsubscribe from this group, send email to 
puppet-dev+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/puppet-dev?hl=en.

Reply via email to