smem简介smem是linux系统上的一个命令行工具,可以生成各种内存消耗报告。与现有工具不同,smem可以报告实际使用的物理内存(PSS),这是一个更有意义的指标。可用于衡量系统的内存池和应用程序使用的内存量。由于大部分物理内存通常在多个应用程序之间共享,因此称为实际使用内存(RSS)的标准内存消耗指标大大高估了内存消耗。PSS参数反而衡量每个共享内存区域中每个应用程序的“公平分配”,给出一个现实的指标。RSS和PSS的介绍可以参考文章:Linux内存安装中VSS、RSS、PSS、USS介绍sudoapt-getinstallsmem常用命令smem-u#参数-u显示内存总量每个用户消费UserCountSwapUSSPSSRSSmemcached1008120qiming10022070mysql100113130www2300433240root1000678390smem-p#parameter-p查看内存使用百分比PIDUserCommandSwapUSSPSSRSS20init0root/0%0.00%0.00%0.00%72wwwphp-fpm:池www0.00%0.00%0.00%0.00%74wwwphp-fpm:池www0.00%0.00%0.00%0.00%75wwwphp-fpm:池www0.00%0.00%0.00%0.00%15099wwwnginx:工作进程0.00%0.00%0.04%0.00%15100wwwnginx:工作进程0.00%0.00%0.04%0.00%15101wwwnginx:workerprocess0.00%0.00%0.04%0.00%smem-w#Parameter-w查看系统内存使用#can-p-w结合AreaUsedCacheNoncachefirmware/hardware000kernelimage000kerneldynamicmemory56271601579485469212userspace77102824freememory240352024035200smem-w-p#以百分比显示使用的区域缓存Noncachefirmware/hardware0.00%0.00%0.00%kernelimage0.00%0.00%0.00%kerneldynamicmemory67.75%1.923%1.928%usermemory625%1.25%freememory30.12%30.12%0.00%smem-R24G-w#参数-RREALMEM,REALMEM的值是指物理内存的大小这个参数可以让smem在整个系统的输出中找到固件/硬件消耗的内存量(-w)(可以通过上下对比找到,注意固件/硬件)AreaUsedCacheNoncachefirmware/硬件16960916016960916KERNEL图像00Kernel动态内存56369721579485479024USERSERSPACEMONEME17422871404102824FREE380php-fpmwww382nginxwww632memcachedmemcached824smem-srss#parameter-s根据某列对PID进行排序(例如rss)用户命令交换USSPSSRSS1root/init00440070rootphp-fpm:masterprocess(/w001447072wwwphp-fpm:poolwww00380015099wwwnginx:workerprocess0032390smem-srss-r#参数-r一般与参数-s结合使用,表示反向排序(从升序到降序)PID用户命令交换USSPSSRSS80wwwphp-fpm:poolwww00382081wwwphp-fpm:poolwww003820112root/www/server/panel/pyenv/bin00169580130root/www/server/panel/pyenv/bin00337850271rootnginx:主进程/www/00369903005root/bin/sh/www/server/mysql/b0023203622mysql/www/server/mysql/bin/mysql00113130smem-Mphp#Parameter-Mfilter相关进程PIDUserCommandSwapUSSPSSRSS15108wwwnginx:workerprocess0065015109wwwnginx:工作进程0065015110wwwnginx:工作进程0065015111wwwnginx:缓存管理器进程00890271rootnginx:主进程/www/0013070smem-k#显示内存单元smu-k用户计数交换USSPSSRSSmemcached100824.0K0mysql10011.0M0www230042.3M0root100066.3M0
