Informix Warehouse Accelerator

The HCL Informix Warehouse Accelerator product (IWA) is subject to a licensed resource limit. Like IDS, the configuration parameter is LICENSE_SERVER and is set in the $INFORMIXDIR/dwa/etc/dwainst.conf file. Setting the parameter requires running the ondwa setup command, just like any other change in the dwainst.conf file.

The host identifier used by FlexNet for IWA is similar to IDS, in that it uses the hostname, an unique machine identifier, and an instance number, separated by colons. For IDS, the instance number is the same as the SERVERNUM from the onconfig file, ranging from 0-255. IWA uses a fixed instance number of 256. This allows for IDS and IWA to co-exist on the same machine.

License Calculation

The number of necessary licenses is calculated based on the total work load amongst the IWA cluster.
licenses required = number of nodes in IWA * maximum number of scan threads
The minimum number of nodes is 2 (one coordinator, one worker). The maximum number of scan threads depends on:
  • The number of CPUs visible on the coordinator node (from /proc/cpuinfo).
  • The setting of the configuration parameter CPU_PERCENTAGE_SCAN in dwainst.conf.
  • If IWA runs as a cluster, or on a single machine.
When ondwa setup is run it uses the CPU_PERCENTAGE_SCAN from dwainst.conf and, if running on a single machine, it divides the value by the number of nodes (because all nodes share the same CPUs), or if running on a cluster it leaves the parameter as it is.

The result is written to the individual configuration files for the specific nodes as the parameter CORES_FOR_SCAN_THREADS_PERCENTAGE. To calculate the maximum number of scan threads, the coordinator node takes this value, multiplies it by the number of available CPUs, and divides by 100. This is illustrated in the following examples:

Example A

A system with 2 nodes (1 coordinator, 1 worker), on a single machine with 16 CPUs, and CPU_PERCENTAGE_SCAN=30:
In the configuration file  <DWADIR>/node0.conf: CORES_FOR_SCAN_THREADS_PERCENTAGE=15
maximum number of scan threads = 16 * 15 / 100 = 2 (integer division)
required licenses = 2 (nodes) * 2 (max. scan threads) = 4 licenses

Example B

A system with 3 nodes (1 coordinator, 2 workers), in a cluster configuration with 16 CPUs per node,
 and CPU_PERCENTAGE_SCAN=100:
In <DWADIR>/node0.conf: CORES_FOR_SCAN_THREADS_PERCENTAGE=100
maximum number of scan threads = 16 * 100 / 100 = 16
required licenses = 3 (nodes) * 16 (max. scan threads) = 48 licenses

Copyright© 2020 HCL Technologies Limited