Re: "Priority Mechanisms for OLTP and Transactional Web Applications"

Поиск
Список
Период
Сортировка
От Dann Corbit
Тема Re: "Priority Mechanisms for OLTP and Transactional Web Applications"
Дата
Msg-id D425483C2C5C9F49B5B7A41F89441547055B49@postal.corporate.connx.com
обсуждение исходный текст
Список pgsql-hackers
Yes.  Something simple that can provide clear, tangible benefits is the
best kind of improvement.

I am sure that adding parameters to the command line of PostgreSQL which
enables superior tuning for differing computer systems would be wildly
appreciated.

> -----Original Message-----
> From: cache+@cs.cmu.edu [mailto:cache+@cs.cmu.edu]
> Sent: Wednesday, May 04, 2005 11:40 AM
> To: Dann Corbit
> Cc: harchol@cs.cmu.edu; natassa@cmu.edu; bianca@cs.cmu.edu;
> cache@cs.cmu.edu
> Subject: "Priority Mechanisms for OLTP and Transactional Web
Applications"
>
>
> In our experimentation, we simply used a user-defined function to
> handle changing the priority of transactions' threads.  It shouldn't
> be hard to port the implementation back into postgres --- and
> provide an administrative mechanism to assign priorities.  Do you
> think that PostgreSQL core would be interested in integrating
> priorities of service in this manner?  I'd be very interested in
> helping out with this.
>
> -David
>
>
> Dann Corbit writes:
>  > I have a question about your conclusion and the experiments as they
>  > relate to the PostgreSQL database.  In the paper, we find this:
>  >
>  >
>  >
>  > "For example, we find that for PostgreSQL running under TPC-C, the
>  > simplest CPU scheduling algorithm CPU-Prio provides a factor of 2
>  > improvement for the high-priority transactions, and adding priority
>  > inheritance (CPU-Prio-Inherit) brings this up to a factor of near 6
>  > improvement under high loads, while hardly penalizing low-priority
>  > transactions.  For PostgreSQL running under the TPC-W workload, we
find
>  > that the best scheduling algorithm is the simplest CPU scheduling
> policy
>  > CPU-Prio, which improves performance for high-priority transactions
by
> a
>  > factor of up to 5. The reason why inheritance is more effective for
the
>  > TPC-C example above is that TPC-C has much more data contention
than
>  > TPC-W, leading to more priority inversions."
>  >
>  >
>  >
>  > To change the scheduling of the threads, did you modify the source
code
>  > of the PostgreSQL database?  If so, are the modifications
available?
>  >
>  >
>  >
>  > It seems that you have achieved a very significant performance
boost by
>  > a priority change, and I would be interested to know if the
>  > modifications are available and also if they can be plowed back
into
> the
>  > PostgreSQL core.
>  >
>  >
>  >
>  > <html xmlns:o="urn:schemas-microsoft-com:office:office"
> xmlns:w="urn:schemas-microsoft-com:office:word"
> xmlns="http://www.w3.org/TR/REC-html40">
>  >
>  > <head>
>  > <META HTTP-EQUIV="Content-Type" CONTENT="text/html;
charset=us-ascii">
>  > <meta name=Generator content="Microsoft Word 11 (filtered medium)">
>  > <style>
>  > <!--
>  >  /* Style Definitions */
>  >  p.MsoNormal, li.MsoNormal, div.MsoNormal
>  >     {margin:0in;
>  >     margin-bottom:.0001pt;
>  >     font-size:12.0pt;
>  >     font-family:"Times New Roman";}
>  > a:link, span.MsoHyperlink
>  >     {color:blue;
>  >     text-decoration:underline;}
>  > a:visited, span.MsoHyperlinkFollowed
>  >     {color:purple;
>  >     text-decoration:underline;}
>  > span.EmailStyle17
>  >     {mso-style-type:personal-compose;
>  >     font-family:Arial;
>  >     color:windowtext;}
>  > @page Section1
>  >     {size:8.5in 11.0in;
>  >     margin:1.0in 1.25in 1.0in 1.25in;}
>  > div.Section1
>  >     {page:Section1;}
>  > -->
>  > </style>
>  >
>  > </head>
>  >
>  > <body lang=EN-US link=blue vlink=purple>
>  >
>  > <div class=Section1>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'>I have a question about your conclusion and the
> experiments
>  > as they relate to the PostgreSQL database.  In the paper, we
find
> this:<o:p></o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'><o:p> </o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'>"For example, we find that for PostgreSQL
> running under
>  > TPC-C, the simplest CPU scheduling algorithm CPU-Prio provides a
factor
> of 2
>  > improvement for the high-priority transactions, and adding priority
> inheritance
>  > (CPU-Prio-Inherit) brings this up to a factor of near 6 improvement
> under high
>  > loads, while hardly penalizing low-priority transactions.  For
> PostgreSQL
>  > running under the TPC-W workload, we find that the best scheduling
> algorithm is
>  > the simplest CPU scheduling policy CPU-Prio, which improves
performance
> for
>  > high-priority transactions by a factor of up to 5. The reason why
> inheritance
>  > is more effective for the TPC-C example above is that TPC-C has
much
> more data
>  > contention than TPC-W, leading to more priority
> inversions."<o:p></o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'><o:p> </o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'>To change the scheduling of the threads, did you
> modify the
>  > source code of the PostgreSQL database?  If so, are the
> modifications
>  > available?<o:p></o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'><o:p> </o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'>It seems that you have achieved a very
significant
>  > performance boost by a priority change, and I would be interested
to
> know if
>  > the modifications are available and also if they can be plowed back
> into the
>  > PostgreSQL core.<o:p></o:p></span></font></p>
>  >
>  > <p class=MsoNormal><font size=2 face=Arial><span style='font-
> size:10.0pt;
>  > font-family:Arial'><o:p> </o:p></span></font></p>
>  >
>  > </div>
>  >
>  > </body>
>  >
>  > </html>
>
> --
> Hollywood is where if you don't have happiness you send out for it.
>         -- Rex Reed


В списке pgsql-hackers по дате отправления:

Предыдущее
От: "Gavin M. Roy"
Дата:
Сообщение: Re: inclusions WAS: Increased company involvement
Следующее
От: Robert Treat
Дата:
Сообщение: Re: [pgsql-advocacy] Increased company involvement