Well, I think that Mark is right on the money here. If there is one
killer app that tops all other functionality additions it would be to
multi-thread Squid so that it can perform on multi-cores. You wanted
input from your users on the -2 or -3 roadmaps here it is. With the
current implementation it is impossible to utilize the hardware to
deliver IO performance across multiple NICs. And Async IO is of little
help. And, as has been pointed out there are other areas besides IO
which would benefit as well.
It is very clear now that multi-core CPUs have become the industry
standard. It is becoming more important every day to take advantage of
the HW that is sitting there mostly idle. With a HW trend as clear as
this, if multi-threading is not very high on the development list by now
then something seems wrong with the roadmaps.
-mikep
Adrian Chadd wrote:
On Wed, Mar 05, 2008, Michael Puckett wrote:
Mark Nottingham wrote:
A killer app for -3 would be multi-core support (and the perf
advantages that it would bring), or something else that the
re-architecture makes possible that isn't easy in -2. AIUI, though,
that isn't the case; i.e., -3 doesn't make this significantly easier.
Absolutely THE killer app for either -2 or -3. The fact that multi-core
processors are now the defacto standard in any box makes this more
important by the day IMHO. Being able to do sustained IO across multiple
Gb NICs will absolutely require it. This is the single biggest
performance enhancement that could be implemented. So where does
multi-core support fall on either roadmap?
12 months away on my draft Squid-2 roadmap, if there was enough commercial
interest. Thing is, the Squid internals are very horrible for SMP (both 2 and 3)
and the list of stuff that I've put into the squid-2 roadmap is what I think
is the minimum amount of work required before really starting to take advantage
of multiple cores.
Adrian