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
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? |