Monitor virtual processors with the onstat-g ioq command
Use the onstat-g ioq command to determine whether you need to allocate additional AIO virtual processors.
onstat -g ioq
AIO I/O queues:
q name/id len maxlen totalops dskread dskwrite dskcopy
adt 0 0 0 0 0 0 0
msc 0 0 1 12 0 0 0
aio 0 0 4 89 68 0 0
pio 0 0 1 1 0 1 0
lio 0 0 1 17 0 17 0
kio 0 0 0 0 0 0 0
gfd 3 0 3 254 242 12 0
gfd 4 0 17 614 261 353 0
onstat -d
Dbspaces
address number flags fchunk nchunks flags owner name
a1de1d8 1 1 1 1 N informix rootdbs
a1df550 2 1 2 1 N informix space1
2 active, 32,678 maximum
Chunks
address chk/dbs offset size free bpages flags pathname
a1de320 1 1 0 75000 66447 PO- /ix/root_chunk
a1df698 2 2 0 500 447 PO- /ix//chunk1
2 active, 32,678 maximum
Each chunk serviced by the AIO virtual processors has one line in the onstat-g ioq output, identified by the value gfd in the q name column. You can correlate the line in onstat -g ioq with the actual chunk because the chunks are in the same order as in the onstat -d output. For example, in the onstat-g ioq output, there are two gfd queues. The first gfd queue holds requests for root_chunk because it corresponds to the first chunk shown in the onstat -d output. Likewise, the second gfd queue holds requests for chunk1 because it corresponds to the second chunk in the onstat -d output.
If the database server has a mixture of raw devices and cooked files, the gfd queues correspond only to the cooked files in onstat -d output.