Making SMP more effective

Replication Server configuration parameter: smp_enable

To determine the number of processors required to make effective use of SMP, establish a base of two processors plus one more for every four queues. Processor speed may determine whether these numbers are correct to meet your performance needs. If you have outbound queues supporting parallel DSI, and there are more than 12 DSI Executor threads, you may want to increase the processor/thread ratio for outbound queues—one processor for every three or even two outbound queues.

Replication Server always uses a finite number of threads based on the number of supported connections and routes. Even if all threads are to be kept always busy, making more and more processors available to Replication Server will eventually cause “CPU saturation”—beyond which more processors will not increase performance. At that point, any performance issues you experience as a result of CPU resources may best be addressed by introducing CPUs running at faster speeds.

In some cases, there is evidence that making too many processors available to Replication Server can actually decrease performance. In such cases, the issue seems to be the amount of time taken to force thread context switches among the available processors. Use your operating system (OS) monitoring utilities to monitor the OS’s management of the Replication Server process and its threads. These utilities will help you determine if a reduction in CPUs made available to Replication Server reduces the number of such context switches.