# mpvis

## NAME



           **mpvis** - visualize cpu utilization/performance
    


## SYNOPSIS



           **mpvis**[**-biV**] [**-r** _rowlength_] [**-R** _rowlength_] [_pmview options_] [_cpuid_
           _..._]
    


## DESCRIPTION



           **mpvis** displays a three dimensional bar chart of CPU utilization.
           The display is updated with new values retrieved from the target
           _host_ or _archive_ every _interval_ seconds (default is 2 seconds).
    
           The height of the bars is proportional to the CPU utilization in
           each of the modes **idle**(with no I/O pending), **wait**(idle, but
           waiting for I/O - only visible in IRIX), **intr**(interrupt
           processing - only visible in IRIX), **nice**(nice state - only
           visible in Linux), **sys**(in the kernel) and **user**.
    
           The number of CPUs per row in the scene is governed by the default
           maximum row length, and the options **-b** , **-r** and **-R**.  If none of
           these flags are specified, **mpvis** uses the default maximum row
           length to calculate the actual number of rows and columns in the
           view, according to:
    
                nrows = (ncpus + maxrowlen - 1) / maxrowlen
                ncols = (ncpus + nrows - 1) / nrows.
    
           The **-r** option uses the above algorithm, but allows the user to
           override the maximum row length.
    
           The CPUs are sorted in ascending order.  They are displayed from
           left to right, and front to back (in the case where there is more
           than one row of CPUs).
    
           The user can specify a list of CPUs as _cpuid_ arguments using the
           naming scheme reported by
              $ pminfo -f kernel.percpu.cpu.user
           i.e. **cpu** _N_ or **cpu** _A_**:**_B_ depending on the operating system version and
           platform.  Alternatively, if the _cpuid_ argument contains one of
           the characters **^** or **.** or **[** then _cpuid_ will be treated as a
           regular expression in the style of **egrep**(1) and the matching set
           of CPU names will be used instead of _cpuid_.
    
           If one or more _cpuid_ arguments is specified, then only the CPUs in
           this list are displayed in the view.  The list of CPUs is sorted
           into ascending CPU number and they are displayed from left to
           right, and front to back (in the case where there is more than one
           row of CPUs).
    
           **mpvis** generates a pmview(1) configuration file, and passes most
           command line options to pmview(1).  Therefore, the command line
           options **-A** , **-a** , **-C** , **-h** , **-n** , **-O** , **-p** , **-S** , **-t** , **-T** , **-Z** and **-z** , and the
           user interface are described in the pmview(1) man page.
    


## COMMAND LINE OPTIONS



           The **mpvis** specific options are:
    
           **-b** Use a ratio for row:column of 1:8.  This option is best for
               large numbers of CPUs.  If the row length is not a factor of
               the number of CPUs, then the last row will be shorter than all
               other rows.  This option ignores the maximum row length.
    
           **-i** Label each CPU column with the CPU number.
    
           **-r** Split the view into a number of rows, where each row has a
               maximum length of _n_ CPUs.  This is a soft limit.  The actual
               row length is calculated by an algorithm (see above) which
               prduces a balanced view with no more than _n_ CPUs per row.
    
           **-R** Split the view into a number of rows, where each row has a
               length of _n_ CPUs.  This is a hard limit.  If the row length is
               not a factor of the number of CPUs, then the last row will be
               shorter than all other rows.
    
           **-V** Verbose mode - output the generated pmview(1) configuration
               file.
    


## LAUNCH



           The behavior of pmchart(1) when launched from **mpvis** is dependent
           on the number of CPUs in each row.  If there are more than 6 CPUs
           in a row then each chart will contain a separate metric, otherwise
           each chart will contain a separate CPU instance.
    


## FILES



           **$PCP_VAR_DIR/config/pmlogger/config.mpvis**
                  A pmlogger(1) configuration file for **mpvis** metrics.
           **$PCP_SHARE_DIR/lib/pmview-args**
                  Shell procedures for parsing pmview(1) command line
                  options.
    


## PCP ENVIRONMENT



           Environment variables with the prefix **PCP_** are used to
           parameterize the file and directory names used by PCP.  On each
           installation, the file _/etc/pcp.conf_ contains the local values for
           these variables.  The **$PCP_CONF** variable may be used to specify an
           alternative configuration file, as described in **pcp.conf**(4).
    


* * *