Thread: parallel transactions in SMP

parallel transactions in SMP

From
Kuan Chen
Date:
I have a 4 processor Origin 200 and have it running PostgreSQL 7.1.2.

I load it with a database with two tables and fill them with 200 and 50
tuples, respectively:

CREATE TABLE a
(
        keya INTEGER,
        dataa VARCHAR(20),
        PRIMARY KEY (keya)
);

CREATE TABLE b
(
        keyb INTEGER,
        datab VARCHAR(20),
        PRIMARY KEY (keyb)
);

I run two client processes that each perform a SELECT on one of the table.
That is, process 1 SELECTs on a and process 2 SELECTs on b. So each
process accesses independent tables in the same database.

My obeservation in top is that the Postgres backends do not seem to scale
far beyond 1 processor. Typically, CPU utilization adds up to around 100%.
There are no explicit LOCK and the database should be small enough to run
in the buffer cache (so no I/O problems). The clients are running on the
same machine as the server.

Does anyone have any idea why this is not scaling?


Kuan Chen


Re: parallel transactions in SMP

From
Tom Lane
Date:
Kuan Chen <kchen@bastula.com> writes:
> I have a 4 processor Origin 200 and have it running PostgreSQL 7.1.2.

Try 7.2.

            regards, tom lane