--- In [email protected], 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.

Reply via email to