On Thu, 4 May 2000, Adrian Chadd wrote:
>
> Ok, the modio code merge is over. Nice and painless. I've lad tags
> PRE_MODIO_1 and POST_MODIO_1 to denote before and after the modio
> commit, respectively.
>
> If anyone has any problems or comments, please email to squid-dev.
I have a problem.
The old DISKD code had a function called storeDiskdReadQueue(). One of
the ways that Squid got a performance boost is by loooping over all
swap dirs in that function. If any one of the swap dirs was over the
MAGIC2 limit, then it called msgrcv() on all of them sequentially.
This helps because it can happen that one swap dir is over the limit,
but some of the other dirs have completed I/O's that can be read from
their queues. Or if two swap dirs are over the limit, it polls both
of them, rather than blocking on a single one.
The new storeDiskdDirCallback, however, doesn't loop over all dirs. It
blocks one just one dir at a time. In fact, the way its written now,
it would just chew up CPU needlessly. You might as well change
ICP_NOWAIT to "0" if away > magic2. The old storeDiskdReadQueue
also chewed up CPU, but I would not say that it was needless.
Am I missing something?
Duane W.
Received on Thu May 11 2000 - 22:06:12 MDT
This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:12:25 MST