| From: | Adriaan Joubert <a(dot)joubert(at)albourne(dot)com> |
|---|---|
| To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
| Cc: | Arrigo Triulzi <arrigo(at)albourne(dot)com>, pgsql-ports(at)postgresql(dot)org |
| Subject: | Re: Alpha spinlock |
| Date: | 2000-10-02 05:21:45 |
| Message-ID: | 39D81B69.207D5F0D@albourne.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers pgsql-ports |
Tom Lane wrote:
> > For a while I though it might be because we are using an alpha TAS in
> > the spinlock rather than the old semaphore. I replaced our spinlock
> > with the standard one and it made no difference. We have been running
> > with our spinlock implementation for nearly 2 months on a production
> > database now without a hitch, so I think it is ok. Did I ever submit
> > any patches for the Alpha spinlock?
>
> Not that I recall. We did get some advice from some Alpha gurus at DEC
> who seemed to think the existing TAS code is OK. What was it that you
> felt needed to be improved?
The current code uses semaphores, which has the advantage that it works
well even on multi-processor machines, but the disadvantage that it is not
the fastest way possible. Writing a spinlock on Alpha for SMP machines is
very difficult, as you need to deal with memory barriers. A real mess. But
then one of the people at Compaq pointed out to us that there is a
ready-made routine on Alpha. We implemented it with the two patches below.
I ran tests with lots of parallel back-ends and got around a 10% speed
increase. I include the two patches. Perhaps some of the other people
running Tru64 can have a look at these as well.
Cheers,
Adriaan
| Attachment | Content-Type | Size |
|---|---|---|
| patch1 | text/plain | 654 bytes |
| patch2 | text/plain | 749 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Adriaan Joubert | 2000-10-02 05:42:33 | Re: Strange error message |
| Previous Message | Bruce Momjian | 2000-10-02 04:22:48 | Re: PgAccess - small bug? |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Emils Klotins | 2000-10-02 05:38:08 | Q: spinlock on Alpha? (PG7.0.2) |
| Previous Message | Bruce Momjian | 2000-09-30 02:42:12 | Re: [PORTS] Locale bug |