Re: [QUESTIONS] How to use memory instead of hd?

Vadim B. Mikheev <vadim@sable.krasnoyarsk.su>

From: "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
To: Bruce Momjian <maillist@candle.pha.pa.us>
Cc: Terry Mackintosh <terry@terrym.com>, hackers@postgreSQL.org
Date: 1998-04-22T05:51:15Z
Lists: pgsql-hackers
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