The following tables describe the environment variables which can be used to enable and configure heap memory managers.
The following environment variable can be used to indicate which memory manager should be used:
Environment Variable | Value | Description |
---|---|---|
QIBM_MALLOC_TYPE | DEFAULT | Indicates that the default memory manager is to be used. |
QUICKPOOL | Indicates that the Quick Pool memory manager is to be used. | |
DEBUG | Indicates that the debug memory manager is to be used. |
If the QIBM_MALLOC_TYPE environment variable is not set, or if it has a value different than one of the above values, the default memory manager is used and all of the following environment variables are ignored.
If QIBM_MALLOC_TYPE is set to DEFAULT, the following environment variable can be used to indicate default memory manager options. Otherwise, the environment variable is ignored.
Environment Variable | Value | Description |
---|---|---|
QIBM_MALLOC_DEFAULT_OPTIONS | MALLOC_INIT:N | Each byte of allocated memory is initialized to this value. |
FREE_INIT:N | Each byte of freed memory is initialized to this value. |
By default, neither allocated memory nor freed memory is initialized.
If QIBM_MALLOC_TYPE is set to QUICKPOOL, the following environment variable can be used to indicate Quick Pool memory manager options. Otherwise, the environment variable is ignored.
Environment Variable | Value | Description |
---|---|---|
QIBM_MALLOC_QUICKPOOL_OPTIONS | POOLS:(C1 E1) (C2 E2) ... (Cn En) | Defines the cell sizes and extent cell counts for each pool. The number of (Cn En) pairs indicate the number of the pools. |
MALLOC_INIT:N | Each byte of allocated memory is initialized to this value. | |
FREE_INIT:N | Each byte of freed memory is initialized to this value. | |
COLLECT_STATS | Indicates to collect statistics and generate a report when the application ends. |
By default, neither allocated memory nor freed memory is initialized. The default behavior is not to collect statistics. If the cell sizes and extent cell counts are not specified or are specified incorrectly, the default configuration values are used, as described earlier in this section.
If QIBM_MALLOC_TYPE is set to DEBUG, the following environment variable can be used to indicate debug memory manager options. Otherwise, the environment variable is ignored.
Environment Variable | Value | Description |
---|---|---|
QIBM_MALLOC_DEBUG_OPTIONS | MALLOC_INIT: N | Each byte of allocated memory is initialized to this value. |
FREE_INIT:N | Each byte of freed memory is initialized to this value. |
By default, neither allocated memory nor freed memory is initialized.