Task Queue Kernel Statistics Counters
Every task queue has an associated set of kstat counters.
Examine the output of the following kstat(1M) command:
$ kstat -c taskq
module: unix instance: 0
name: ata_nexus_enum_tq class: taskq
crtime 53.877907833
executed 0
maxtasks 0
nactive 1
nalloc 0
priority 60
snaptime 258059.249256749
tasks 0
threads 1
totaltime 0
module: unix instance: 0
name: callout_taskq class: taskq
crtime 0
executed 13956358
maxtasks 4
nactive 4
nalloc 0
priority 99
snaptime 258059.24981709
tasks 13956358
threads 2
totaltime 120247890619
|
The kstat output shown above includes the following
information:
-
The name of the task queue and its instance number
-
The number of scheduled (tasks) and executed
(executed) tasks
-
The number of kernel threads processing the task queue (threads) and their priority (priority)
-
The total time (in nanoseconds) spent processing all the tasks
(totaltime)
The following example shows how you can use the kstat command
to observe how a counter (number of scheduled tasks) increases over time:
$ kstat -p unix:0:callout_taskq:tasks 1 5
unix:0:callout_taskq:tasks 13994642
unix:0:callout_taskq:tasks 13994711
unix:0:callout_taskq:tasks 13994784
unix:0:callout_taskq:tasks 13994855
unix:0:callout_taskq:tasks 13994926
|