On 20 Feb 2003, at 8:14, Robert Collins <robertc@squid-cache.org> wrote:
> The problem I have is that I need to profile routines that reenter.
maybe we should extend xprof so that recursive enter is counted
but does not restart clock? Then, combined time spent in recursive
call is shared between invocations, much like prof is doing.
Full recursion tracking would be overkill, though.
> > Also note that things change dramatically
> > when cpu becomes a bottleneck and there are thousands of FDs open.
>
> Sure.
one more thing. prof needs to run with minimal compiler optimisations,
while you want to profile with max optimisations in effort. Many short
sections of frequently used code can have dramatic impact.
> > I'd focus of profiling when cpu usage is at ~100%. Which shows me that
> > most problems we have are in comm_poll and acls (my workload).
> > To be gained - ~ 15-40%
>
> Sounds like my acl cache concept is actually fairly key then. Care to
> send me your acl + access rules offline (so I can validate that it's
> general acl processing that needs improvement?
There's nothing special in my acls. just simple src acls for some 20-30
prefixes. max I've seen was ~10% of walltime, not sure what kind of acls,
we have ~4-6 siblings that generate quite alot of ICP traffic. In all,
we are doing ~100-200 http req/sec per cachebox. Imo, bad is that we
always check all acls for same client-ip even though its damn sure outcome
will be exactly same every time. Depending on acls thats not always the
case, but for some most commonly used setups there could be some nice
shortcut.
------------------------------------
Andres Kroonmaa <andre@online.ee>
CTO, Microlink Data AS
Tel: 6501 731, Fax: 6501 725
Pärnu mnt. 158, Tallinn
11317 Estonia
Received on Thu Feb 20 2003 - 03:39:44 MST
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:19:16 MST