Subject Re: [firebird-support] Firebird's default settings
Author Ann Harrison
On Mon, Jul 16, 2012 at 4:46 AM, Josef Kokeš <j.kokes@...>wrote:

> Hi!
>
> .... Specifically, assuming Firebird
> 2.5 in the default install (which, I believe, is using SuperServer):
>
> - CpuAffinityMask - I can see why the value 1 would be a safe lower
> bound, but why doesn't the server default to a value which would use all
> available CPU cores? (That is, if CpuAffinityMask is not explicitly set,
> use all available CPUs.) Can I expect some adverse effects from setting
> CpuAffinityMask to 3 on a dual core system?
>

The problem is that SuperServer is multi-threaded but not interlocked, so
only one
thread runs at a time so it cannot take advantage of multiple cores. Some
operating
systems move the process from one core to another in an attempt to balance
load.
That degrades performance, but can be prevented by setting the CPU affinity
to a
specific core.

>
> - DefaultDbCachePages - why the value 2048? Given the usual settings,
> that means only 8 MB is used for database cache (per database).


Firebird was designed to run with fewer than 100 pages in cache - the
original
version was validated with a ten page cache. Yes, no modern hardware,
increasing
the cache makes sense.


> Again, if I increase the number
> to say 131072 pages (8192 bytes page size, one database only) on a 2.5
> GB RAM system, can I expect any adverse effects?
>

Assuming you're using a 64 bit architecture for server and operating
system, it
should help. However, the usefulness of a large cache is somewhat
application
and data dependent, so I'd try it on a test machine rather than launching it
directly in production.

Good luck,

Ann


[Non-text portions of this message have been removed]