Use Shared memory segment size (-shmsegsize) to specify the size of the largest shared memory segment the server can allocate.
Operating system and syntax UNIX / Windows
-shmsegsize n
Use with Maximum value Minimum value Single-user default Multi-user default
DBS System dependent1 128 for 32-bit systems, 1024 for 64-bit systems. Configuration and system dependent.2
n
The maximum number of bytes, specified in MB or GB, in a shared memory segment. The table below lists the supported values by platform.
Table 1. Values for -shmsegsize
Platform Values in MB Values in GB3
32-bit platforms 128
256
512
1024 1g
2048 2g
4096 4g
64-bit platforms 1024 1g
2048 2g
4096 4g
8192 8g
16384 16g
32768 32g

Specifying shared memory segment size can improve performance. Increasing the size of the shared memory segments decreases the number of segments allocated and reduces the system resources needed to manage the segments. For more information, see Shared memory allocation.

The shared memory segment size (-shmsegsize) parameter may be modified while your database is online using PROMON or through the _DbParams VST. This change will only apply to newly created shared memory extents. It will not apply to existing shared memory extents.

Notes

  • If -shmsegsize is omitted, OpenEdge attempts to fit all shared memory into the fewest segments possible.
  • If the total shared memory required is smaller than the value specified with -shmsegsize, only the required amount is allocated.

You can use this parameter to support continuous operation of the database. For more information, see Change database parameters while the database is running.

1 Limited by available memory.
2 If not specified, the first attempt is to allocate one segment for all the required memory. If the required memory exceeds the operating system maximum segment size, the system maximum size is used.
3 You must include the "g" if you specify the value in gigabytes.