Re: Priorities for users or queries? - Mailing list pgsql-general

From Bruce Momjian
Subject Re: Priorities for users or queries?
Date
Msg-id 200703271536.l2RFaVK07108@momjian.us
Whole thread Raw
In response to Re: Priorities for users or queries?  (Ron Mayer <rm_pg@cheapcomplexdevices.com>)
List pgsql-general
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@momjian.us>          http://momjian.us
  EnterpriseDB                               http://www.enterprisedb.com

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

pgsql-general by date:

Previous
From: Raymond O'Donnell
Date:
Subject: Populate a calendar table
Next
From: Federico
Date:
Subject: Re: [pgsql-advocacy] Is there a shortage of postgresql skilled ops people