Configuring ELMA to use several CPU cores
Firebird DBMS, included in ELMA, uses only one CPU core. If you install the system on a multicore CPU server, the DBMS will still use only one core, the others will remain idle.
Therefore, we recommend installing ELMA on a server with at least a dual-core CPU: one core works with Firebird, and another with ELMA and the OS.
Firebird can use several server CPU cores.
Using the multicore DBMS version is recommended if:
- ELMA works slowly.
- ELMA is installed on a server with a multicore CPU (four and more).
If ELMA has no performance issues and the pages are loaded quickly enough, you should not switch to the multicore Firebird DBMS, since it is linked with certain limitations and inconveniences.
Installing Firebird with the multicore support
You are going to need the Firebird Classic Server version. You can download it here:
Select the version compatible with the server OS bitness.
You can install Firebird Classic Server along with Firebird SuperServer (installed with ELMA3). There is no need to uninstall the existing Firebird SuperServer.
Installation is performed with a wizard. By default, SuperServer is selected in the wizard. Select Classic Server:
All the other installation parameters are selected as usual.
Connecting ELMA to an installed Firebird DBMS
After installing Firebird ClassicServer, open the ELMA configuration file (..\ELMA-[Edition]\UserConfig\configuration.config) and change the database server connection port from 3056 to 3050.
After each update of ELMA, Firebird Superserver will be installed automatically and the database server connection port will be overwritten in the configuration file. Therefore, after each system update, you will have to specify the 3050 port again.
Limitations in ELMA with the multicore Firebird
When publishing any system objects (processes, documents, objects) you have to restart the server.
Therefore, after publishing any object:
- Close the Designer.
- Stop the ELMA web server
- Restart the Firebird DBMS
- Start the ELMA web server
Otherwise, ELMA will not work properly after publishing the object.