NAME | SYNOPSIS | DESCRIPTION | OPTIONS | ENVIRONMENT | EXAMPLES | BUGS | FILES | AUTHOR | SEE ALSO | COLOPHON

MPSTAT(1)                    Linux User's Manual                   MPSTAT(1)

NAME         top

       mpstat - Report processors related statistics.

SYNOPSIS         top

       mpstat [ -A ] [ -n ] [ -u ] [ -V ] [ -I { keyword [,...] | ALL } ] [
       -N { node_list | ALL } ] [ -o JSON ] [ -P { cpu_list | ON | ALL } ] [
       interval [ count ] ]

DESCRIPTION         top

       The mpstat command writes to standard output activities for each
       available processor, processor 0 being the first one.  Global average
       activities among all processors are also reported.  The mpstat
       command can be used both on SMP and UP machines, but in the latter,
       only global average activities will be printed. If no activity has
       been selected, then the default report is the CPU utilization report.

       The interval parameter specifies the amount of time in seconds
       between each report.  A value of 0 (or no parameters at all)
       indicates that processors statistics are to be reported for the time
       since system startup (boot).  The count parameter can be specified in
       conjunction with the interval parameter if this one is not set to
       zero. The value of count determines the number of reports generated
       at interval seconds apart. If the interval parameter is specified
       without the count parameter, the mpstat command generates reports
       continuously.

OPTIONS         top

       -A     This option is equivalent to specifying -n -u -I ALL -N ALL -P
              ALL

       -I { keyword [,...] | ALL }
              Report interrupts statistics.

              Possible keywords are CPU, SCPU, and SUM.

              With the CPU keyword, the number of each individual interrupt
              received per second by the CPU or CPUs is displayed.
              Interrupts are those listed in /proc/interrupts file.

              With the SCPU keyword, the number of each individual software
              interrupt received per second by the CPU or CPUs is displayed.
              This option works only with kernels 2.6.31 and later. Software
              interrupts are those listed in /proc/softirqs file.

              With the SUM keyword, the mpstat command reports the total
              number of interrupts per processor.  The following values are
              displayed:

              CPU
                     Processor number. The keyword all indicates that
                     statistics are calculated as averages among all
                     processors.

              intr/s
                     Show the total number of interrupts received per second
                     by the CPU or CPUs.

              The ALL keyword is equivalent to specifying all the keywords
              above and therefore all the interrupts statistics are
              displayed.

       -N { node_list | ALL }
              Indicate the NUMA nodes for which statistics are to be
              reported.  node_list is a list of comma-separated values or
              range of values (e.g., 0,2,4-7,12-).  Note that node all is
              the global average among all nodes. The ALL keyword indicates
              that statistics are to be reported for all nodes.

       -n     Report summary CPU statistics based on NUMA node placement.
              The following values are displayed:

              NODE
                     Node number. The keyword all indicates that statistics
                     are calculated as averages among all nodes.

              All the other fields are the same as those displayed with
              option -u (see below).

       -o JSON
              Display the statistics in JSON (Javascript Object Notation)
              format.  JSON output field order is undefined, and new fields
              may be added in the future.

       -P { cpu_list | ON | ALL }
              Indicate the processors for which statistics are to be
              reported.  cpu_list is a list of comma-separated values or
              range of values (e.g., 0,2,4-7,12-).  Note that processor 0 is
              the first processor, and processor all is the global average
              among all processors.  The ON keyword indicates that
              statistics are to be reported for every online processor,
              whereas the ALL keyword indicates that statistics are to be
              reported for all processors.

       -u     Report CPU utilization. The following values are displayed:

              CPU
                     Processor number. The keyword all indicates that
                     statistics are calculated as averages among all
                     processors.

              %usr
                     Show the percentage of CPU utilization that occurred
                     while executing at the user level (application).

              %nice
                     Show the percentage of CPU utilization that occurred
                     while executing at the user level with nice priority.

              %sys
                     Show the percentage of CPU utilization that occurred
                     while executing at the system level (kernel). Note that
                     this does not include time spent servicing hardware and
                     software interrupts.

              %iowait
                     Show the percentage of time that the CPU or CPUs were
                     idle during which the system had an outstanding disk
                     I/O request.

              %irq
                     Show the percentage of time spent by the CPU or CPUs to
                     service hardware interrupts.

              %soft
                     Show the percentage of time spent by the CPU or CPUs to
                     service software interrupts.

              %steal
                     Show the percentage of time spent in involuntary wait
                     by the virtual CPU or CPUs while the hypervisor was
                     servicing another virtual processor.

              %guest
                     Show the percentage of time spent by the CPU or CPUs to
                     run a virtual processor.

              %gnice
                     Show the percentage of time spent by the CPU or CPUs to
                     run a niced guest.

              %idle
                     Show the percentage of time that the CPU or CPUs were
                     idle and the system did not have an outstanding disk
                     I/O request.

              Note: On SMP machines a processor that does not have any
              activity at all is a disabled (offline) processor.

       -V     Print version number then exit.

