.TH virtiostat 8 "2021-02-15" "USER COMMANDS" .SH NAME virtiostat \- Trace VIRTIO devices input/output statistics. Uses Linux eBPF/bcc. .SH SYNOPSIS .B virtiostat [\-h] [\-T] [\-D] [-d DRIVER] [-n DEVNAME] [INTERVAL] [COUNT] .SH DESCRIPTION This tool traces VIRTIO devices input/output statistics. It works in lower layer of VIRTIO base driver, so it could trace all the devices of VIRTIO family. For example, we can't get IO statistics of 9p-fs in a guest virtual machine by iostat command, but we can analyze IO statistics by virtiostat. The outputing result shows In/Out SGs(scatter list operation) to represent positive correlation IOPS, and In/Out BW to represent throughput. Since this uses BPF, only the root user can use this tool. .SH REQUIREMENTS CONFIG_BPF and bcc. .SH OPTIONS .TP \-h Print usage message. .TP \-T Include a time column on output (HH:MM:SS). .TP \-D Show debug infomation of bpf text. .TP \-d DRIVER Filter for driver name. .TP \-n DEVNAME Filter for device name. .TP INTERVAL Print output every interval seconds. .TP COUNT Total count of trace in seconds. .SH EXAMPLES .TP Trace virtio device statistics and print 1 second summaries, 10 times: # .B virtiostat 1 10 .TP Trace virtio block deivces only: # .B virtiostat -d virtio_blk .SH OVERHEAD This traces the kernel virtqueue_add_sgs, virtqueue_add_outbuf, virtqueue_add_inbuf, virtqueue_add_inbuf_ctx functions. The rate of this depends on all the VIRTIO devices IOPS. .SH SOURCE This is from bcc. .IP https://github.com/iovisor/bcc .PP Also look in the bcc distribution for a companion _examples.txt file containing example usage, output, and commentary for this tool. .SH OS Linux .SH STABILITY Unstable - in development. .SH AUTHOR zhenwei pi .SH SEE ALSO iostat(1), iftop(8), funccount(8)