| From: | Manfred Spraul <manfred(at)colorfullife(dot)com> |
|---|---|
| To: | pgsql-patches(at)postgresql(dot)org |
| Subject: | Align large shared memory allocations |
| Date: | 2003-09-20 20:44:25 |
| Message-ID: | 3F6CBC29.1040109@colorfullife.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers pgsql-patches |
Attached is a patch that aligns large shared memory allocations beyond
MAXIMUM_ALIGNOF. The reason for this is that Intel's cpus have a fast
path for bulk memory copies that only works with aligned addresses. It's
possible that other cpus have similar restrictions.
With 7.3.4, it achives a 5% performance gain with pgbench. It has no
effect with 7.3.3, because the buffers are already aligned by chance. I
haven't properly tested 7.4cvs yet.
One problem is the "32" - it's arbitrary, it probably belongs into an
arch dependant header file. But where?
--
Manfred
| Attachment | Content-Type | Size |
|---|---|---|
| patch-align | text/plain | 988 bytes |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Hiroshi Inoue | 2003-09-20 21:28:07 | Re: pgsql-server/src/backend catalog/index.c comma ... |
| Previous Message | Tom Lane | 2003-09-20 20:37:19 | Re: Can't Build 7.3.4 on OS X |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Hiroshi Inoue | 2003-09-20 21:28:07 | Re: pgsql-server/src/backend catalog/index.c comma ... |
| Previous Message | Tom Lane | 2003-09-20 18:45:23 | Re: semtimedop instead of setitimer/semop/setitimer |