INN with hyperthreading/SMP
Forrest J. Cavalier III
mibsoft at epix.net
Fri May 14 02:22:47 UTC 2004
> To: inn-workers at isc.org
> Subject: Re: INN with hyperthreading/SMP
> From: Russ Allbery <rra at stanford.edu>
> Organization: The Eyrie
> Hm, that doesn't make a lot of sense to me. There's a reference count on
> the cache slots and they won't be purged if there are still references to
> them. You do have to put a lock around the shared cache, of course.
That isn't what I saw when I looked at the comments or the code at
entry_find_oldest(void *data, void *cookie)....
** Called by hash_traverse, this function finds the oldest entry with the
** smallest refcount and stores it in the provided pointer so that it can be
** freed. This is used when the cache is full to drop the least useful
But I seem to recall that there was something else too....
I also seem to recall that when I pthread'ed nnrpd, the TDX code really
didn't look too promising. You can increase the cache slots, but the cache
maintenance looked expensive. Maybe not O(n*n), but I don't remember exactly.
I do have an nnrpd completely pthreaded, but never ran under full load. (I
think the trouble was that all the MMAPing of .IDX files was hitting the
available memory limit for a 32-bit address.)
More information about the inn-workers