John,

> -work_mem

Depends on the number of concurrent queries you expect to run and what size 
sorts you expect them to do.

> -maintenance_work_mem - 50% of the largest table?

Actually, in current code I've found that anything over 256mb doesn't actually 
get used.

> -shared_buffers - max value 50000

Actually, I need to update that.   On newer faster multi-core machines you may 
want to allocate up to 1GB of shared buffers.

> -effective_cache_size - max 2/3 of available ram, ie 24GB on the
> hardware described above

Yes.

> -shmmax - how large dare I set this value on dedicated postgres servers?

Set it to 2GB and you'll be covered.

> -checkpoint_segments - this is crucial as one of the server is
> transaction heavy

Well, it only helps you to raise this if you have a dedicated disk resource 
for the xlog.   Otherwise having more segments doesn't help you much.

> -vacuum_cost_delay

Try 200ms to start.

Also, set wal_buffers to 128.

-- 
Josh Berkus
PostgreSQL @ Sun
San Francisco

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to