ENVIRONMENT         top

       The mpstat command takes into account the following environment
       variable:

       S_COLORS
              When this variable is set, display statistics in color on the
              terminal.  Possible values for this variable are never, always
              or auto (the latter is the default).

              Please note that the color (being red, yellow, or some other
              color) used to display a value is not indicative of any kind
              of issue simply because of the color. It only indicates
              different ranges of values.

       S_COLORS_SGR
              Specify the colors and other attributes used to display
              statistics on the terminal.  Its value is a colon-separated
              list of capabilities that defaults to
              H=31;1:I=32;22:M=35;1:N=34;1:Z=34;22.  Supported capabilities
              are:

              H=     SGR (Select Graphic Rendition) substring for percentage
                     values greater than or equal to 75%.

              I=     SGR substring for CPU number.

              M=     SGR substring for percentage values in the range from
                     50% to 75%.

              N=     SGR substring for non-zero statistics values.

              Z=     SGR substring for zero values.

       S_TIME_FORMAT
              If this variable exists and its value is ISO then the current
              locale will be ignored when printing the date in the report
              header.  The mpstat command will use the ISO 8601 format
              (YYYY-MM-DD) instead.  The timestamp will also be compliant
              with ISO 8601 format.

EXAMPLES         top

       mpstat 2 5
              Display five reports of global statistics among all processors
              at two second intervals.

       mpstat -P ALL 2 5
              Display five reports of statistics for all processors at two
              second intervals.

BUGS         top

       /proc filesystem must be mounted for the mpstat command to work.

       Only a few activities are given by the Linux kernel for each
       processor.

FILES         top

       /proc contains various files with system statistics.

AUTHOR         top

       Sebastien Godard (sysstat <at> orange.fr)

SEE ALSO         top

       sar(1), pidstat(1), iostat(1), vmstat(8)

       http://pagesperso-orange.fr/sebastien.godard/ 

COLOPHON         top

       This page is part of the sysstat (sysstat performance monitoring
       tools) project.  Information about the project can be found at 
       ⟨http://sebastien.godard.pagesperso-orange.fr/⟩.  If you have a bug
       report for this manual page, send it to systat-AT-orange.fr.  This
       page was obtained from the project's upstream Git repository 
       ⟨https://github.com/sysstat/sysstat.git⟩ on 2017-09-15.  If you dis‐
       cover any rendering problems in this HTML version of the page, or you
       believe there is a better or more up-to-date source for the page, or
       you have corrections or improvements to the information in this
       COLOPHON (which is not part of the original manual page), send a mail
       to man-pages@man7.org

Linux                             MAY 2017                         MPSTAT(1)

Pages that refer to this page: cifsiostat(1)iostat(1)iowatcher(1)nfsiostat-sysstat(1)pcp-mpstat(1)pidstat(1)sar(1)tapestat(1)vmstat(8)