"Peter T. Brown" wrote:
> But how can Postgres be 'forced' to keep a table in memory? I've noticed
> that on our Dual Pentium4, 1GB RAM machine, the size of the individual
> postgres threads is very small. Top reports it as like 5K or 20K (I believe
> that's what it means). Shouldn't this number be 100's of MB if postgres is
> properly moving my tables to RAM? I do notice that the system cache is very
> very large... Is there any way to specify that a certain table should have
> priority for being transferred into RAM? Should I reduce the system cache
> size so that postgres has more room to play with?
>
> Thanks for any help!
>
> here is a top dump:
>
I don't know about linuxes, so I can't tell u about cache, what I can tell u
is if u asign a high number to shared_buffers(I would use 65536 for 1Gb ram
machine)
and a high sort_mem(16384kb on this machine) in postgres.conf u can do that
all the data a query needs could be on memory.
here is sizes for one of our backends(i've no time so i don't leave him to
charge all in memory(659M demanded 15M used) with a 100Mb base(a lot more with
indexes)
PID PGRP USERNAME PRI SIZE RES STATE TIME WCPU% CPU% COMMAND
97441 94523 lamigo 20 659M 15M sleep 0:00 8.8 8.83
postgre
this is a memory snap shot of a typical load(7 backends with AD-HOC queries)
IRIX64 congrio 6.5 IP25 load averages: 6.04 5.03
3.73
20:19:56
97 processes: 90 sleeping, 7 running
8 CPUs: 25.3% idle, 72.1% usr, 2.5% ker, 0.0% wait, 0.0% xbrk, 0.1% intr
Memory: 1024M max, 940M avail, 221M free, 2304M swap, 2294M free swap
feel free of making questions
hope it helps
regards