Subject Re: DefaultDbCachePages setting
Author karolbieniaszewski
--- In firebird-support@yahoogroups.com, "ramix001" <ramix001@...> wrote:
>
>
>
>
>
>
> --- In firebird-support@yahoogroups.com, "karolbieniaszewski" <liviuslivius@> wrote:
> >
> >
> >
> > --- In firebird-support@yahoogroups.com, "ramix001" <ramix001@> wrote:
> > >
> > > I'm trying to get more performance out of my Firebird server. A way to do that is to increase amount of RAM Firebird will use. I'm looking for a reliable method to do that.
> > >
> > > I started by increasing the DefaultDbCachePages value in firebird.conf to 8192 in Super-Server installations and to 1024 in Classic/SuperClassic-Server installations. But there wasn't a noticeable performance increase. Then I started to increase the DefaultDbCachePages to higher values using this formula:
> > > For Super-Server:
> > > (Physical RAM in KB / default page size in KB) * 0.04 (4% of total RAM).
> > > For Classic/SuperClassic-Server:
> > > (Physical RAM in KB / default page size in KB) * 0.005 (0.5% of total RAM).
> > > I use this formula only on Windows machines. On Linux this would be counterproductive (I have read). All the databases I use have the default page size of 4 KB and they have no specified cache size (Page Buffers set to 0) only DefaultDbCachePages setting in firebird.conf is being used.
> > >
> > > With this formula setting in some Firebird SuperServer installations the server process crashes after the fifth simultaneous database connection with the error "Allocated nnnnn page buffers of xxxxx requested". So this formula isn't quite correct.
> > >
> > > Please tell me:
> > > - Does increasing then DefaultDbCachePages really help increasing the server performance?
> > > - If it does, are there more things I have to consider to make this formula work properly, e.g. database size, maximum/minimum values, usability with different Firebird versions starting with 1.5?
> > > - What functions do settings like FileSystemCacheSize and FileSystemCacheThreshold have in this context?
> > >
> > >
> > > Thanks and best regards
> > >
> > > Rami B.
> > >
> >
> >
> > Hi.
> >
> > Your formula is wrong
> > you must calculated it in this way
> >
> > ((Free physical RAM in KB without FB started)*0.8 / default page size in KB ) / count of running databases
> >
> > eg. you have 8GB RAM but only free is 4GB RAM and 16KB page size and 7 databases
> >
> > 4 * 1024 * 1024 * 0.8 = 3355443,2
> >
> > 3355443,2 / 16 = 209715,2
> > 209715,2 / 7 = 29 959 Pages only for DefaultDbCachePages for SuperServer - for classic you mast modify formula and add whole conections count in place where count of running databases are
> >
> > Karol Bieniaszewski
> >
>
> Hi Karol,
>
> Thanks for sharing. Where does the 0.8 comes from?
>

This is free memory for other process and windows if from some reason must be consumed and is experimental value - i never have problem with this this settings (never swap to disk)

and as someone say below - this formula is ok only for SuperServer
but i only work with it never with classic ;-)

Karol Bieniaszewski