This is with cache_mem 512 MB btw.
On Fri, Sep 15, 2006, Adrian Chadd wrote: > I've done some more profiling. Same test setup, current squid3 source. > > perfmon output: > > -------------------------------------------------------------------------------- > Samples Self % Total % Function > > 18915 26.09% 26.09% MemPool::clean(long) > 9266 12.78% 38.86% MemPool::getStats(MemPoolStats*) > 3809 5.25% 44.12% MemPool::push(void*) > 1407 1.94% 46.06% MemPool::get() > 1295 1.79% 47.84% mem_hdr::copyAvailable(mem_node*, unsigned int, > unsigned int, char*) const > 956 1.32% 49.16% headersEnd > 884 1.22% 50.38% String::limitInit(char const*, int) > 836 1.15% 51.53% mem_hdr::writeAvailable(mem_node*, unsigned int, > unsigned int, char const*) > 652 0.90% 52.43% MemBuf::append(char const*, int) > 625 0.86% 53.29% httpHeaderIdByName > > gprof output: > > Flat profile: > > Each sample counts as 0.01 seconds. > % cumulative self self total > time seconds seconds calls Ks/call Ks/call name > 41.72 520.92 520.92 96886 0.00 0.00 MemPool::clean(long) > 18.68 754.16 233.24 95668 0.00 0.00 > MemPool::getStats(MemPoolStats*) > 3.78 801.41 47.25 80591325 0.00 0.00 MemPool::push(void*) > 1.77 823.52 22.11 80591448 0.00 0.00 MemPool::get() > 1.36 840.45 16.93 1869713 0.00 0.00 > mem_hdr::copyAvailable(mem_node*, unsigned int, unsigned int, char*) const > 1.00 852.93 12.48 1945388 0.00 0.00 headersEnd > 0.91 864.32 11.38 9211732 0.00 0.00 > mem_hdr::writeAvailable(mem_node*, unsigned int, unsigned int, char const*) > 0.85 874.90 10.59 46796172 0.00 0.00 String::limitInit(char > const*, int) > 0.65 883.03 8.12 27262950 0.00 0.00 MemBuf::append(char > const*, int) > 0.61 890.64 7.62 8808921 0.00 0.00 httpHeaderIdByName > > I wonder why the chunked allocator is doing -that-.. > > > > > Adrian >