Monitor FIFO virtual processors

You can monitor the effective usage of FIFO VPs with onstat commands.

Use the onstat -g ioq option to display the length of each FIFO queue that is waiting to perform I/O requests. The following example shows sample output.
AIO I/O queues:
q name/id    len maxlen totalops  dskread dskwrite  dskcopy
 fifo   0      0      0        0        0        0        0 
  adt   0      0      0        0        0        0        0 
  msc   0      0      1      153        0        0        0 
  aio   0      0      9     3499     1013       77        0 
  pio   0      0      2        3        0        2        0 
  lio   0      0      2     2159        0     2158        0 
  gfd   3      0     16    39860       38    39822        0 
  gfd   4      0     16    39854       32    39822        0 
  gfd   5      0      1        2        2        0        0
  gfd   6      0      1        2        2        0        0
...
  gfd  19      0      1        2        2        0        0

The q name field in the sample output in the previous example shows the type of the queue, such as fifo for a FIFO VP or aio for an AIO VP. If the q name field shows gfd or gfdwq, it is a queue for a file whose global file descriptor matches the id field of the output. Disk files have both read and write requests in one queue. One line per disk file displays in the onstat -g ioq output. Pipes have separate read and write queues. Two lines per pipe display in the output: gfd for read requests and gfdwq for write requests.

The len or maxlen field has a value of up to 4 for a load or 4 * number_of_writer_threads for an unload. The xuwrite operator controls the number of writer threads.

Use the values in the totalops field rather than the len or maxlen field to monitor the number of read or write requests done on the file or pipe. The totalops field represents 34 KB of data read from or written to the file. If totalops is not increasing, it means the read or write operation on a file or pipe is stalled (because the FIFO VPs are busy).

To improve performance, use the onmode -p command to add more FIFO VPs. The default number of FIFO VPs is 1. In this sample output, the FIFO queue does not contain any data. For example, if you usually define more than two pipes to load or unload, increase the number of FIFO VPs with the following sample onmode command:
onmode -p +2 FIFO

For more information, see HCL Informix® Administrator's Reference.


Copyright© 2019 HCL Technologies Limited