Search squid archive

Re: first time builder, playing w/build options...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, 19 Jun 2005, Linda W wrote:

Also, of note, are optimizations that are done or not done. Does anyone use -O3? I generally try to recompile utils at O3, -march=pentium3 and -fomit-frame-pointers, even stripping the binary can result in small savings in time to read and page binaries off disk.

GCC -O3 is not guaranteed to be faster than -O2.

-O3 optimizes for speed at the expense of size, which may costs you both in more data to read from the disk when starting the application and more CPU cache line misses where the last is usually the most important aspect to consider.

For a very CPU intensive application -O3 may help as long as the CPU burning pieces still fit in the CPU cache, but for most applications it doesn't really pay off.

With squid, there are many more opportunities for parallelism, though it isn't alway clear where bottlenecks are. For example, (these would be along the lines of feature requests) there doesn't seem to be any easy way to request metrics, like:

* Time spent idle: (no requests outstanding for >=
	<config idle timeout, in deciseconds: (1-100) [7]> )
* Time spent not idle (active):

These are available in terms of CPU usage, both via cachemgr and snmp and your system monitoring tools. But the scale is not always easy to understand without studying the results in a lab.. (100% CPU usage doesn't mean 100% usage, there is still more to give)

Request time:
* Time spent waiting for DNS lookup/request, min,ave,max: 1ms, 10ms, 150ms

This is somewhat lacking at the moment. There was some statistics collected in the old helper based approach, but not with the internal DNS client.

* Time waiting for a free DNS lookup thread: (total seconds) 0 (or 10 or 1200),
* Average DNS lookup thread queue depth during active times...

There is no such queue when using the internal DNS client (default). DNS requests is sent immediately to your configured DNS server/resolver.

The only "queue" there is is the list of pending DNS queries where no response has been received from the DNS server/resolver yet.

* Time spent waiting for initial responses from server, min, ave, max (I believe these can be gleaned from the existing logs).

This isn't measured at the moment.

* Time spent waiting on disk cache (read, write, remove(delete)).

Not much measured here either.

* Time spent waiting on log-writes (non-buffered,synchronous): 10ms?

Nor here..

* Average request queue length during active times.

Queue length of what?

Number of concurrently running requests?

It is not like Squid processes one request at a time until completion.

There is a queue length of pending events to take care of in the event loop, but this is usually quite small and very volatile.

Is there a squid-developers list where developers talk about what they are working on/doing/fixing or does that get discussed here on squid-users? Seems like a high volume list for that purpose.

There is a low volume developers list where the current and past developers hang out. The active ones such as myself also read squid-users and occationally respond.

Regards
Henrik

[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux