• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer navigation

The Geek Diary

  • OS
    • Linux
    • CentOS/RHEL
    • VCS
  • Interview Questions
  • Database
    • MariaDB
  • DevOps
    • Docker
    • Shell Scripting
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

How To Check Swap Usage of Each Processes in Linux

by admin

This post shows how to check swap usage of each process, answering “How can I know what process would consume the largest swap space?”

For all kernels

Swap usage is shown as “Swap” columns in /proc/[PID]/smaps. This indicates swapped memory size of the each memory ranges, thus the sum of all of these values shows the total swap usage of the process.

For example, the simple script below calculates the total swap usage of the process which PID = 1027:

# echo $((`grep Swap /proc/1027/smaps | awk '{ print $2; }' | tr '\n' '+'`0))

For UEK2(2.6.39) or later kernels

It is easier to check the swap usage of a specific process, just check “VmSwap” column in /proc/[PID]/status. This indicates the total usage of the swap space as one value. This column does not exist in /proc/[PID]/status with kernel < 2.6.39. For example, for sorting processes with the swap usage from larger, run a script below:

# for file in /proc/*/status ; do awk '/VmSwap|Name/{printf $2 " " $3}END{ print ""}' $file; done | sort -k 2 -n -r | more

The value which is shown/calculated in this post does not indicate an accurate size of used swap space but just indicates rough approximate one. Some (like the shared library) could be double counted, and others(like swap cache) are not really swapped.

Filed Under: Linux

Some more articles you might also be interested in …

  1. docsify: Initialize and serve markdown documentation
  2. csvsql: Generate SQL statements for a CSV file or execute those statements directly on a database
  3. rankmirrors Command Examples in Linux
  4. cockpit-ws Command Examples in Linux
  5. gunzip Command Examples in Linux
  6. fallocate: command not found
  7. timedatectl Command Examples in Linux
  8. “git am” Command Examples
  9. service Command Examples in Linux
  10. dmidecode Command Examples in Linux

You May Also Like

Primary Sidebar

Recent Posts

  • Vanilla OS 2 Released: A New Era for Linux Enthusiasts
  • mk Command Examples
  • mixxx Command Examples
  • mix Command Examples

© 2025 · The Geek Diary

  • Archives
  • Contact Us
  • Copyright