Re: Remove Instruction Synchronization Barrier in spin_delay() for ARM64 architecture

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Salvatore Dipietro <dipietro(dot)salvatore(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, pgsql-hackers(at)postgresql(dot)org, Salvatore Dipietro <dipiets(at)amazon(dot)com>, blakgeof(at)amazon(dot)com
Subject: Re: Remove Instruction Synchronization Barrier in spin_delay() for ARM64 architecture
Date: 2025-08-11 20:12:48
Message-ID: 3182911.1754943168@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Nathan Bossart <nathandbossart(at)gmail(dot)com> writes:
> On Thu, Jun 19, 2025 at 12:10:52PM -0700, Salvatore Dipietro wrote:
>> We can notice that with low concurrency (1,2,4) results are similar
>> while with medium concurrency (8,16)
>> the No-ISB approach can introduce some regression especially on
>> smaller instances. However, we can see some significant
>> positive performance impact with high concurrency (>=32) settings on
>> large instances (up to 8.76x on m7g.16xl with 256 concurrency).

> Given these mixed results, it's unclear to me how exactly we should
> proceed. Perhaps there is another approach that reduces the regressions to
> a negligible level while still producing gains at higher levels of
> concurrency. Or maybe we can convince ourselves that these regressions
> aren't worth worrying about, but that seems like a bit of a stretch to me.

I agree; I'm also worried that this may be optimizing for one
particular ARM implementation and have negative effects on others.

Perhaps a better way forward is to identify which spinlock is
suffering such huge contention and try to alleviate that at a
higher design level. (That could benefit more than just ARM, too.)

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Geoghegan 2025-08-11 20:14:31 Re: index prefetching
Previous Message Nathan Bossart 2025-08-11 19:58:38 Re: Remove Instruction Synchronization Barrier in spin_delay() for ARM64 architecture