On May 3, 2012, at 1:25 PM, Trevor Vaughan wrote:

> All,
> 
> I've noticed an understandable correlation between catalog size and
> config retrieval time. However, I'm a bit lost as to why it seems so
> slow.
> 
> For an example 1.5M catalog:
> 
> 24 seconds compile time
> Almost instantaneous transfer time (localhost)
> 40 seconds registered by the puppet client as the 'Config retrieval time'
> 
> Why is there almost as much "other stuff" on the client as the
> original compile time and is there anywhere that I can start looking
> to potentially optimize it?
> 
> I'm perfectly willing to accept that it's just doing a lot and that's
> how long it takes but it seems a bit odd.

I can't quite remember exactly what is there any more, but there are multiple 
things that the client does besides just downloading the catalog, and I think 
most of it is captured within that recorded time:

* Download and load plugins
* Discover facts
* Upload them
* Download catalog
* Convert catalog to RAL resources

There are some other things that might show up in this time, but I don't 
remember:

* Add autorequires
* Convert containment edges to dependency edges (creation of relationship graph)
* Prefetch appropriate resource types

Most of it is relatively clear in the Configurer class.

-- 
Luke Kanies | http://about.me/lak | http://puppetlabs.com/ | +1-615-594-8199

-- 
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