Best installlation for performance

537 views
Skip to first unread message

Iván Díez Peche

unread,
May 25, 2022, 3:35:07 PM5/25/22
to firebird-support
Hi to all,

we have a Firebird 3.0.5  Superserver installed on a 16Gb RAM server. At least 70 concurrent users access the app

We don't have a good performance and as we can see, the CPU is not consuming more that 20%...

Which is the best installation to take advantage of the hardware? is better Superclassic with SMP configuration?..

..please help!!

thanks

Tim Crawford

unread,
May 25, 2022, 4:38:05 PM5/25/22
to firebird...@googlegroups.com, Iván Díez Peche
Hopefully someone who knows more than I do can jump in
and correct any misinformation I am providing....

I assume  you have 4 cores on your server?

Working from memory on this, and based on Windows and superserver,
each database instances will use only one CPU.
If you are not hitting 25% you are not quite maxing out the CPU yet

What you are hoping to see is parallel processing, which as far as I know
is not supported in Firebird.

Oracle has (or had) parallel query, and a quick google indicates
that postgresSql has it, SqlServer and MySql do not.

If you are actually running multiple instances,  I think the default
is to use all CPUs since FB 2.5 (or 3?) but there is a firebird.conf
parameter CpuAffinityMask which can be used to set which processors
can be used.

How large is the database?
The first thing I always check is the the database blocksize and pagebuffers
If you have not updated the pagebuffers the defaults is 2048 which means
only 16 MB of memory is allocated to the database.
I usually bump this up to use (system memory - 2 GB) to fit as much of
the db in memory (assuming the server is only running firebird and
only one instance)
Setting pagebuffers to 1050000 will allocate 8GB of memory to the instance
Again on Windows, if you look in task manager, add the column 'Commit Size'
it will show you the memory committed to the firebird server process.
--
You received this message because you are subscribed to the Google Groups "firebird-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firebird-suppo...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/firebird-support/067b3842-a05b-4c00-a658-dcd009c8fb2cn%40googlegroups.com.

Karol Bieniaszewski

unread,
May 25, 2022, 5:46:07 PM5/25/22
to firebird...@googlegroups.com

Hi

 

If you are talking abaut FB3 then SuperServer is the best choice in 95% of cases.

To track performance issues, you should first recognize the area:

  1. RAM used by server – check DefaultDBCachePages in Firebird.conf, databases.conf or written inside DB itself – gstart -h will show the value.
  2. Look which query have bad performance, and optimize it.
  3. Look at your „HDD” performance, SSD buffers, battery pack, ….

 

Regards,

Karol Bieniaszewski

--

Iván Díez Peche

unread,
May 26, 2022, 2:27:02 AM5/26/22
to firebird-support
thanks to all

the DDBB is about to 40Gb and the queries are pretty optimized..

I also try th AffinityMask with a value of 255 (8 cores) but don't see any performance increase.. I will try some different firebird.conf configurations and let you know the results.

thanks again for your time

Alexey Kovyazin

unread,
May 26, 2022, 3:13:35 AM5/26/22
to firebird-support
Hello,

Advice about CpuAffinity is not for Firebird 3.

Performance review and optimization steps:

1) Generate optimal config

2) Measure your hardware/VM speed to avoid situation that you are trying to work on very slow server:

2) Run trace to analyze your queries 

All steps are free.

Regards,
Alexey Kovyazin
IBSurgeon Software
Greetings from Kazakhstan - Very Nice!


 в 09:27:02 UTC+3, ivandi...@gmail.com:

Mathias Pannier (unitel)

unread,
May 27, 2022, 12:49:19 AM5/27/22
to firebird...@googlegroups.com

Hi,

 

here is another good and free benchmark tool:

https://www.ibexpert.net/ibe/pmwiki.php?n=Main.Benchmark?from=Main.IBExpertBenchmarkTool

 

Firebird does a lot of I/O operations on the hard drive. If You don’t have complex calculations in your database (trigger / stored proc) which use a lot of cpu, I believe HDD/SSD speed or network is mostly the bottleneck.

 

Regards

Mathias

 

Von: firebird...@googlegroups.com [mailto:firebird...@googlegroups.com] Im Auftrag von Alexey Kovyazin
Gesendet: Donnerstag, 26. Mai 2022 09:14
An: firebird-support <firebird...@googlegroups.com>
Betreff: Re: [firebird-support] Best installlation for performance

 

ACHTUNG: Diese E-Mail stammt von einem externen Absender. Bitte vermeiden Sie es, Anhänge oder externe Links zu öffnen.

 

