GNU/Linux >> Znalost Linux >  >> Linux

Získejte statistiky využití paměti pomocí tohoto nástroje příkazového řádku systému Linux

Další zdroje pro Linux

  • Cheat pro příkazy Linuxu
  • Cheat sheet pro pokročilé příkazy systému Linux
  • Bezplatný online kurz:Technický přehled RHEL
  • Síťový cheat pro Linux
  • Cheat sheet SELinux
  • Cheat pro běžné příkazy pro Linux
  • Co jsou kontejnery systému Linux?
  • Naše nejnovější články o Linuxu

Při své programátorské práci často potřebuji znát paměť využívanou webovými aplikacemi. Než se pustíte do podrobností a nástrojů pro profilování prohlížeče, obvykle stačí hrubý odhad.

Ke zjištění využití paměti v systému Linux nebo macOS lidé obvykle používají top nebo htop. Rád bych viděl jediné číslo:Kolik RAM zabral proces. Ale statistikám zobrazeným těmito nástroji může být těžké porozumět. S webovými prohlížeči je to ještě složitější, protože často spouští mnoho samostatných procesů. Všechny se zobrazí v horní části výstupu jako dlouhý seznam, každý s vlastními individuálními metrikami.

Zadejte příkaz smem

Naštěstí existuje smem, další nástroj příkazového řádku pro zobrazení statistik využití paměti. Nainstalujte jej pomocí svého zvoleného správce balíčků, například:

sudo apt install smem

Chcete-li získat celkové využití paměti Firefoxem, postupujte takto:

smem -c pss -P firefox -k -t | tail -n 1

Co se zde stane?

  • -c přepínač určuje sloupce, které se mají zobrazit. Zajímá mě pouze pss sloupec, který ukazuje paměť alokovanou procesem.
  • -P přepněte procesy filtrů tak, aby zahrnovaly pouze ty s firefox v názvu
  • -k přepínač říká, že má zobrazovat využití paměti v mega/gigabajtech místo v obyčejných bajtech
  • -t přepínač zobrazí součty
  • tail -n 1 filtr vypíše pouze poslední řádek, kde jsou součty

Výstup je tak jednoduchý, jak jen to jde:

$ smem -t -k -c pss -P firefox | tail -n 1
4.9G

Přímo k věci! A po dalším rušném dni práce s více než padesáti otevřenými kartami Firefox stále využívá pouze 5 GB. Vezměte si to, Google Chrome;-)

Ještě jednodušší se skriptem

Pro usnadnění vytvořte malý skript s názvem memory-use , který má jako parametr název procesu. Všechny své skripty uchovávám v ~/bin , takže:

echo 'smem -c pss -P "$1" -k -t | tail -n 1' > ~/bin/memory-use && chmod +x ~/bin/memory-use

Nyní mohu měřit využití paměti jakoukoli aplikací tak snadno, jako:

memory-use firefox
memory-use chrome
memory-use slack

A je toho ještě víc!

Obslužný program umí mnohem více, než jen ukázat celkové využití paměti. Dokáže dokonce generovat grafický výstup.

Například:

smem --pie name -c pss

Zobrazuje něco takového:

Pro více podrobností doporučuji nahlédnout do manuálových stránek smem.

Další skvělý návod najdete na https://linoxide.com/memory-usage-reporting-smem/.

Užijte si to!

Tento článek se původně objevil na autorově blogu a je se svolením znovu publikován.


Linux
  1. Začněte s Latexem na Linuxu

  2. Jak používat export s Pythonem na Linuxu

  3. Jak používat sdílenou paměť s Linuxem v C

  1. Začněte s NetworkManagerem v systému Linux

  2. Sdílení souborů s otevřeným zdrojovým kódem s tímto nástrojem Linux

  3. Jak používám Vagrant s libvirt

  1. Pomocí tohoto nástroje příkazového řádku systému Linux se dozvíte více o jednotkách NVMe

  2. Provádějte forenzní analýzu paměti Linuxu pomocí tohoto nástroje s otevřeným zdrojovým kódem

  3. Jak používat příkaz Vmstat v Linuxu vysvětleno na příkladech