Date: Wed, 21 May 2014 10:17:37 -0700 From: Sean Chittenden <sean@chittenden.org> To: Palle Girgensohn <girgen@pingpong.net> Cc: Adrian Chadd <adrian@freebsd.org>, "bsdmailinglist@googlegroups.com" <bsdmailinglist@googlegroups.com>, Steven Hartland <killing@multiplay.co.uk>, FreeBSD Mailing Lists <freebsd-performance@freebsd.org>, Petr Janda <janda.petr@gmail.com> Subject: Re: FreeBSD 10 and PostgreSQL 9.3 scalability issues Message-ID: <sig.02184fa928.F0529F5B-72EC-4E68-A4BD-75276C70AC1C@chittenden.org> In-Reply-To: <1473AF7C-B190-4CD4-B611-BA4090A081CB@pingpong.net> References: <5327B9B7.3050103@gmail.com> <2610F490C952470C9D15999550F67068@multiplay.co.uk> <532A192A.1070509@gmail.com> <assp.0155c70d29.23ED6415-945D-4DF5-90DD-2F2CD7E198AF@chittenden.org> <f4ead73a-fae2-4eac-8499-3cf630eb3d31@googlegroups.com> <CAJ-VmomVOWFb7X5s-amRX7QFzbmT6Kt6bB9gaPVv2_hGx1OS5g@mail.gmail.com> <572540F9-13E4-4BA9-88AE-5F47FB19450A@pingpong.net> <CAJKO3mUTwgiQenSLYfOxHrZxuPQ9kvUPC44MrbLjvpLE=toZQA@mail.gmail.com> <1BC3D447-2044-4AB8-B183-B83957BC9112@pingpong.net> <CAJKO3mX5KA8HZ5tQGTyOgfKbS6HvUvYH-gvzeewTkh3nWz=NRg@mail.gmail.com> <1473AF7C-B190-4CD4-B611-BA4090A081CB@pingpong.net>
next in thread | previous in thread | raw e-mail | index | archive | help
> I did some tests with zfs, and results where appallingly bad, but that = was with db size > ram.=20 >=20 > I think the model used by PostgreSQL, as most databases, are very disk = block centric. Using zfs makes it hard to get good performance. But this = was some time ago, maybe things have improved.=20 I have some hardware that I ran with last week wherein I was *not* able = to reproduce any performance difference between ZFS and UFS2. On both = UFS2 and ZFS I was seeing the same performance when using a a RAID10 / = set of mirrors. I talked with the Dragonfly folk who originally = performed these tests and they also saw the same thing: no real = performance difference between ZFS and UFS. I ran my tests on a host = with 16 drive, 10K SAS, 192GB RAM. I also created a kernel profiling = image and ran the 20 concurrent user test under kgprof(1), dtrace, and = pmcstat and have the results available: http://people.freebsd.org/~seanc/pg9.3-fbsd10-profiling/ There are some investigations that are ongoing as a result of these = findings. The dfly methodology was observed when generating these = results. Stay tuned. -sc -- Sean Chittenden sean@chittenden.org >=20 > Palle >=20 >> 21 maj 2014 kl. 18:33 skrev Gezeala M. Bacu=F1o II = <gezeala@gmail.com>: >>=20 >> Gotcha. >>=20 >> I've been testing using pgbench on FreeBSD 9.0 release + ZFS + pg = 9.3.. I >> can reach the freebsd 10 stats on the pdf files if the dataset <RAM. = It >> gets way lower if the dataset >RAM. Test was done on pools without = L2ARC >> and with/without compression. I also remember increasing a vm.pmap = sysctl. >> I'm out of the office right now sick so I can't provide the stats but = yes, >> with mmap it is pretty bad.. >>=20 >> Keep us in the loop. I'd like to help on getting the performance data = they >> need. >>> On May 20, 2014 11:16 PM, "Palle Girgensohn" <girgen@pingpong.net> = wrote: >>>=20 >>> I got no response about how to grab performance data. >>>=20 >>> The PostgreSQL team is also making an effort by setting up machines >>> dedicated to performance measuring and tuning. >>>=20 >>> And freebsd guys and PostgreSQL guys are apparently meeting at pgcon = this >>> week. >>>=20 >>> We'll see where that leads. >>>=20 >>> In the mean time, if I for some pointers on how to grab performance = data, >>> I could do some more tests. >>>=20 >>> Palle >>>=20 >>> 21 maj 2014 kl. 02:13 skrev Gezeala M. Bacu=F1o II = <gezeala@gmail.com>: >>>=20 >>>=20 >>> Do you guys have any updates on this? >>>=20 >>> -- >>>=20 >>> regards >>>=20 >>> gezeala bacu=F1o II >>>=20 >>>=20 >>> On Tue, Apr 22, 2014 at 11:52 PM, Palle Girgensohn = <girgen@pingpong.net>wrote: >>>=20 >>>>=20 >>>>=20 >>>>> 23 apr 2014 kl. 01:04 skrev Adrian Chadd <adrian@freebsd.org>: >>>>>=20 >>>>> Hi, >>>>>=20 >>>>> Are you able to repeat these tests (for both 9.2 and 9.3) whilst >>>>> grabbing some performance data from lock profiling and hwpmc? >>>>=20 >>>> I sure can, but I'd love some pointers as to how this is done. = Please? :-) >>>>=20 >>>>>=20 >>>>> The benchmarking is great but it doesn't tell us enough = information as >>>>> to "why" things behave poorly compared to Linux and why the mmap = drop >>>>> isn't so great. >>>>=20 >>>>=20 >>>> As per the discussion on postresql-hackers, the regression between = pg9.2 >>>> and pg9.3, which includes the sysv->mmap shift, *might* also exist, = at >>>> least partly, on Linux as well. >>>>=20 >>>> The initial post in *this* thread does however indicate that = freebsd >>>> performs poorer than Linux and dragonflybsd, but does not really = compare >>>> PostgreSQL versions. >>>>=20 >>>> Just so we're not pursuing the wrong problem here, let's be open = minded >>>> about the definition of the problem. :-) >>>>=20 >>>>>=20 >>>>> What about with more clients? 64? 128? 256? >>>>=20 >>>> My test went to 80. I can go higher as well, though other sources = say 50 >>>> is a reasonable limit for PostgreSQL. >>>>=20 >>>> Palle >>>>=20 >>>>=20 >>>>>=20 >>>>>=20 >>>>> Thanks! >>>>>=20 >>>>>=20 >>>>>=20 >>>>> -a >>>>>=20 >>>>>=20 >>>>>> On 21 April 2014 14:11, Palle Girgensohn <girgen@pingpong.net> = wrote: >>>>>>=20 >>>>>>=20 >>>>>>> Den torsdagen den 20:e mars 2014 kl. 00:33:10 UTC+1 skrev Sean >>>> Chittenden: >>>>>>>=20 >>>>>>>> As far as I know, the test was done on both UFS2 and ZFS and = the >>>>>>>> difference was marginal. >>>>>>>=20 >>>>>>> As Adrian pointed out, there is an mmap(2) mutex in the way. = Starting >>>> in >>>>>>> PostgreSQL 9.3, shared buffers are allocated out of mmap(2) = instead >>>> of shm. >>>>>>> shm is only used to notify the PostgreSQL postmaster that a = child >>>> process >>>>>>> exited/crashed (when a pid detaches from a shm segment, there is = a >>>> kernel >>>>>>> event, but there is no kernel event when detaching from an = mmap(2) >>>> region). >>>>>>> -sc >>>>>>>=20 >>>>>>> = http://www.postgresql.org/docs/9.3/static/release-9-3.html#AEN115039 >>>>>>>=20 >>>>>>>=20 >>>>>>>>>> Just want to share these pgbench results done by = DragonFlyBSD, and >>>>>>> would >>>>>>>>>> like some input on why these numbers look so bad and what can = be >>>> done >>>>>>> to >>>>>>>>>> improve (ie. kernel tunables etc) the performance. >>>> = http://lists.dragonflybsd.org/pipermail/users/attachments/20140310/4250b96= 1/attachment-0001.pdf >>>>>>>>>=20 >>>>>>>>>=20 >>>>>>>>> Do you have the ability to test with FreeBSD 8.x and 9.x to = see if >>>> this >>>>>>> is >>>>>>>>> regression? >>>>>>>>>=20 >>>>>>>>> Also you don't mention the FS used in each case, so I'm = wondering if >>>>>>> you >>>>>>>>> used a ZFS install of FreeBSD which could help to explain = things. >>>>>>>=20 >>>>>>>=20 >>>>>>> -- >>>>>>> Sean Chittenden >>>>>>> se...@chittenden.org <javascript:> >>>>>> Hi, >>>>>>=20 >>>>>> There is a fresh thread about this in postgresql-hackers [1]. >>>>>>=20 >>>>>> There are two parallel approaches suggested there, where one is = to >>>> have an >>>>>> option to continue using the old SYSV shared memory in = PostgreSQL, and >>>> the >>>>>> other is the suggestion that "somebody needs to hold the FreeBSD = folks' >>>>>> feet to the fire about when we can expect to see a fix from their >>>> side." >>>>>>=20 >>>>>> Looking at the original post in this thread, it seems to me that >>>> FreeBSD >>>>>> has scalability problems beyond what the SYSV vs mmap change in >>>> PostgreSQL >>>>>> introduces? Check my test of PostgreSQL 9.2 vs 9.3 on FreeBSD = 10.0 at >>>> [1]. >>>>>> The difference between PG92 and PG93 is not huge, ~17%. The = difference >>>>>> between FreeBSD and the other OS:es in this thread's original = post's >>>>>> performance chart seems to be about a lot more? >>>>>>=20 >>>>>> Palle >>>>>>=20 >>>>>> [1] >>>> = http://www.postgresql.org/message-id/2AE143D2-87D3-4AD1-AC78-CE2258230C05@= FreeBSD.org >>>>>> _______________________________________________ >>>>>> freebsd-performance@freebsd.org mailing list >>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-performance >>>>>> To unsubscribe, send any mail to " >>>> freebsd-performance-unsubscribe@freebsd.org" >>>> _______________________________________________ >>>> freebsd-performance@freebsd.org mailing list >>>> http://lists.freebsd.org/mailman/listinfo/freebsd-performance >>>> To unsubscribe, send any mail to " >>>> freebsd-performance-unsubscribe@freebsd.org" >> _______________________________________________ >> freebsd-performance@freebsd.org mailing list >> http://lists.freebsd.org/mailman/listinfo/freebsd-performance >> To unsubscribe, send any mail to = "freebsd-performance-unsubscribe@freebsd.org" > _______________________________________________ > freebsd-performance@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-performance > To unsubscribe, send any mail to = "freebsd-performance-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?sig.02184fa928.F0529F5B-72EC-4E68-A4BD-75276C70AC1C>