Poster of Linux kernelThe best gift for a Linux geek
SMEM

SMEM

Section: (8) Updated: 07/09/2009
Local index Up

 

NAME

smem - Report memory usage with shared memory divided proportionally.

 

SYNOPSIS

smem [options]

 

DESCRIPTION

smem reports physical memory usage, taking shared memory pages into account. Unshared memory is reported as the USS (Unique Set Size). Shared memory is divided evenly among the processes sharing that memory. The unshared memory (USS) plus a process's proportion of shared memory is reported as the PSS (Proportional Set Size). The USS and PSS only include physical memory usage. They do not include memory that has been swapped out to disk.

Memory can be reported by process, by user, by mapping, or system-wide. Both text mode and graphical output are available.

 

OPTIONS

 

GENERAL OPTIONS

-h, --help
Show help.

 

SOURCE DATA

By default, smem will pull most of the data it needs from the /proc filesystem of the system it is running on. The --source option lets you used a tarred set of /proc data saved earlier, possibly on a different machine. The --kernel and --realmem options let you specify a couple things that smem cannot discover on its own.

-K KERNEL, --kernel=KERNEL
Path to kernel image. This lets smem include the size of the kernel's code and statically allocated data in the systemwide (-w) output.

-R REALMEM, --realmem=REALMEM
Amount of physical RAM. This lets smem detect the amount of memory used by firmware/hardware in the systemwide (-w) output. If provided, it will also be used as the total memory size to base percentages on.

-S SOURCE, --source=SOURCE
/proc data source. This lets you specify an alternate source of the /proc data. For example, you can capture data from an embedded system using smemcap, and parse the data later on a different machine. If the --source option is not included, smem reports memory usage on the running system.

 

REPORT BY

If none of the following options are include, smem reports memory usage by process.

-m, --mappings
Report memory usage by mapping.

-u, --users
Report memory usage by user.

-w, --system
Report systemwide memory usage summary.

 

FILTER BY

If none of these options are included, memory usage is reported for all processes, users, or mappings. (Note: If you are running as a non-root user, and if you are not using the --source options, then you will only see data from processes whose /proc/ information you have access to.)

-M MAPFILTER, --mapfilter=MAPFILTER
Mapping filter regular expression.

-P PROCESSFILTER, --processfilter=PROCESSFILTER
Process filter regular expression.

-U USERFILTER, --userfilter=USERFILTER
User filter regular expression.

 

OUTPUT FORMATTING

-c COLUMNS, --columns=COLUMNS
Columns to show.

-H, --no-header
Disable header line.

-k, --abbreviate
Show unit suffixes.

-n, --numeric
Show numeric user IDs instead of usernames.

-p, --percent
Show percentages.

-r, --reverse
Reverse sort.

-s SORT, --sort=SORT
Field to sort on.

-t, --totals
Show totals.

 

OUTPUT TYPE

These options specify graphical output styles.

--bar=BAR
Show bar graph.

--pie=PIE
Show pie graph.

 

NOTES

smem requires a 2.6.27 or newer kernel.

 

FILES

/proc/$pid/cmdline

/proc/$pid/smaps

/proc/$pid/stat

/proc/meminfo

/proc/version

 

SEE ALSO

free(1),pmap(1)

 

AUTHOR

smem was written by Matt Mackall.


 

Index

NAME
SYNOPSIS
DESCRIPTION
OPTIONS
GENERAL OPTIONS
SOURCE DATA
REPORT BY
FILTER BY
OUTPUT FORMATTING
OUTPUT TYPE
NOTES
FILES
SEE ALSO
AUTHOR

This document was created by man2html, using the manual pages.
Time: 22:02:23 GMT, April 16, 2011