Subject Re: DefaultDbCachePages setting
Author ramix001
--- In firebird-support@yahoogroups.com, Thomas Steinmaurer <ts@...> 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).
>
> If Excel and my formula is ok, for 8G RAM, this would mean ~ 327MB per
> *database* under SuperServer.
>
> > For Classic/SuperClassic-Server:
> > (Physical RAM in KB / default page size in KB) * 0.005 (0.5% of total RAM).
>
> Again with 8G RAM, ~ 41MB per *connection* per *database*.
>
> > 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?
>
> Yes, if not choosen to high, because swap to disk is necessary then. And
> be aware, for SuperServer you have to restart the Firebird server
> process after changing the configuration file.
>
> So, how many databases does the server host and how many connections?
>
> > - 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?
>
>
>
> --
> With regards,
> Thomas Steinmaurer
>
> * Firebird Foundation Committee Member
> http://www.firebirdsql.org/en/firebird-foundation/
>
> * Upscene Productions - Database Tools for Developers
> http://www.upscene.com/
>
> * My Blog
> http://blog.upscene.com/thomas/index.php
>


I'm looking for a way, to make Firebird use more RAM, regardless of databases or connections count. It should be automatable and applicable in every (Windows) environment.