The Server Mode configuration option for the PrismMQ service helps improve performance for high-performance, multi-CPU systems (four CPU cores or more) when high-throughput and increased processing power are needed. For example, during initialization, the server is trying to quickly import and process many records; however, Windows default power management settings can end up throttling performance on high-performance machines. Server Mode enables you to bypass some of these default Windows power management settings so that servers can make more efficient use of available computing resources.
Enabling Server Mode results in increased CPU usage. We recommend that you only enable Server Mode when it is needed and then disable it when no longer needed.
This topic includes information about the following:
- Background about the PrismMQ service and default thread settings in Prism
- How to enable Server Mode and what changes it will make
- How Server Mode can improve server performance
- Windows power management settings and Server Mode
- Limited to systems with four CPU cores or more.
- Server Mode is intended If you use the same machine as both a server and a workstation, then you probably shouldn't use Server Mode. The Server Mode feature is meant for machines dedicated for use as a server.
- Intended for use on a temporary basis during times when increased processing power and throughput are needed.
About the PrismMQ Service and Server Mode
Server Mode is one of the configuration options for the PrismMQ service. The PrismMQ Service controls many settings related to replication, including the number of threads available for use during replication.
By default, the thread counts for Prism and V9 Day-to-Day and Initialization are set to half the CPU Count (CPU Count / 2). This setting ensures that Prism doesn't consume too much of the CPU power when it is first installed.
When Server Mode is enabled, the maximum thread count for Prism and V9 Day to Day and Initialization is set to one less than the total number of CPU cores (CPU Count - 1). Consumer threads will spin up as needed and spin down when no longer needed.
If you later disable Server Mode, the thread counts will be reset to the defaults. (Five threads for Day to Day, 20 for initialization).
Enable Server Mode
To enable Server Mode, edit the PrismMQ configuration file in the Service Manager area of Tech Toolkit. The Server Mode checkbox is found toward the bottom of the configuration screen, in the "General" area.
Changing Server Mode Settings on the Fly in Service Manager
You can increase/decrease the Thread Counts in Service Manager while initialization is running.
Day to Day Processing is Paused during Initialization
Although not directly related to Server Mode, it is important to understand that during initialization, Prism pauses Day-to-Day consumers. This prevents updates sent during Day to Day replication from updating records that are being initialized. When initialization finishes, Day-to-Day processing resumes.
Editing .ini file to exceed Server Mode Limits
Users can manually edit the configuration file for the service (PrismMQService.ini). If the file is edited so that the thread count exceeds the limits for Server Mode, when the service is bounced (to apply the changes), the previous limits will be reapplied. For example, if you set the Thread Count to be equal to the number of CPU cores, the setting will be ignored and Server Mode will continue to use a maximum thread count of one fewer than the total number of CPU cores (CPU Count - 1).
CPU Core Parking
The main default Windows power-saving feature that Server Mode overrides is called CPU Core Parking. CPU Core Parking dynamically disables CPU cores to conserve power when idle, and this is normally a good thing. Enabling Server Mode will disable CPU Core Parking. The state of individual parked cores can be observed in Resource Monitor under the CPU tab, on the right side.
Changing Windows Power Options to High Performance
After enabling Server Mode for Prism, you should also adjust the Power Plan setting in Windows. BThis step is recommended but not required. By default, Windows Power Options are set to "Balanced". On a multi-core system, this will periodically set one or more CPUs to sleep to give the processors a rest. To get full benefit of Server Mode, you should set the Power Options to High Performance.
Open the Control Panel. In the Hardware area is an option called Power Options. Click Show additional plans. The High Performance option is displayed. Click Change plan settings and click the High Performance radio button.
Disabling Server Mode
When Server Mode is no longer needed:
Disable the Server Mode checkbox for PrismMQService in the Service Manaer area of Tech Toolkit.
Change the Windows Power Management Plan back to "Balanced".