ps-mem
A utility to report core memory usage per program
What it is and what it does
ps_mem is a command-line utility that measures and displays the actual memory footprint of running processes on Linux. Unlike tools that report virtual memory, it calculates core memory by accounting for both private memory (unique to each process) and shared memory (libraries and resources used by multiple processes), then attributes a fair share of shared memory to each program. The tool runs as a standalone script with no Python runtime dependencies, making it lightweight and easy to deploy.
You invoke it from the shell to see a summary table of all processes ranked by memory usage, or filter results by PID, user, or other criteria. It supports options to split arguments, show totals, and report swap usage. The output format clearly separates private and shared components so you can understand whether a process is genuinely memory-hungry or just sharing a lot of system libraries.
Use it for:
- Identify which processes are consuming the most actual RAM on a Linux system for capacity planning.
- Diagnose memory bloat in a running application by comparing its private vs. shared memory footprint.
- Generate per-user memory usage summaries for multi-user systems or shared hosting environments.
- Monitor a specific process or set of processes (by PID) to track memory growth over time.
- Understand the true cost of running multiple instances of the same program (e.g., browser tabs, containers).
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
ps_mem reports the actual core memory usage (private plus shared) for each running program on Linux, breaking down RAM consumption by process.
Yes, if you need accurate per-process memory reporting on Linux and are comfortable with an unmaintained tool. The package is stable, has no dependencies, and works well for its narrow purpose. However, the project has not been updated since 2022, so it may not work correctly on very recent Linux kernels or distributions, and no fixes will be forthcoming. Suitable for systems where the tool's behavior is already proven to work.
Install
ps-mem on PyPI
pip
pip install ps-memuv
uv add ps-mempoetry
poetry add ps-memInstalling ps-mem
Before you install
Installation is straightforward with no runtime dependencies. The project is marked abandoned with the last commit in 2022, so expect no active maintenance or bug fixes going forward.
License in practice
Licensed under LGPLv2 (copyleft), which requires that any modifications you distribute must also be released under LGPLv2 or a compatible license. Using the package as-is carries no obligation.
Quickstart
pip install ps_mem
ps_mem
# or filter by PID:
ps_mem -p $(pgrep -d, -u $USER)
Requires Linux; the tool reads from /proc filesystem which is Linux-specific.
Verify before relying
- Whether the tool works correctly on modern Linux kernels and distributions post-2022.
- Compatibility with Python versions beyond what the fact sheet specifies (python_support is unspecified).
Package facts
| License | LGPLv2 (copyleft) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | abandoned — 1,539 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,340,778/month — #4,030 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: ps_mem-3.14-py2.py3-none-any.whl
Keywords: memory, RAM, profile, program, linux
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
memory-profilerProfiles memory consumption line-by-line in…
permissive · top 5,000 on PyPI
setproctitleAllows a Python process to change its own title…
permissive · top 1,000 on PyPI
psutilpsutil retrieves real-time information about…
permissive · top 1,000 on PyPI
gpustatDisplays real-time NVIDIA GPU status, memory…
permissive · top 5,000 on PyPI
py-spypy-spy is a sampling profiler that attaches to…
permissive · top 1,000 on PyPI
scoobyScooby generates formatted reports of your…
permissive · top 5,000 on PyPI
mmgpOptimizes GPU memory usage for running large…
unclear · top 15,000 on PyPI
rpm-vercmpCompares RPM package version strings using the…
permissive · top 15,000 on PyPI
pystackPyStack inspects the stack frames of a running…
permissive · top 15,000 on PyPI
bitmathbitmath converts and performs arithmetic on…
permissive · top 15,000 on PyPI