Re: PostgreSQL process architecture question.

From: "Holger Hoffstaette" <holger(at)wizards(dot)de>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: PostgreSQL process architecture question.
Date: 2008-09-09 16:30:17
Message-ID: pan.2008.09.09.16.30.17.487875@wizards.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Tue, 09 Sep 2008 10:07:32 -0600, Scott Marlowe wrote:

> On Tue, Sep 9, 2008 at 9:35 AM, Amber <guxiaobo1982(at)hotmail(dot)com> wrote:
>> We know PostgreSQL uses one dedicated server process to serve one client
>> connection, what we want to know is whether PostgreSQL use multiple threads
>> inside agents processes to take advantage of multiple CPUs. In our site we
>> have only a few concurrent connections, so what occurs inside agent process
>> is very important to us.
>
> No it doesn't. One connection gets one process which uses one CPU at a time.

I understand the history/technical reasons/motivation for this, yet want
to ask if anybody has thought about using OpenMP for careful
parallelization of per-process work sections? Scanning large (e.g. already
locked) arrays, parallel sweeps or calculations might benefit from
parallelizatoin without requiring a full-out threaded design. Such an
approach could retain the per-process isolation model yet still reap
multicore benefits. To boot OpenMP is pretty easy to use and comes with
gcc.

Since I don't know much about PG's internals and their data dependencies
etc. this might well be a dumb idea, but I figured asking couldn't hurt. :)

regards
Holger

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Darren Weber 2008-09-09 17:35:12 Re: OS X library path issues for libpq (ver 8.3)
Previous Message Scott Marlowe 2008-09-09 16:24:22 Re: Various intermittent bugs/instability - how to debug?