From: | Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi> |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: Make bgwriter sleep longer when it has no work to do, to save el |
Date: | 2012-01-26 16:43:48 |
Message-ID: | E1RqSQO-0008Jk-0A@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Make bgwriter sleep longer when it has no work to do, to save electricity.
To make it wake up promptly when activity starts again, backends nudge it
by setting a latch in MarkBufferDirty(). The latch is kept set while
bgwriter is active, so there is very little overhead from that when the
system is busy. It is only armed before going into longer sleep.
Peter Geoghegan, with some changes by me.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/6d90eaaa89a007e0d365f49d6436f35d2392cfeb
Modified Files
--------------
src/backend/postmaster/bgwriter.c | 144 +++++++++++++++++++++++++++++++----
src/backend/storage/buffer/bufmgr.c | 41 ++++++++---
src/include/storage/bufmgr.h | 2 +-
src/include/storage/proc.h | 2 +
4 files changed, 163 insertions(+), 26 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Heikki Linnakangas | 2012-01-26 17:09:16 | pgsql: Fix sentence in docs: checkpoints are not done by bgwriter anymo |
Previous Message | Robert Haas | 2012-01-26 15:18:22 | pgsql: Add missing #include, to suppress compiler warning. |