perfquery uses PerfMgt GMPs to obtain the PortCounters (basic performance and error counters) or PortExtendedCounters from the PMA at the node/port specified. Optionally shows aggregated counters for all ports of node. Also, optionally, reset after read, or only reset counters.
Note: In both PortCounters and PortCountersExtended, components that represent Data (e.g. PortXmitData and PortRcvData) indicate octets divided by 4 rather than just octets.
Note: Inputting a port of 255 indicates an operation be performed on all ports.
Most OpenIB diagnostics take the following common flags. The exact list of supported flags per utility can be found in the usage message and can be shown using the util_name -h syntax.
# Debugging flags
-d raise the IB debugging level.
May be used several times (-ddd or -d -d -d).
-e show send and receive errors (timeouts and others)
-h show the usage message
-v increase the application verbosity level.
May be used several times (-vv or -v -v -v)
-V show the version info.
# Addressing flags
-G use GUID address argument. In most cases, it is the Port GUID.
-s <smlid> use 'smlid' as the target lid for SM/SA queries.
# Other common flags:
-C <ca_name> use the specified ca_name.
-P <ca_port> use the specified ca_port.
-t <timeout_ms> override the default timeout for the solicited mads.
Multiple CA/Multiple Port Support
When no IB device or port is specified, the port to use is selected by the following criteria:
1. the first port that is ACTIVE.
2. if not found, the first port that is UP (physical link up).
If a port and/or CA name is specified, the user request is attempted to be fulfilled, and will fail if it is not possible.
perfquery # read local port performance counters
perfquery 32 1 # read performance counters from lid 32, port 1
perfquery -e 32 1 # read extended performance counters from lid 32, port 1
perfquery -a 32 # read perf counters from lid 32, all ports
perfquery -r 32 1 # read performance counters and reset
perfquery -e -r 32 1 # read extended performance counters and reset
perfquery -R 0x20 1 # reset performance counters of port 1 only
perfquery -e -R 0x20 1 # reset extended performance counters of port 1 only
perfquery -R -a 32 # reset performance counters of all ports
perfquery -R 32 2 0x0fff # reset only error counters of port 2
perfquery -R 32 2 0xf000 # reset only non-error counters of port 2