On Mon, Sep 15, 2008 at 11:55 AM, Martin Langhoff <martin.langhoff@xxxxxxxxx> wrote: > ... so RAM allocation for Pg will prob range between 32MB at the > lower-end and 128MB/196MB at the 1GB "recommended" RAM. Assuming a 128MB target, I've been poking and probing with the postgresql.conf and the new settings... - 1/4 of it to shared buffers - 45 max connections - matched to a max of 40 apache/php processes - 2MB work_mem (some complex queries in Moodle require sorts) means 32MB shmem and an unlikely maximum of 90MB taken for work_mem. There is 6MB left over in my "budget" which I expect will be consumed by per-connection overheads. When I start up Pg on this machine, ps_mem.py (a nice smap parse-and-summarise tool) tells me a completely idle postmaster: Private + Shared = RAM used Program (...) 2.9 MiB + 1.0 MiB = 3.9 MiB postmaster (6) These are the changes I'm making to the default postgresql.conf: +max_connections = 45 +## work_mem can also cost up to max_connections * work_mem + +shared_buffers = 32MB +temp_buffers = 8MB +max_prepared_transactions = 5 +work_mem = 2MB +maintenance_work_mem = 16MB +max_stack_depth = 2MB +wal_buffers = 1MB +wal_writer_delay = 1000ms cheers, m -- martin.langhoff@xxxxxxxxx martin@xxxxxxxxxx -- School Server Architect - ask interesting questions - don't get distracted with shiny stuff - working code first - http://wiki.laptop.org/go/User:Martinlanghoff