Note:This topic was updated for 9.3.1.
The diagram below illustrates the Informix Dynamic Server's memory management. At the beginning of a transaction, pages are read into the data buffers from disk. A least-recently used (LRU) queue is selected at random, and the address of the data buffer pages is added to the most recently used end of the free least-recently used (FLRU) queue. Changes to the data stored in the data buffers move the buffers from the FLRU queue to the modified least recently used queue. A change also causes the before image of the data buffer page to be written to the physical log buffer, and the modifying SQL statement is written to the logical log buffer. When these buffers become full, they are written to a corresponding file. In addition, the logical log files must be archived in order to roll the transactions forward in the event of a system failure. The page cleaner processes periodically wake up and write the accumulated changed data to disk. The page cleaners are activated whenever the user's process detects that the percent of dirty pages listed in the modified least-recently used (MLRU) queue exceeds LRU_MAX_DIRTY. The page cleaners continue to write the dirty pages to disk until the percent of dirty pages is less than LRU_MIN_DIRTY.
The onconfig parameters you can alter to tune memory areBUFFERSCLEANERSLRU_MIN_DIRTYLRU_MAX_DIRTYLOGBUFFPHYSBUFFRESIDENT
For an explanation of and suggested settings for these parameters, see Informix initialization parameters.
For a complete examination of memory tuning, you should consult the INFORMIX-Universal Server Administrator's Guide and the INFORMIX-Universal Server Performance Guide.