Starting with the Strategy Intelligence Server Universal 9.X, users may choose to use shared memory for inter-process communication (IPC) between the Intelligence Server process and the child processes created for communication with data sources (M8MulPrc / MJMulPrc / M8PrcSvr). The following tech note provides additional information about the new shared memory for IPC feature:
When shared memory is selected during installation, the Strategy Intelligence Server checks the current settings for kernel parameters related to shared memory and semaphores. If the value detected is lower than the suggested value, a warning message similar to the following is output to the console:
mstr_check_max_semaphore: WARNING: maximum number of semaphore arrays 1024 is low; please increase to 2048 or greater to use high performance share memory IPC.
The Strategy Intelligence Server checks the kernel shared memory and semaphore settings by running some system commands. The following are a list of the commands run on the different Unix/Linux operating systems:
LinuxThe maximum number of system wide semaphore sets / IDs can be found using:
$ /sbin/sysctl -n kernel.sem | cut -f 4
The maximum number of shared memory identifiers at any given time:
$ /sbin/sysctl -n kernel.shmmni
SolarisThe maximum number of shared memory identifiers at any given time:
$ sysdef | grep -i SHMMNI
The maximum number of semaphores in the system:
$ sysdef | grep -i SEMMNS
The maximum number of system wide semaphore sets / IDs:
$ sysdef | grep -i SEMMNI
Additionally, the max-sem-ids and the max-shm-ids from prctl are checked at installation:
$ prctl -t privileged $$
HP-UXThe maximum number of segments per process:
$ kctune -P current shmseg | tr -d current
The maximum number of shared memory identifiers at any given time:
$ kctune -P current shmmni | tr -d current
The maximum number of semaphores in the system:
$ kctune -P current semmns | tr -d current
The maximum number of system wide semaphore sets / IDs:
$ kctune -P current semmni | tr -d current
AIXMaximum settings are not checked. The kernel dynamically adjusts the limits, or the setting does not exist.
Third Party Software Installation WARNING
The third-party product(s) discussed in this technical note is manufactured by vendors independent of Strategy. Strategy makes no warranty, express, implied or otherwise, regarding this product, including its performance or reliability.