From: | Jan Wieck <JanWieck(at)Yahoo(dot)com> |
---|---|
To: | Manfred Spraul <manfred(at)colorfullife(dot)com> |
Cc: | Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgresql(dot)org, markw(at)osdl(dot)org |
Subject: | Re: [PATCHES] update i386 spinlock for hyperthreading |
Date: | 2003-12-30 15:28:37 |
Message-ID: | 3FF199A5.1080709@Yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general pgsql-hackers pgsql-patches |
Manfred Spraul wrote:
> Bruce Momjian wrote:
>
>>>Anyone see an attack path here?
>>>
>>>
>>
>>Should we have one lock per hash bucket rather than one for the entire
>>hash?
>>
>>
> That's the simple part. The problem is the aging strategy: we need a
> strategy that doesn't rely on a global list that's updated after every
> lookup. If I understand the ARC code correctly, there is a
> STRAT_MRU_INSERT(cdb, STRAT_LIST_T2) that happen in every lookup.
Moving the Cache Directory Block (cdb) on a hit to the MRU position of
the appropriate queue "is the bookkeeping" of this strategy. The whole
algorithm is based on it, and I don't see yet how to avoid that without
opening a huge can of worms that look like deadlocks. But I'll think
about it for a while.
Jan
--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#================================================== JanWieck(at)Yahoo(dot)com #
From | Date | Subject | |
---|---|---|---|
Next Message | Bruno Wolff III | 2003-12-30 16:06:07 | Re: Is my MySQL Gaining ? |
Previous Message | Manfred Spraul | 2003-12-30 15:17:10 | Re: [PATCHES] update i386 spinlock for hyperthreading |
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2003-12-30 15:37:36 | select() for small sleep |
Previous Message | Manfred Spraul | 2003-12-30 15:17:10 | Re: [PATCHES] update i386 spinlock for hyperthreading |
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2003-12-30 15:37:36 | select() for small sleep |
Previous Message | Manfred Spraul | 2003-12-30 15:17:10 | Re: [PATCHES] update i386 spinlock for hyperthreading |