Re: How can I make use of both CPUs in a dual processor - Mailing list pgsql-performance

From John A Meinel
Subject Re: How can I make use of both CPUs in a dual processor
Date
Msg-id 420A22E7.5010501@arbash-meinel.com
Whole thread Raw
In response to How can I make use of both CPUs in a dual processor machine  (Alex <alex@meerkatsoft.com>)
Responses Re: How can I make use of both CPUs in a dual processor
List pgsql-performance
Alex wrote:

> Hi,
> we just got a new dual processor machine and I wonder if there is a
> way to utilize both processors.
>
> Our DB server is basically fully dedicated to postgres. (its a dual
> amd with 4gb mem.)
>
> I have a batch job that periodically loads about 8 million records
> into a table.
> for this I drop the indices, truncate the table, use the copy to
> insert the data, recreate the indices (4 indices), vacuum the table.
>
> That is all done through a perl batch job.
>
> While I am doing this, I noticed that only one CPU is really used.
>
> So here are my questions:
>
> Is there a way to utilize both CPUs
>
For postgres, you get a max of 1 CPU per connection, so to use both, you
need 2 CPU's.

> Is it possible to split up the import file and run 2 copy processes
>
> Is it possible to create 2 indices at the same time
>
You'd want to be a little careful. Postgres uses work_mem for vacuum and
index creation, so if you have 2 processes doing it, just make sure you
aren't running out of RAM and going to swap.

> Would I actually gain anything from that, or is the bottleneck
> somewhere else ?
>
More likely, the bottleneck would be disk I/O. Simply because it is
almost always disk I/O. However, without knowing your configuration, how
much CPU is used during the operation, etc, it's hard to say.

> (perl is a given here for the batch job)
>
> If anyone has some experience or ideas... any hints or help on this
> would be appreciated.
>
> Thanks
> Alex
>
Sorry I wasn't a lot of help. You should probably post your postgres
version, and more information about how much CPU load there is while
your load is running.

John
=:->


Attachment

pgsql-performance by date:

Previous
From: Alex
Date:
Subject: How can I make use of both CPUs in a dual processor machine
Next
From: Alex
Date:
Subject: Re: How can I make use of both CPUs in a dual processor