On Wed, Aug 12, 2009 at 7:06 PM, Ken Brownfield<[email protected]> wrote: > I never found a way to see how much stack is /used/ vs. /allocated/ in > a process or thread, so it would be great if someone had ideas? > > I could only experiment in production, first moving us to 1MB, then > 256KB. I've yet to see any issues at 256KB, but we can reach the > upper limits of thread-count sanity on our boxes with that setting, so > I haven't dropped it further in production. > > The minimums I reached in minimal testing were 128KB with the ulimit > method, and 64KB with the (IMHO cleaner) backend/worker-thread-only > approach. I'm not sure what in Varnish would use more than that much > stack, but 256KB seems like the sweet spot. > > We're 64-bit Ubuntu, and I would assume that a somewhat smaller stack > would work on 32-bit, possibly making 128KB safe. > > Unless you're doing recursion or using large declared structures in > inline C, I wouldn't think you'd see large stack allocations or huge > shifts in allocation during operation. I don't /believe/ objects are > ever allocated on the stack, or that there's a lot of recursion in the > code. > > FWIW I personally don't see any red flags. > -- > Ken
That's excellent information. We're still very early in our varnish deployment, so tuning info is greatly appreciated. Thanks! _______________________________________________ varnish-misc mailing list [email protected] http://projects.linpro.no/mailman/listinfo/varnish-misc
