On 8 Sep 2000, at 0:27, Adrian Chadd <adrian@creative.net.au> wrote:
> > I am quite worried about CPU usage of squid. My P3-800 box is doing about
> > 100-150 reqs/sec and its CPU is very loaded. I can't see or find the
> > source of CPU burning, gprof or other profiling tools are of little help,
> > they all have only 10ms precision. I wonder if it makes sense to design
> > a macro that could measure any func with very small overhead and very high
> > precision. Solaris has got gethrtime() which returns nanosec time with
> > CPU clocktick precision. It consults on-CPU counter. Most popular platforms
> > do have something similar. It would be very useful to have cachemgr return
> > stats table that shows where most of the CPU is burned. Then we could
> > much better understand what needs more optimisation.
>
> There are many, MANY places where CPU burn can be fixed. Try profiling
> a kernel running squid - you'll see most of its time spent handling poll().
Hey, but what about moving poll itself into a separate thread?
What about moving HTTP, ICP, DNS socket polling into a separate thread,
and calling aiocheckcallbacks to get notifications back to main thread?
------------------------------------
Andres Kroonmaa <andre@online.ee>
Delfi Online
Tel: 6501 731, Fax: 6501 708
Pärnu mnt. 158, Tallinn,
11317 Estonia
Received on Mon Sep 11 2000 - 05:14:40 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:37 MST