Re: kqueue
Thomas Munro <thomas.munro@enterprisedb.com>
From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Torsten Zuehlsdorff <mailinglists@toco-domains.de>
Cc: Keith Fiske <keith@omniti.com>, Matteo Beccati <php@beccati.com>,
Tom Lane <tgl@sss.pgh.pa.us>, Andres Freund <andres@anarazel.de>, Heikki Linnakangas <hlinnaka@iki.fi>,
Marko Tiikkaja <marko@joh.to>, Alvaro Herrera <alvherre@2ndquadrant.com>,
Robert Haas <robertmhaas@gmail.com>, Pg Hackers <pgsql-hackers@postgresql.org>, Noah Misch <noah@leadboat.com>
Date: 2017-06-22T07:19:00Z
Lists: pgsql-hackers
Attachments
- kqueue-v7.patch (application/octet-stream) patch v7
On Tue, Oct 11, 2016 at 8:08 PM, Torsten Zuehlsdorff <mailinglists@toco-domains.de> wrote: > On 28.09.2016 23:39, Thomas Munro wrote: >> It's difficult to draw any conclusions at this point. > > I'm currently setting up a new FreeBSD machine. Its a FreeBSD 11 with ZFS, > 64 GB RAM and Quad Core. If you're interested in i can give you access for > more tests this week. Maybe this will help to draw any conclusion. I don't plan to resubmit this patch myself, but I was doing some spring cleaning and rebasing today and I figured it might be worth quietly leaving a working patch here just in case anyone from the various BSD communities is interested in taking the idea further. Some thoughts: We could decide to make it the default on FooBSD but not BarBSD according to experimental results... for example several people reported that macOS developer machines run pgbench a bit faster. Also, we didn't ever get to the bottom of the complaint that NetBSD and OpenBSD systems wake up every waiting backend when anyone calls PostmasterIsAlive[1], which this patch should in theory fix (by using EVFILT_PROC instead of waiting on that pipe). On the other hand, the fix for that may be to stop calling PostmasterIsAlive in loops[2]! [1] https://www.postgresql.org/message-id/CAEepm%3D27K-2AP1th97kiVvKpTuria9ocbjT0cXCJqnt4if5rJQ%40mail.gmail.com [2] https://www.postgresql.org/message-id/CAEepm%3D3FW33PeRxt0jE4N0truJqOepp72R6W-zyM5mu1bxnZRw%40mail.gmail.com -- Thomas Munro http://www.enterprisedb.com
Commits
-
Add kqueue(2) support to the WaitEventSet API.
- 815c2f0972c8 13.0 landed
-
Add WL_EXIT_ON_PM_DEATH pseudo-event.
- cfdf4dc4fc96 12.0 cited
-
Be conservative about alignment requirements of struct epoll_event.
- a3b30763cc86 9.6.0 cited
-
Make idle backends exit if the postmaster dies.
- ac1d7945f866 9.6.0 cited