Bruce Momjian wrote:
>
> >
> > Hi All
> >
> > I just upgraded to 128MB RAM, and really don't need ALL of it MOST of the
> > time, and the main reason for it was to help with database speed.
> >
> > But then I got to thinking, is there a way to just semi-permently put a
> > database into RAM? so that when a query is done it goes only to the image
> > of the database in RAM, never even touching the hard drive. This would be
> > enormasly faster on 50 ~ 100 (or what ever) MB databases, especially on
> > those new boxes with that 6? or 10? nano second RAM. Especially if one
> > could pick and chose which table(s) to put in RAM
>
> You can tune your OS to use most of that as buffer cache. However,
> writes will be flushed to disk by postgresql fync, or the OS syncing
> every so often, but not too bad. You can also up your postgres shared
> memory buffers, though some OS's have a limit on that.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^^^^^^^^^^^^^^^^
Could we use mmap (instead of shmem) with MAP_ANON flag to get more memory
for shared buffer pool ?
I'm using FreeBSD, man mmap says:
MAP_ANON Map anonymous memory not associated with any specific file.
The file descriptor used for creating MAP_ANON regions is
used only for naming, and may be specified as -1 if no name
is associated with the region.
Vadim