running out kaio
Posted in 2018
Topics: Installation, Setup & Upgrades, Storage & Space Management, Platform-Specific Issues
We are running informix 12.1 FC10 on Linux Red Hat 7 64-bit We enabled direct_io in informix configuration. But sometime instance restart fils and complaints about running out of KAIO processes. A message in online log is given below for reference: "requested number of KAIO events (1282) exceeds limit (645). using 645." We increased the aio-nr value to increase the processes [65K to 200K] but still the current value of aio-nr is approcahing the set limit. Here is the output: [shell]$ cat /proc/sys/fs/aio-max-nr 200000 [shell]$ cat /proc/sys/fs/aio-nr 199355 informix is installed on xfs file-system. Dbspace chunks are on ext4. Below is 'ls -lh' output for root dbspace chunk: -rw-rw---- 1 informix informix 3.2G Mar 2 02:40 /g2/ids_space//rootdbs Can you guide how we can calculate a appropriate value of aio-nr Note: I readon in anold article that direct-io in linux can be used only on block devices, is it the reason for above issue? regards, Kamran
Hi, it looks like another process already comsumes the mayority of your kaio resources. Do you have multiple instances running on this machine ? You can limit the kaio resources for a single instance with an environment variable (before starting the instance): export KAIOON=100000 This allows you to control the consumption of kaio resources. Marcus Haarmann Von: "KAMRAN HAQ" <khaq@i2cinc.com> An: "ids" <ids@iiug.org> Gesendet: Freitag, 2. März 2018 12:16:24 Betreff: running out kaio [40773] We are running informix 12.1 FC10 on Linux Red Hat 7 64-bit We enabled direct_io in informix configuration. But sometime instance restart fils and complaints about running out of KAIO processes. A message in online log is given below for reference: "requested number of KAIO events (1282) exceeds limit (645). using 645." We increased the aio-nr value to increase the processes [65K to 200K] but still the current value of aio-nr is approcahing the set limit. Here is the output: [shell]$ cat /proc/sys/fs/aio-max-nr 200000 [shell]$ cat /proc/sys/fs/aio-nr 199355 informix is installed on xfs file-system. Dbspace chunks are on ext4. Below is 'ls -lh' output for root dbspace chunk: -rw-rw---- 1 informix informix 3.2G Mar 2 02:40 /g2/ids_space//rootdbs Can you guide how we can calculate a appropriate value of aio-nr Note: I readon in anold article that direct-io in linux can be used only on block devices, is it the reason for above issue? regards, Kamran ******************************************************************************* Forum Note: Use "Reply" to post a response in the discussion forum.
What would be the impact on performance if we limit the KAIO to a smaller number or vice versa. Is there any relation of KAIOON parameter with CPU affinity or file-system type?
> What would be the impact on performance if we limit the KAIO to a
> smaller number or vice versa. Is there any relation of KAIOON
> parameter with CPU affinity or file-system type?
KAIO and the KAIOON environment variable are fairly well documented in the
manual:
https://www.ibm.com/support/knowledgecenter/en/SSGU8G_12.1.0/com.ibm.admin.doc/i
ds_admin_0301.htm
The KAIOON parameter is per CPU VP so (num. CPU VPs * KAIOON) must be less
than aio-max-nr. It makes no difference if affinity is in use or not. Your
value of aio-max-nr (200000) is not especially high but then again I don't
know what hardware you have. Ultimately having a low value restricts the
number of concurrent I/O requests that can be passed to the Linux kernel.
If you are using either raw devices or cooked devices with DIRECT_IO you
should be able to take advantage of KAIO. If 'onstat -g ath' shows kaio
threads it is working.
Be aware that if you have a multi-instance machine you should definitely set
KAIOON for both or whichever instance starts first will get the lion's share
of resources.
Ben.
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g