Performance!
Krassimir Slavchev
krassi at bulinfo.net
Thu Jan 3 03:38:31 PST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Kris Kennaway wrote:
> Kris Kennaway wrote:
>> Krassimir Slavchev wrote:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>>
>>> Kris Kennaway wrote:
>>>> Krassimir Slavchev wrote:
>>>> Hello,
>>>>
>>>> I have read all related threads about performance problems with multi
>>>> core systems but still have no idea what to do to make thinks better.
>>>> Below are results of testing postgresql on HP DL380G5 using sysbench.
>>>> The results are comparable to:
>>>> http://blog.insidesystems.net/articles/2007/04/11/postgresql-scaling-on-6-2-and-7-0
>>>>
>>>>
>>>> but the same tests running on the same hardware using Linux (kernel
>>>> 2.6.18-53.1.4.el5 SMP x86_64) are very different.
>>>> PostgreSQL is tuned equal.
>>>>
>>>> dmesg:
>>>> ...
>>>> CPU: Intel(R) Xeon(R) CPU X5450 @ 3.00GHz (3000.02-MHz
>>>> K8-class CPU)
>>>> Origin = "GenuineIntel" Id = 0x10676 Stepping = 6
>>>>
>>>> Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
>>>>
>>>>
>>>>
>>>> Features2=0xce3bd<SSE3,RSVD2,MON,DS_CPL,VMX,EST,TM2,SSSE3,CX16,xTPR,PDCM,DCA,<b19>>
>>>>
>>>>
>>>> AMD Features=0x20000800<SYSCALL,LM>
>>>> AMD Features2=0x1<LAHF>
>>>> Cores per package: 4
>>>> usable memory = 8575655936 (8178 MB)
>>>> avail memory = 8288337920 (7904 MB)
>>>> ACPI APIC Table: <HP ProLiant>
>>>> FreeBSD/SMP: Multiprocessor System Detected: 8 CPUs
>>>> ...
>>>>
>>>> test:
>>>> sysbench --num-threads=${i} --test=oltp --pgsql-user=bench
>>>> --pgsql-db=bench --db-driver=pgsql --max-time=60 --max-requests=0
>>>> --oltp-read-only=on run
>>>>
>>>> tuning:
>>>> kern.ipc.shmmax=2147483647
>>>> kern.ipc.shmall=524288
>>>> kern.ipc.semmsl=512
>>>> kern.ipc.semmap=256
>>>> kern.ipc.somaxconn=2048
>>>> kern.maxfiles=65536
>>>> vfs.read_max=32
>>>>
>>>> kern.ipc.semmni=256
>>>> kern.ipc.semmns=2048
>>>>
>>>> results:
>>>> FreeBSD 7.0-BETA4 amd64 (cvsup on 20.12) GENERIC with SCHED_ULE
>>>> #threads #transactions/sec user/system
>>>> 1 500 7.4%,5.3%
>>>> 5 1990 30.9%,23.4%
>>>> 10 2510 39.9%,35.0%
>>>> 20 2549 44.5%,43.5%
>>>> 40 1921 29.8%,59.4%
>>>> 60 1580 22.7%,70.6%
>>>> 80 1341 18.9%,75.9%
>>>> 100 1227 16.5%,79.3%
>>>>
>>>> Linux
>>>> #threads #transactions/sec
>>>> 1 693
>>>> 5 3539
>>>> 10 5789
>>>> 20 5791
>>>> 40 5661
>>>> 60 5517
>>>> 80 5401
>>>> 100 5319
>>>>
>>>>
>>>> What can be done to improve these results?
>>>>
>>>> Best Regards
>>>>
>>> _______________________________________________
>>> freebsd-stable at freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
>>> To unsubscribe, send any mail to
>>> "freebsd-stable-unsubscribe at freebsd.org"
>>> .
>>>
>>>> postgresql has some poor default settings on FreeBSD. You need to add:
>>>
>>>> stats_command_string = off
>>>> update_process_title = off
>>>
>>>> Kris
>>>
>>> I use a copy of postgresql.conf file from linux.
>>> Only 'stats_command_string = on' was commented.
>>> Here are results with these settings and lock_manager patch:
>>>
>>> #threads #transactions/sec
>>> 1 582
>>> 5 2154
>>> 10 2253
>>> 20 2705
>>> 40 2215
>>> 60 1713
>>> 80 1574
>>> 100 1256
>>
>> Please enable LOCK_PROFILING in your kernel and then do
>>
>> sysctl debug.lock.prof.enable=1
>> <run the test with 8 threads>
>> sysctl debug.lock.prof.enable=0
>>
>> and send me the output of
>>
>> sysctl debug.lock.prof.stats
>>
>> Kris
>>
>
I have sent the results to you.
If someone else interested in these results I will put them somewhere.
> Are you using postgresql 8.1 or older? It didn't have the
> update_process_title option to disable the setproctitle() calls that
> have a large performance penalty on FreeBSD. Try with 8.2 or hack the
> source to disable it.
It is 8.2 from ports.
pkg_info:
postgresql-server-8.2.5_2 The most advanced open-source database
available anywhere
>
> Kris
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (FreeBSD)
iD8DBQFHfMkvxJBWvpalMpkRAhe+AJ9Bsl0ciZ6kPHtJT9RVjDo4E4fNxgCcC7qH
5veO734c+yDgEY945dwINAg=
=cdYT
-----END PGP SIGNATURE-----
More information about the freebsd-stable
mailing list