The FCM buffer pool and memory requirements

In a partitioned database system, the fast communication manager (FCM) buffer shared memory is allocated from the database manager shared memory.

This is shown in Figure 1.

Figure 1. The FCM buffer pool when multiple logical partitions are used
FCM buffer pool components for multiple logical partitions

The number of FCM buffers for each database partition is controlled by the fcm_num_buffers database manager configuration parameter. By default, this parameter is set to automatic. To tune this parameter manually, use data from the buff_free and buff_free_bottom system monitor elements.

The number of FCM channels for each database partition is controlled by the fcm_num_channels database manager configuration parameter. By default, this parameter is set to automatic. To tune this parameter manually, use data from the ch_free and ch_free_bottom system monitor elements.

The Db2® database manager can automatically manage FCM memory resources by allocating more FCM buffers and channels, as needed. This capability leads to improved performance and prevents “out of FCM resource” runtime errors. FCM buffers and channels are allocated from the FCM shared memory set. The size of the FCM shared memory is determined by the configured number of FCM buffers and is always sized to ensure that the number of FCM buffers can be increased by at least 25% over the initially configured FCM_NUM_BUFFERS value.

On the Linux® and AIX operating systems, the database manager can also preallocate an additional 4 GB of system memory for FCM buffers and channels. This extra 4 GB of memory is in addition to the base FCM shared memory set size. The 4 GB of memory space is committed only when FCM buffers or channels need to use this memory. On AIX systems, the extra 4 GB of memory is always enabled. On Linux the additional 4G of memory is the default behavior, but this extra memory can be disabled by setting the FCM_MAXIMIZE_SET_SIZE option of the DB2_FCM_SETTINGS registry variable to NO, or FALSE.