RSS Calculator
Calculate a process's Resident Set Size and its share of total physical memory.
Inputs
Resident Set Size
512.00MB
% of Physical RAM
3.13%
Private Memory
384.00MB
Shared Memory
128.00MB
Step by step
RSS in MB
524288 KB / 1024
= 512 MB
% of physical RAM
524288 / 16777216 × 100
= 3.13%
Private (non-shared) memory
RSS - shared = 524288 - 131072
= 384 MB
How it works
RSS (Resident Set Size) is the portion of a process's memory that is held in physical RAM — as opposed to swapped out or not yet faulted in. It includes both private pages (unique to the process) and shared pages (shared libraries, mmap'd files shared with other processes). RSS divided by total physical memory gives the process's footprint as a percentage, useful for capacity planning and identifying memory-hungry processes.
Formula
RSS percentage
rss_percent = (RSS_KB / total_physical_KB) × 100
- RSS
- resident set size in KB
- M_{phys}
- total physical memory in KB
Frequently Asked Questions
Why is RSS different from VSZ?
RSS counts only pages actually resident in physical RAM, while VSZ (Virtual Size) counts the entire virtual address space including memory-mapped files, reserved regions, and swapped-out pages — VSZ is always >= RSS.
Can I sum RSS across processes to get total memory usage?
Not accurately — shared pages (libraries like libc) are counted in every process's RSS that maps them, so summing overcounts. Use PSS (Proportional Set Size from /proc/PID/smaps) for accurate per-process accounting.