ub.unitel GmbH, Schulstraße 16, 06792 Sandersdorf-Brehna
Geschaeftsfuehrung Klaus Richter, Olaf Meyer
Amtsgericht Stendal
HRB 26389 FA Bitterfeld Steuernr. 116/107/08597 Ust.identNr. DE815796778
Deutsche Bank IBAN DE53 86070024 0 6143234 00
Kreissparkasse Anhalt-Bitterfeld IBAN DE69 80053722 0 3050326 82
_____________________________________________________________________
Dieses E-Mail ist nur für den Empfänger bestimmt, an den es gerichtet
ist und kann vertrauliches bzw. unter das Berufsgeheimnis fallendes
Material enthalten. Jegliche darin enthaltene Ansicht oder Meinungs-
äußerung ist die des Autors und stellt nicht notwendigerweise die
Ansicht oder Meinung von ub.unitel GmbH dar.
Sind Sie nicht der Empfänger, so haben Sie diese E-Mail irrtümlich
erhalten und jegliche Verwendung, Veröffentlichung, Weiterleitung,
Abschrift oder jeglicher Druck dieser E-Mail ist strengstens untersagt.
_____________________________________________________________________

Mathias Pannier (unitel)

unread,
May 27, 2022, 12:50:54 AM5/27/22
to firebird...@googlegroups.com

Hi,

 

can you specify: “We don't have a good performance and as we can see”?

 

While running a complex calculation?

While retrieving data over the network?

While selecting or inserting records?

 

Regards

Mathias

 

Von: firebird...@googlegroups.com [mailto:firebird...@googlegroups.com] Im Auftrag von Iván Díez Peche
Gesendet: Mittwoch, 25. Mai 2022 16:12
An: firebird-support <firebird...@googlegroups.com>
Betreff: [firebird-support] Best installlation for performance

 

ACHTUNG: Diese E-Mail stammt von einem externen Absender. Bitte vermeiden Sie es, Anhänge oder externe Links zu öffnen.

 

Hi to all,

--

You received this message because you are subscribed to the Google Groups "firebird-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firebird-suppo...@googlegroups.com.
To view this discussion on the web, visit https://groups.google.com/d/msgid/firebird-support/067b3842-a05b-4c00-a658-dcd009c8fb2cn%40googlegroups.com.

ub.unitel GmbH, Schulstraße 16, 06792 Sandersdorf-Brehna

Alexey Kovyazin

unread,
May 27, 2022, 2:34:28 AM5/27/22
to firebird...@googlegroups.com


Regards, 
Alexey Kovyazin 
IBSurgeon Software 



Mathias Pannier (unitel) <pan...@ubsysteme.de>:

Mathias Pannier (unitel)

unread,
May 27, 2022, 3:20:17 AM5/27/22
to firebird...@googlegroups.com

Thank You for sharing this information. It was new for me. I've learned something new again…

Iván Díez Peche

unread,
Jun 2, 2022, 2:26:41 AM6/2/22
to firebird-support
Good morning,

we don't have good performace in general. It seems that the Firebird is not running more than 10% of CPU which affects to all performance.

thanks

liviuslivius

unread,
Jun 2, 2022, 5:02:33 AM6/2/22
to firebird...@googlegroups.com
Hi

Did you checked settings mentioned previously? How many RAM FB use? Did you checked this? How big is sort buffer?
Why it is important step to check? Becouse, if server must read every time data from HDD then it cannot spend time on query calculations so low CPU usage. This is simplification but you cannot miss this step.



Regards,
Karol Bieniaszewski


-------- Oryginalna wiadomość --------
Od: Iván Díez Peche <ivandi...@gmail.com>
Data: 02.06.2022 08:26 (GMT+01:00)
Do: firebird-support <firebird...@googlegroups.com>
Temat: Re: [firebird-support] Best installlation for performance

Virgo Pärna

unread,
Jun 2, 2022, 7:07:42 AM6/2/22
to firebird...@googlegroups.com
On 02.06.2022 12:02, liviuslivius wrote:
>
> Did you checked settings mentioned previously? How many RAM FB use? Did
> you checked this? How big is sort buffer?
> Why it is important step to check? Becouse, if server must read every
> time data from HDD then it cannot spend time on query calculations so
> low CPU usage. This is simplification but you cannot miss this step.
>

Also, how many CPU cores does server have? And what is operating
system. Because single simultaneous query can only but load on single
core. And on windows on 8 core CPU with one core at 100% CPU usage of
and others in idle is only going to be 12.5%.

--
Virgo Pärna
Gaiasoft OÜ
vi...@gaiasoft.ee
Reply all
Reply to author
Forward
0 new messages