Brief Data
This format does NOT include data for any individual devices such as cpu, disk,
network, nfs, lustre, process, slabs or tcp. If you do select any one of them
collectl will force --verbose format.
CPU Data, collectl -sc
#<--------CPU-------->
#cpu sys inter ctxsw
cpu |
Percent of time the cpu was busy during the current interval averaged
across all CPUs and is actually the total percentage of time the CPU in one of the following:
system, user, nice, irq, soft-irq and steal. Note that this does NOT include time
spend in I/O wait. |
sys |
Percentage of time the cpu was executing in system mode during the current
interval. This includes all those modes as above except user and nice to to
determine the amount of time spent as a user you need to subtract these from the total cpu
field. |
inter |
Total number of interrupts/sec. |
ctxsw | Total number of context switches/sec. |
Disk, collectl -sd
There are currently 3 places that collectl can gather disk performance data from.
Fortunately you don't really have to worry about it unless you really care.
In the 2.4 kernel, the most detailed disk data is stored in /proc/partitions and that
is indeed where collectl tries to get it from. However, some older kernels may not
have been configured to provide this data in which case collectl will grab less
detailed data from /proc/stat. In the 2.6 kernel, performance data has been moved
from /proc/partitions to /proc/diskstats and so it is gathered from there.
In any event, regardless of where the data comes from it is all presented in the same
format. This means some fields may be 0 (2.4 kernels and /proc/stat) when displayed
with --verbose, but it is expected few systems will fall into this category.
#<---------------Disks---------------->
#KBRead Reads Size KBWrit Writes Size
KBRead | KB read/sec |
Reads | Number of reads/sec |
Size | Average read size in KB. This field only included
if --iosize specified |
KBWrite | KB written/sec |
Writes | Number of writes/sec |
Size | Average write size in KB. This field only included
if --iosize specified |
Infiniband, collectl -sx
#<---------------InfiniBand--------------->
# KBIn PktIn Size KBOut PktOut Size Errs
KBIn | KB received/sec. |
PckIn | Packets received/sec. |
Size | Average incoming packet size in KB. This field is only
included if --iosize included |
KBOut | KB sent/sec. |
PktOut | Packets sent/sec. |
Size | Average outgoing packet size in KB. This field is only
included if --iosize included |
Errs | Count of current errors. Since these
are typically infrequent, it is felt that reporting them as a rate would result
in either not seeing them OR round-off hiding their values. |
Lustre
Lustre data actually falls into one of 3 categories - client, mds and oss. Collectl
determines the type of system it is running on (a system can have multiple
personalities) and reports on all it finds, unless specifically selected via -L.
Lustre Client, collectl -sl
#<-------------Lustre Client------------->
# KBRead Reads Size KBWrite Writes Size
KBRead | KB/sec delivered to the client. |
Reads | Reads/sec delivered to the client,
|
Size | Average read size in KB. This field only included
if --iosize specified |
not necessarily from the lustre storage servers.
KBWrite | KB Writes/sec delievered to the storage servers. |
Writes | Writes/sec delievered to the storage servers. |
Size | Average write size in KB. This field only included
if --iosize specified |
The following format of lustre client data is selected by including -OR and
adds readahead statistics to the previous six, noting the Size fields
are dependent on --iosize being specificed.
#<--------------------Lustre Client-------------------->
# KBRead Reads Size KBWrite Writes Size Hits Misses
KBRead | KB/sec delivered to the client. |
Reads | Reads/sec delivered to the client,
not necessarily from the lustre storage servers. |
Size | Average read size in KB. |
KBWrite | KB Writes/sec delievered to the storage servers. |
Writes | Writes/sec delievered to the storage servers. |
Size | Average write size in KB. |
Hits | Number of reads/sec from the lustre prefetch cache. |
Misses | Number of misses/sec from the prefetch cache which must then
be satisfied by reading from the storage servers. |
Lustre MDS (Meta-Data Server)
The first format is for lustre versions 1.6.5 and beyond while the second format is for
earlier releases
#<--------Lustre MDS-------->
#Gattr+ Sattr+ Sync Unlnk
#<--------Lustre MDS-------->
#Gattr+ Sattr+ Sync Reint
Gattr+ | Total number of all getattr operations/sec. See Getattr,
GttrLck and Gxattr in the verbose data section |
Sattr+ | Total number of all getattr operations/sec. See Setattr
and Sxattr in the verbose data section |
Sync | Number of syncs/sec |
Unlnk | Number of file deletes/sec |
Reint | Number of reints/sec which include unlinks and setattrs.
Since older version did not break out setattrs, they are not included in Sattr+.
|
Lustre OSS (Object Storage Server), collectl -sc
#<--------------Lustre OST-------------->
# KBRead Reads Size KBWrit Writes Size
KBRead | KB/sec read |
Reads | Reads/sec |
Size | Average read size in KB. This field only included
if --iosize specified |
KBWrite | KB/sec written |
Writes | Writes/sec
|
Size | Average write size in KB. This field only included
if --iosize specified |
Memory, collectl -sm
#<-----------Memory---------->
#free buff cach inac slab map
free | Total free memory, which unfortunately is NOT the
difference between total memory and the following amounts allocated to used memory. |
buff | Memory used as system buffers. |
cach | This is also commonly known as the file system buffer
cache as buffered I/O uses this memory to cache the data. |
inac | Inactive memory. |
slab | Total memory allocated to slabs. |
map | Total mapped memory, which include AnonPages. |
Network, collectl -sn
#<---------------Network--------------->
# KBIn PktIn Size KBOut PktOut Size
KBIn | KB received/sec over all real network interfaces and therefore
excludes 'lo' and 'sit'. |
PktIn | Packets received/sec over all real network interfaces. |
Size | Average incoming packet size in bytes. This field is only included
if --iosize specified |
KBOut | KB sent/sec over all real network interfaces. |
PktOut | Packets sent/sec over all real network interfaces. |
Size | Average outgoing packet size in bytes. This field is only included
if --iosize specified |
NFS, collectl -sf
#<--NFS Svr Summary-->
# read write calls
read | Total nfs reads/sec. |
write | Total nfs writes/sec. |
calls | Total nfs calls/sec. |
Slabs, collectl -sy
#<----slab---->
# Alloc Bytes
Alloc | Total Number of slabs allocated |
Bytes | Total Number of bytes allocated as slabs |
Sockets, collectl -ss
#<------Sockets----->
# Tcp Udp Raw Frag
Tcp | Total TCP sockets currently in use. |
Udp | Total UDP sockets currently in use. |
Raw | Total RAW sockets currently in use. |
Frag | Total number of IP fragments queues currently in use. |
TCP, collectl -st
#<------------TCP------------>
#PureAcks HPAcks Loss FTrans
PureAcks | ACKs/sec that only contain acks (ie no data). |
HPAcks | Fast-path acks/sec. |
Loss | Packets/sec TCP thinks have been lost coming in. |
FTrans | Fast retransmissions/sec. |