Re: semtimedop instead of setitimer/semop/setitimer

From: Manfred Spraul <manfred(at)colorfullife(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: semtimedop instead of setitimer/semop/setitimer
Date: 2003-09-20 17:26:43
Message-ID: 3F6C8DD3.3020309@colorfullife.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-patches

Tom Lane wrote:

>Oh, pgbench ;-). Are you aware that you need a "scale factor" (-s)
>larger than the number of clients to avoid unreasonable levels of
>contention in pgbench?
>
No. What about adding a few reasonable examples to README? I've switched
to "pgbench -c 10 -s 11 -t 1000 test". Is that ok?
Now the semop calls are virtually gone. That leaves the question why
sysv sem showed up high in the dbt2 benchmarks, but that's another question.

I'm back to my original idea: align the data buffers to speed up the
user space/kernel space transfers. It looks good:
before: (with/without connection)
105.031776//105.093682
105.201246//105.260008
after aligning:
112.664320//112.730542
111.031901//111.098496
111.685869/111.751130

Tested with 7.3.4. Initially I tried to increase MAX_ALIGNOF to 16, but
the result didn't work: pgbench failed with:
<<<
ERROR: CREATE DATABASE cannot be executed from a function
createdb: database creation failed
<<<
For my test I've manually edited shmem and aligned all allocations to 16
byte offsets. I'll try to compile the 7.4 cvs tree, probably someone
makes wrong assumptions about the alignment values.

--
Manfred

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2003-09-20 17:33:09 Re: semtimedop instead of setitimer/semop/setitimer
Previous Message Peter Eisentraut 2003-09-20 17:23:49 Re: postgresql system file size

Browse pgsql-patches by date

  From Date Subject
Next Message Tom Lane 2003-09-20 17:33:09 Re: semtimedop instead of setitimer/semop/setitimer
Previous Message Tom Lane 2003-09-20 15:37:32 Re: pgsql-server/src/backend catalog/index.c comma ...