Align large shared memory allocations

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: Raw Message | Whole Thread | 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

In response to

Responses

Browse pgsql-hackers by date

  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

Browse pgsql-patches by date

  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