Re: Priorities for users or queries?

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Ron Mayer <rm_pg(at)cheapcomplexdevices(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Priorities for users or queries?
Date: 2007-03-27 15:36:31
Message-ID: 200703271536.l2RFaVK07108@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-general pgsql-hackers


Added to TODO:

* Allow configuration of backend priorities via the operating system

Though backend priorities make priority inversion during lock
waits possible, research shows that this is not a huge problem.
http://archives.postgresql.org/pgsql-general/2007-02/msg00493.php

---------------------------------------------------------------------------

Ron Mayer wrote:
> Bruce Momjian wrote:
> > Hard to argue with that.
>
> Is it a strong enough argument to add a TODO?
>
>
> I'm thinking some sort of TODO might be called for.
>
> Perhaps two TODOs?
> * Use the OS's priority features to prioritize
> backends (and document that it might work
> better with OS's that support priority inheritance).
> * Investigate if postgresql could develop an
> additional priority mechanism instead of using
> the OS's.
>
> > Ron Mayer wrote:
> >> Magnus Hagander wrote: ...
> >>> quite likely to suffer from priority inversion
> >> ... CMU paper... tested PostgreSQL (and DB2) on TPC-C
> >> and TPC-W ...found that...I/O scheduling through
> >> CPU priorities is a big win for postgresql.
> >>
> >> http://www.cs.cmu.edu/~bianca/icde04.pdf
>
> Setting priorities seems a rather common request,
> supposedly coming up every couple months [5].
>
> The paper referenced [1] suggests that even with
> naive schedulers, use of CPU priorities is very
> effective for CPU and I/O intensive PostgreSQL
> workloads.
>
> If someone eventually finds a workload that does suffer
> worse performance due to priority inversion,
> (a) they could switch to an OS and scheduler
> that supports priority inheritance;
> (b) it'd be an interesting case for a paper
> rebutting the CMU one; and
> (c) they don't have to use priorities.
>
> If a user does find he wants priority inheritance it
> seems Linux[1], BSD[2], some flavors of Windows[3],
> and Solaris[4] all seem to be options; even though
> I've only seen PostgreSQL specifically tested for
> priority inversion problems with Linux (which did
> not find problems but found additional benefit of
> using priority inheritance).
>
>
>
>
> [1] Linux with Priority inheritance showing benefits for
> PostgreSQL
> http://www.cs.cmu.edu/~bianca/icde04.pdf
> [2] BSD priority inheritance work mentioned:
> http://www.freebsd.org/news/status/report-july-2004-dec-2004.html
> [3] Windows priority inheritance stuff:
> http://msdn2.microsoft.com/en-us/library/aa915356.aspx
> [4] Solaris priority inheritance stuff
> http://safari5.bvdep.com/0131482092/ch17lev1sec7
> http://www.itworld.com/AppDev/1170/swol-1218-insidesolaris/
> [5] Tom suggests that priorities are a often requested feature.
> http://svr5.postgresql.org/pgsql-performance/2006-05/msg00463.php
>
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
>
> http://www.postgresql.org/docs/faq

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://www.enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

In response to

Browse pgsql-admin by date

  From Date Subject
Next Message Shane Ambler 2007-03-27 16:42:38 Re: Problems with precompiled pgsql on mac
Previous Message Tom Lane 2007-03-27 13:59:15 Re: [GENERAL] ERROR: out of shared memory

Browse pgsql-general by date

  From Date Subject
Next Message Federico 2007-03-27 15:44:11 Re: [GENERAL] Is there a shortage of postgresql skilled ops people
Previous Message Raymond O'Donnell 2007-03-27 15:34:04 Populate a calendar table

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2007-03-27 15:40:59 Re: sorted results on pgbuildfarm
Previous Message Tom Lane 2007-03-27 14:59:29 Re: sorted results on pgbuildfarm