VP_MEMORY_CACHE_KB configuration parameter

Use the VP_MEMORY_CACHE_KB parameter to create a private memory cache for each CPU virtual processor and tenant virtual processor.

onconfig.std value
VP_MEMORY_CACHE_KB 0
values
0 = Off
The total size of all private memory caches, optionally followed by a comma and the mode of the caches.
Size, in KB:
  • 800 to 40% of the SHMTOTAL configuration parameter value.
Mode:
  • STATIC = Default. The specified size is the maximum combined size of all private memory caches.
  • DYNAMIC = The specified size is the initial size of all private memory caches. The cache size changes dynamically but cannot exceed the value of the SHMTOTAL configuration parameter.
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

Private memory caches can improve performance for memory that is allocated by threads in the Informix® server. Private memory caches have no impact on the memory that is allocated to and used by buffer pools or shared memory communication.

When you set the value of the VP_MEMORY_CACHE_KB configuration parameter to a number other than 0, a private memory cache is created for each CPU virtual processor and tenant virtual processor. By default, size of all private memory caches combined is limited to the specified number of KB.

If you want the size of each private memory cache to increase and decrease automatically, as needed, include a comma and the word DYNAMIC after the size, for example, VP_MEMORY_CACHE_KB 1000,DYNAMIC. Although the maximum initial size of all private memory caches combined cannot exceed 40 percent of the value of the SHMTOTAL configuration parameter, with DYNAMIC mode set, the size of the caches can expand beyond the initial limit. The total size of the caches cannot exceed the value of the SHMTOTAL configuration parameter. DYNAMIC mode can improve performance when many threads are disconnecting at the same time or there is contention for the shared memory lock. You can use the onstat -g wmx command to display information about mutexes, such as the shared memory lock mutex shmcb sh_lock, and any threads waiting on mutexes.

Attention: Dynamic memory caches on busy systems can grow quickly and use a large amount of available memory. Therefore, if you set the mode to DYNAMIC, set the SHMTOTAL configuration parameter to a specific limit instead of the default value of 0, which does not limit the amount of memory.

If you reset the VP_MEMORY_CACHE_KB configuration parameter to 0, the memory caches are emptied and disabled.

The onstat -g vpcache command returns statistics about private memory caches.


Copyright© 2019 HCL Technologies Limited