Re: PostgreSQL performance on FreeBSD

From: John Baldwin <jhb_at_freebsd.org>
Date: Tue, 12 Aug 2014 14:09:40 -0400
On Wednesday, July 16, 2014 1:52:45 pm Adrian Chadd wrote:
> Hi!
> 
> 
> On 16 July 2014 06:29, Konstantin Belousov <kostikbel_at_gmail.com> wrote:
> > On Fri, Jun 27, 2014 at 03:56:13PM +0300, Konstantin Belousov wrote:
> >> Hi,
> >> I did some measurements and hacks to see about the performance and
> >> scalability of PostgreSQL 9.3 on FreeBSD, sponsored by The FreeBSD
> >> Foundation.
> >>
> >> The results are described in https://kib.kiev.ua/kib/pgsql_perf.pdf.
> >> The uncommitted patches, referenced in the article, are available as
> >> https://kib.kiev.ua/kib/pig1.patch.txt
> >> https://kib.kiev.ua/kib/patch-2
> >
> > A followup to the original paper.
> >
> > Most importantly, I identified the cause for the drop on the graph
> > after the 30 clients, which appeared to be the debugging version
> > of malloc(3) in libc.
> >
> > Also there are some updates on the patches.
> >
> > New version of the paper is available at
> > https://www.kib.kiev.ua/kib/pgsql_perf_v2.0.pdf
> > The changes are marked as 'update for version 2.0'.
> 
> Would you mind trying a default (non-PRODUCTION) build, but with junk
> filling turned off?
> 
> adrian_at_adrian-hackbox:~ % ls -l /etc/malloc.conf
> 
> lrwxr-xr-x  1 root  wheel  10 Jun 24 04:37 /etc/malloc.conf -> junk:false
> 
> That fixes almost all of the malloc debug performance issues that I
> see without having to recompile.
> 
> I'd like to know if you see any after that.

OTOH, I have actually seen junk profiling _improve_ performance in certain 
cases as it forces promotion of allocated pages to superpages since all pages 
are dirtied.  (I have a local hack that adds a new malloc option to explicitly 
memset() new pages allocated via mmap() that gives the same benefit without 
the junking overheadon each malloc() / free(), but it does increase physical 
RAM usage.)

-- 
John Baldwin
Received on Tue Aug 12 2014 - 17:37:14 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:51 UTC