sar(1M)
sar --
system activity reporter
Synopsis
sar [-P processor_id[, . . . ] | ALL] [-ubdycwaqvtmpgrkAR] [-o file] t [n]
sar [-P processor_id[, . . . ] | ALL] [-ubdycwaqvtmpgrkAR] [-s time]
[-e time] [-i sec] [-f file]
Description
The command sar provides usage information for individual processors,
as well as summary information for average processor usage.
In the first synopsis line, sar
samples cumulative activity counters in the operating system
at
n
intervals of
t
seconds, where t should be 5 or greater
and the default value of
n
is 1.
(Note that if the sampling interval is less than 5, the activity of
sar itself may affect the sample.)
If the -o option is specified,
sar saves the samples in
file
in binary format.
The type of command shown in the first synopsis line
immediately sends the output for every option specified
to standard output,
without organizing it into a rational format;
data for different options appears
in an undifferentiated jumble and is difficult to read.
Therefore, when running sar
in the format of the first synopsis line, we recommend:
-
specifying only one option, and
-
avoiding the -A option
(which is equivalent to specifying all options)
In the second synopsis line,
with no sampling interval specified,
sar
extracts data from a previously
recorded
file,
either the one specified
by the
-f
option
or, by default,
the standard system activity daily data file
/var/adm/sa/sadd
for the current day
dd.
The starting and ending times of the report
can be bounded using the
-s
and
-e
time
arguments of the form
hh[:mm[:ss]]
The
-i
option selects records at
sec
second intervals.
Otherwise, all intervals found in the data file are reported.
In either case,
subsets of data to be printed are specified by option:
- -P
-
Report system activity for the specified processors rather than
for system wide activity.
System wide data will be reported for those metrics that do
not have per-processor counts.
The processor list is a list of processor IDs separated by commas,
or ALL to request reports for all processors.
In the former case, only data for the specified processors is reported.
Specifying ALL causes data for every processor to be reported as
well as system wide data.
Note that system wide data is suppressed
(for metrics collected per-processor) unless the ALL option is used
(even if the processor list includes all processors).
When the -P
option is not specified, aggregate information is displayed.
- -u
-
Report processor utilization (the default):
%usr
-
portion of time running in user mode
%sys
-
portion of time running in system mode
%wio
-
portion of time idle with some process waiting for block I/O
%idle
-
portion of time otherwise idle
- -b
-
Report buffer activity:
bread/s
, bwrit/s
-
transfers per second of data between system buffers
and disk or other block devices
lread/s,
lwrit/s
-
accesses per second of system buffers
%rcache,
%wcache
-
cache hit ratios, such as (
bread/lread
) as a percentage
pread/s,
pwrit/s
-
transfers per second by means of raw (physical) device mechanism
If the -R option has been specified, the %rcache
and %wcache
columns are not displayed.
- -d
-
Report activity for hard disks.
When data is displayed,
the device specification
dsk-
is generally used
to represent a disk drive.
The data reported is:
%busy
-
percentage of time disk was busy servicing a transfer request
avque
-
The average number of requests outstanding
during the monitored period
(the number of requests being serviced).
This number is the ratio of
total time for all requests to complete
to total time disk was busy servicing the requests
minus 1.
r+w/s
-
number of data transfers to or from disk per second
blks/s
-
number of 512-byte blocks transferred to or from the disk per second
avwait
-
average time in milliseconds that transfer requests wait idly on queue
avserv
-
average time in milliseconds
for a transfer request to be completed by the disk
(including seek, rotational latency,
and data transfer times)
When the -R option has been specified, the columns avque
, avwait
,
and avserv
are not displayed.
An additional column, busy
,
the total time the disk was active, is displayed.
- -y
-
Report TTY device activity (per second):
rawch/s
-
input characters
canch/s
-
input characters processed by canon
outch/s
-
output characters
rcvin/s
-
receiver hardware interrupts
xmtin/s
-
transmitter hardware interrupts
mdmin/s
-
modem interrupts
- -c
-
Report system calls (per second):
scall/s
-
system calls of all types
sread/s
, swrit/s
, fork/s
, exec/s
-
specific system calls
(read, write, fork, and exec)
rchar/s
-
characters (bytes) transferred by read system calls
wchar/s
-
characters (bytes) transferred by write system calls
- -w
-
Report system swapping and switching activity (per second):
swpin/s
, swpot/s
-
number of transfers to and from memory
pswin/s
, pswot/s
-
number of
pages
transferred for swapins
and swapouts
pswch/s
-
process switches
vpswout/s
-
number of virtual pages transferred because of swapouts
- -a
-
Report use of file access system routines (per second):
iget/s
-
number of S5, SFS, and UFS files located by inode entry
namei/s
-
number of filesystem path searches
dirblk/s
-
number of S5 directory block reads issued
%dnlc
-
hit rate of directory name lookup cache
If -R is specified then %dnlc
is replaced by dnlc-hits
and dnlc-misses
,
the counts of cache hits and misses.
- -q
-
Report average queue length while occupied, and percentage of time occupied:
prunq
-
size of processor private queue of process in memory and runnable
%prunocc
-
percentage of time processor private run queue is occupied
runq-sz
-
size of run queue of processes in memory and runnable
%runocc
-
percentage of time run queue is occupied
swpq-sz
-
the average number of processes in the swap queue
when there were processes in the queue
If there were no processes in the swap queue,
this field is blank.
%swpocc
-
the percent of time during the sample
that there were processes in the swap queue.
If there were no processes in the swap queue,
this field is blank.
If the -P option has not been specified, then the prunq
and %prunocc
columns will be blank.
- -v
-
Report status of process,
lightweight processes,
i-node, file,
and file and record locking tables for each filesystem:
proc-sz
, inod-sz
, file-sz
, lock-sz
, lwp-sz
-
entries/size for each table, evaluated once at sampling point.
fail
-
overflows that occur between sampling points for each table.
- -t
-
Report usage by filesystem type:
fstype
-
filesystem type (either
s5
, vxfs
, or combined ufs
and sfs
)
inodes
-
inuse
-
current number of inode table entries being used by processes.
alloc
-
current number of inode table entries existing (both in use and free).
limit
-
maximum limit of inodes that can be allocated.
(This is a soft
upper limit, so
alloc
may exceed limit
.)
fail
-
number of inode allocation failures
that occur between sampling points.
(This can occur when the limit is exceeded or when memory for
inodes is unavailable.)
%ipf
-
the percentage of inodes taken off the freelist by
iget
that had reusable pages associated with them.
These pages are flushed
and cannot be reclaimed by processes.
Thus, this is the percentage
of iget
s that cause page flushes.
If the -R option been specified, the %ipf
column is not displayed.
Instead, the columns page
and nopage
, equal to the counts of inodes
with and without reusable pages respectively, are displayed.
- -m
-
Report message and semaphore activities:
msg/s
, sema/s
-
primitives per second
- -p
-
Report paging activities:
atch/s
-
page faults per second that are satisfied
by reclaiming a page currently in memory (attaches per second)
atfree/s
-
page faults per second that are satisfied by a page on the free list
atmiss/s
-
page faults per second not fulfilled by a page in memory
pgin/s
-
page-in requests per second
ppgin/s
-
pages paged-in per second
pflt/s
-
page faults from protection errors per second
(invalid access to page or ``copy-on-writes'')
vflt/s
-
address translation page faults per second (valid page not in
memory)
slock/s
-
faults per second caused by software lock requests requiring physical I/O
- -g
-
Report paging activities:
pgout/s
-
page-out requests per second
ppgout/s
-
pages paged-out per second
vfree/s
-
virtual pages per second placed on the freelist by the page stealing daemon
pfree/s
-
physical pages per second placed on the freelist by the page stealing daemon
vscan/s
-
virtual pages per second scanned by the page stealing daemon
- -r
-
Report unused memory pages and disk blocks:
freemem
-
average pages available to user processes
freeswap
-
disk blocks available for page swapping
- -k
-
Report kernel memory allocation (KMA) activities:
The following information is displayed for each memory pool:
- size
-
the size of buffers in the memory pool, or
Ovsz
for the oversize
pool
mem
-
the amount of memory in bytes KMA has for the pool
alloc
-
the number of bytes allocated from this pool
succ
-
the amount of memory requested by KMA customers and
successfully allocated. This may be less than the
alloc
column
since the buffers are predetermined sizes.
fail
-
the number of requests that were not satisfied (failed)
- -A
-
Report all data.
(equivalent to -udqbwcayvtmpgrk).
When -P is specified, per processor output is produced for the
appropriate options,
and system wide information is produced for the other options.
- -R
-
Report raw data values.
Using this option, sar displays the values of
the counters from which metrics are computed,
rather than computed values.
For example,
when used with -u,
the number of clock ticks are displayed
rather than a percentage.
When using the -R option, %
prefixes and /s
suffixes
are not displayed in column headings.
For example, instead of %name
or name/s
,
the heading becomes name
.
Some tables are displayed differently;
the layout of tables reporting the ratio of two
counters is changed.
Columns that are computed from more than one
counter are not displayed.
If one, or both, of these counters is not already output in another
column, then a new column is added for it.
This changes the tables for the options -b, -d, -a, -t.
At the end of the report averages are not computed;
instead, the totals from which the averages are derived are displayed.
Examples
To see today's processor activity so far:
sar
To see the system call activity so far for processor 0:
sar -c -P0
To see today's processor activity, broken down by processor for all
processors:
sar -P ALL
To see today's processor activity for processors 2 and 3 only:
sar -P 2,3
To watch processor
activity evolve for ten minutes and save data:
sar -o temp 60 10
To later review disk activity from that period:
sar -d -f temp
Files
- /var/adm/sa/sadd
-
daily data file, where
dd
are digits representing the day of the month
References
sadc(1M)
Notices
The start (-s) and end (-e) times cannot overlap at midnight.
30 January 1998
© 1998 The Santa Cruz Operation, Inc. All rights reserved.