SHMTOTAL configuration parameter

Use the SHMTOTAL configuration parameter to specify the total amount of shared memory (resident, virtual, communications, and virtual extension portions) to be used by the database server for all memory allocations. The onconfig.std value of 0 implies that no limit on memory allocation is stipulated.

onconfig.std value
SHMTOTAL 0
values
0 = (no specific limit) or any integer greater than or equal to 1
units
Kilobytes
takes effect
  • After you edit your onconfig file and restart the database server.
  • When you reset the value dynamically in your onconfig file by running the onmode -wf command.
  • When you reset the value in memory by running the onmode -wm command.

Usage

You can use the SHMTOTAL configuration parameter to limit the demand for memory that the database server can place on your system. However, applications might fail if the database server requires more memory than the limit imposed by SHMTOTAL. When this situation occurs, the database server writes the following message in the message log:
size of resident + virtual segments xx + yy > zz total allowed by
configuration parameter SHMTOTAL
This message includes the following values.
Value
Description
xx
Current size of resident segments
yy
Current size of virtual segments
zz
Total shared memory required

If you enabled the LOW_MEMORY_MGR configuration parameter and are configuring the server to use a percentage of the SHMTOTAL configuration parameter value for automatic low memory management start and stop thresholds, the SHMTOTAL configuration parameter must not be set to 0 (unilmited).

Attention: Changing the value of the SHMTOTAL configuration parameter value can cause the configuration of automatic low memory management to become invalid, forcing the database server to use the default settings.
UNIX Only:

Set the operating-system parameters for maximum shared-memory segment size, typically SHMMAX, SHMSIZE, or SHMALL, to the total size that your database server configuration requires. For information about the amount of shared memory that your operating system allows, see the machine notes.

If you have more physical memory than the value specified in the machine notes, and the memory is to be used by IBM® Informix®, you can increase the value of the SHMALL parameter to as much 90 percent of the physical memory that is specified for your computer. It is recommended that you do not meet or exceed the available RAM.