On 28.12.2011 14:03, Tatsuo Ishii wrote:
>>> With help from IBM Japan Ltd. we did some tests on a larger IBM
>>> machine than Tom Lane has used for his
>>> In his case it was IBM 8406-71Y, which has 8 physical cores and
>>> 4SMT(32 threadings). Ours is IBM Power 750 Express, which has 32
>>> physical cores and 4SMT(128 threadings), 256GB RAM.
>>> The test method was same as the one in the article above. The
>>> differences are OS(RHEL 6.1), gcc version (4.4.5) and shared buffer
>>> We tested 3 methods to enhance spin lock contention:
>>> 1) Add "hint" parameter to lwarx op which is usable POWER6 or later
>>> 2) Add non-locked test in TAS()
>>> 3) #1 + #2
>>> We saw small performance enhancement with #1, larger one with #2 and
>>> even better with #1+#2.
>> Hmm, so you added the non-locked test in TAS()? Did you try adding it
>> just to TAS_SPIN()? On Itanium, I found that it was slightly better
>> to do it only in TAS_SPIN() - i.e. in the contended case.
> Here is new patch using TAS_SPIN(), created by Manabu Ori from IBM
> Japan. Also this patch deal with older Power architectures which do
> not have "hint" argument of lwarx opcode.
> According to him, the patch resulted in much better performance stock
> git head.
config/c-compiler.m4 doesn't seem like the right place for the configure
test. Would there be any harm in setting the lwarx hint always; what
would happen on older ppc processors that don't support it?
In response to
pgsql-hackers by date
|Next:||From: Tatsuo Ishii||Date: 2011-12-28 22:27:57|
|Subject: Re: spinlocks on HP-UX|
|Previous:||From: Tom Lane||Date: 2011-12-28 19:35:34|
|Subject: Re: age(xid) on hot standby |