diff --git a/GNUmakefile b/GNUmakefile index 44b212fa1..df1f94a2d 100644 --- a/GNUmakefile +++ b/GNUmakefile @@ -120,6 +120,12 @@ realclean distclean clean clobber: @true endif +check :: check_pcp + +check_pcp : src + $(SUBDIRS_MAKERULE) + + aclocal.m4: # older aclocal(1) versions use --acdir but not the current versions aclocal --system-acdir=`pwd`/m4 --output=$@ diff --git a/build/rpm/fedora.spec b/build/rpm/fedora.spec index 7082cc411..9e7363f53 100644 --- a/build/rpm/fedora.spec +++ b/build/rpm/fedora.spec @@ -1782,13 +1782,13 @@ ls -1 $RPM_BUILD_ROOT/%{_bindir} |\ grep -E 'pmiostat|pmcollectl|pmatop|pmrep' |\ sed -e 's#^#'%{_bindir}'\/#' >pcp_system_tools.list ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\ - grep -E 'atop|collectl|dmcache|free|iostat|numastat|verify|uptime|shping' |\ + grep -E 'atop|collectl|dmcache|free|iostat|numastat|pidstat|verify|uptime|shping' |\ sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >>pcp_system_tools.list %endif ls -1 $RPM_BUILD_ROOT/%{_libexecdir}/pcp/bin |\ %if !%{disable_python2} || !%{disable_python3} - grep -E -v 'atop|collectl|dmcache|free|iostat|numastat|verify|uptime|shping' |\ + grep -E -v 'atop|collectl|dmcache|free|iostat|numastat|pidstat|verify|uptime|shping' |\ %endif sed -e 's#^#'%{_libexecdir}/pcp/bin'\/#' >base_exec.list ls -1 $RPM_BUILD_ROOT/%{_booksdir} |\ diff --git a/build/rpm/pcp.spec.in b/build/rpm/pcp.spec.in index f5f7d77a8..be5956bdc 100755 --- a/build/rpm/pcp.spec.in +++ b/build/rpm/pcp.spec.in @@ -1806,7 +1806,7 @@ awk '{print $NF}' $DIST_MANIFEST | egrep -e 'pmdas/zswap' > pmda_zswap_files awk '{print $NF}' $DIST_MANIFEST | egrep -e 'pmdas/unbound' > pmda_unbound_files awk '{print $NF}' $DIST_MANIFEST | egrep -e 'pmdas/mic' > pmda_mic_files awk '{print $NF}' $DIST_MANIFEST | egrep -e 'pcp-|pmatop|pmcollectl|pmiostat|pmrep' |\ -egrep -e 'atop|collectl|dmcache|free|iostat|numastat|verify|uptime|shping|pmrep' | \ +egrep -e 'atop|collectl|dmcache|free|iostat|numastat|pidstat|verify|uptime|shping|pmrep' | \ egrep -v 'testsuite|pmlogconf|pmieconf' \ > system_tools_files %endif diff --git a/qa/1078 b/qa/1078 new file mode 100755 index 000000000..ea3824eb9 --- /dev/null +++ b/qa/1078 @@ -0,0 +1,45 @@ +#!/bin/sh +# PCP QA Test No. 1078 +# Exercise pcp pidstat for an archive +# +# Copyright (c) 2016 Sitaram Shelke. +# + +seq=`basename $0` +echo "QA output created by $seq" + +. ./common.python + +status=1 # failure is the default! +$sudo rm -rf $tmp.* $seq.full +trap "cd $here; rm -rf $tmp.*; exit \$status" 0 1 2 3 15 + +pcp_pidstat="$PCP_BINADM_DIR/pcp-pidstat" +test -x $pcp_pidstat || _notrun "No pcp-pidstat(1) installed" +pcp_pidstat="$python $pcp_pidstat" +pcp_archive="-a archives/pcp-pidstat" +# real QA test starts here +echo && echo === pcp-pidstat without filters +pcp $pcp_archive pidstat + +echo && echo === pcp-pidstat with user names +pcp $pcp_archive pidstat -U + +# echo && echo === pcp-pidstat with single user mode +# pcp $pcp_archive pidstat -I + +echo && echo === pcp-pidstat with given samples count +pcp $pcp_archive pidstat -s 3 -P 1,3,5 + +echo && echo === pcp-pidstat priority and scheduling information +pcp $pcp_archive pidstat -R + +echo && echo === pcp-pidstat memory utilization +pcp $pcp_archive pidstat -r + +echo && echo === pcp-pidstat stack utilization +pcp $pcp_archive pidstat -k + +status=0 +exit + diff --git a/qa/1078.out b/qa/1078.out new file mode 100644 index 000000000..ab8cab6f1 --- /dev/null +++ b/qa/1078.out @@ -0,0 +1,2769 @@ +QA output created by 1078 + +=== pcp-pidstat without filters +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UID PID usr system guest %CPU CPU Command +17:05:04 1000 5632 ? ? ? ? 1 indicator-keybo +17:05:04 0 1 ? ? ? ? 2 systemd +17:05:04 0 2 ? ? ? ? 2 kthreadd +17:05:04 0 3 ? ? ? ? 0 ksoftirqd/0 +17:05:04 0 5 ? ? ? ? 0 kworker/0:0H +17:05:04 0 7 ? ? ? ? 2 rcu_sched +17:05:04 0 8 ? ? ? ? 0 rcu_bh +17:05:04 0 9 ? ? ? ? 0 migration/0 +17:05:04 0 10 ? ? ? ? 0 watchdog/0 +17:05:04 0 11 ? ? ? ? 1 watchdog/1 +17:05:04 0 12 ? ? ? ? 1 migration/1 +17:05:04 0 13 ? ? ? ? 1 ksoftirqd/1 +17:05:04 0 15 ? ? ? ? 1 kworker/1:0H +17:05:04 0 16 ? ? ? ? 2 watchdog/2 +17:05:04 0 17 ? ? ? ? 2 migration/2 +17:05:04 0 18 ? ? ? ? 2 ksoftirqd/2 +17:05:04 1000 5635 ? ? ? ? 1 indicator-print +17:05:04 0 20 ? ? ? ? 2 kworker/2:0H +17:05:04 0 21 ? ? ? ? 3 watchdog/3 +17:05:04 0 22 ? ? ? ? 3 migration/3 +17:05:04 0 23 ? ? ? ? 3 ksoftirqd/3 +17:05:04 0 25 ? ? ? ? 3 kworker/3:0H +17:05:04 0 26 ? ? ? ? 0 kdevtmpfs +17:05:04 0 27 ? ? ? ? 1 netns +17:05:04 0 28 ? ? ? ? 1 perf +17:05:04 0 29 ? ? ? ? 0 khungtaskd +17:05:04 0 30 ? ? ? ? 1 writeback +17:05:04 0 31 ? ? ? ? 2 ksmd +17:05:04 0 32 ? ? ? ? 1 khugepaged +17:05:04 0 33 ? ? ? ? 2 crypto +17:05:04 0 34 ? ? ? ? 2 kintegrityd +17:05:04 0 35 ? ? ? ? 2 bioset +17:05:04 0 36 ? ? ? ? 2 kblockd +17:05:04 0 37 ? ? ? ? 2 ata_sff +17:05:04 0 38 ? ? ? ? 2 md +17:05:04 0 39 ? ? ? ? 3 devfreq_wq +17:05:04 0 3624 ? ? ? ? 1 agetty +17:05:04 0 43 ? ? ? ? 1 kswapd0 +17:05:04 0 44 ? ? ? ? 2 vmstat +17:05:04 0 45 ? ? ? ? 2 fsnotify_mark +17:05:04 0 46 ? ? ? ? 0 ecryptfs-kthrea +17:05:04 1000 5681 ? ? ? ? 1 evolution-sourc +17:05:04 0 5129 ? ? ? ? 2 upowerd +17:05:04 1000 5176 ? ? ? ? 1 systemd +17:05:04 1000 5178 ? ? ? ? 0 (sd-pam +17:05:04 0 23100 ? ? ? ? 0 kworker/0:0 +17:05:04 0 62 ? ? ? ? 2 kthrotld +17:05:04 1000 5183 ? ? ? ? 3 gnome-keyring-d +17:05:04 1000 5185 ? ? ? ? 1 upstart +17:05:04 0 66 ? ? ? ? 2 bioset +17:05:04 0 67 ? ? ? ? 2 bioset +17:05:04 0 68 ? ? ? ? 2 bioset +17:05:04 1000 5701 ? ? ? ? 0 nautilus +17:05:04 0 70 ? ? ? ? 2 bioset +17:05:04 0 71 ? ? ? ? 2 bioset +17:05:04 0 72 ? ? ? ? 2 bioset +17:05:04 0 73 ? ? ? ? 2 bioset +17:05:04 0 74 ? ? ? ? 2 bioset +17:05:04 0 75 ? ? ? ? 2 bioset +17:05:04 0 76 ? ? ? ? 2 bioset +17:05:04 0 77 ? ? ? ? 2 bioset +17:05:04 0 78 ? ? ? ? 2 bioset +17:05:04 0 79 ? ? ? ? 2 bioset +17:05:04 0 80 ? ? ? ? 2 bioset +17:05:04 0 81 ? ? ? ? 2 bioset +17:05:04 0 82 ? ? ? ? 2 bioset +17:05:04 0 83 ? ? ? ? 1 bioset +17:05:04 0 84 ? ? ? ? 1 bioset +17:05:04 0 85 ? ? ? ? 1 bioset +17:05:04 0 86 ? ? ? ? 1 bioset +17:05:04 0 87 ? ? ? ? 1 bioset +17:05:04 0 88 ? ? ? ? 1 bioset +17:05:04 0 89 ? ? ? ? 1 bioset +17:05:04 0 90 ? ? ? ? 1 bioset +17:05:04 0 605 ? ? ? ? 3 wl_event_handle +17:05:04 0 95 ? ? ? ? 2 ipv6_addrconf +17:05:04 1000 5734 ? ? ? ? 1 artha +17:05:04 0 619 ? ? ? ? 0 kvm-irqfd-clean +17:05:04 0 108 ? ? ? ? 1 deferwq +17:05:04 0 109 ? ? ? ? 1 charger_manager +17:05:04 1000 18263 ? ? ? ? 1 slack +17:05:04 1000 18549 ? ? ? ? 0 chrome +17:05:04 1000 5750 ? ? ? ? 0 redshift +17:05:04 0 25535 ? ? ? ? 3 kworker/3:0 +17:05:04 1000 18556 ? ? ? ? 2 chrome +17:05:04 123 5761 ? ? ? ? 2 geoclue +17:05:04 1000 5637 ? ? ? ? 2 indicator-sessi +17:05:04 1000 11395 ? ? ? ? 0 gvfsd-metadata +17:05:04 1000 5767 ? ? ? ? 0 gvfs-udisks2-vo +17:05:04 1000 18568 ? ? ? ? 0 chrome +17:05:04 1000 18569 ? ? ? ? 0 chrome +17:05:04 1000 24343 ? ? ? ? 2 atom +17:05:04 0 5774 ? ? ? ? 0 udisksd +17:05:04 0 1679 ? ? ? ? 0 kmemstick +17:05:04 999 1171 ? ? ? ? 3 pmcd +17:05:04 0 660 ? ? ? ? 0 jbd2/sda9-8 +17:05:04 0 661 ? ? ? ? 0 ext4-rsv-conver +17:05:04 1000 1174 ? ? ? ? 3 pmdaproc +17:05:04 0 151 ? ? ? ? 0 kpsmoused +17:05:04 1000 5272 ? ? ? ? 3 upstart-udev-br +17:05:04 0 1177 ? ? ? ? 0 pmdalinux +17:05:04 124 1178 ? ? ? ? 2 postgres +17:05:04 0 155 ? ? ? ? 3 scsi_tmf_1 +17:05:04 0 156 ? ? ? ? 1 scsi_eh_2 +17:05:04 0 157 ? ? ? ? 3 scsi_tmf_2 +17:05:04 0 158 ? ? ? ? 1 scsi_eh_3 +17:05:04 0 159 ? ? ? ? 0 scsi_tmf_3 +17:05:04 0 160 ? ? ? ? 0 scsi_eh_4 +17:05:04 0 161 ? ? ? ? 0 scsi_tmf_4 +17:05:04 0 162 ? ? ? ? 1 scsi_eh_5 +17:05:04 0 1051 ? ? ? ? 2 lightdm +17:05:04 1000 19424 ? ? ? ? 1 gnome-terminal- +17:05:04 1000 5286 ? ? ? ? 3 window-stack-br +17:05:04 1000 5800 ? ? ? ? 3 evolution-calen +17:05:04 0 169 ? ? ? ? 2 kfd_process_wq +17:05:04 0 172 ? ? ? ? 1 ttm_swap +17:05:04 0 174 ? ? ? ? 1 bioset +17:05:04 1000 18291 ? ? ? ? 2 slack +17:05:04 1000 5274 ? ? ? ? 3 dbus-daemon +17:05:04 0 23736 ? ? ? ? 3 kworker/3:1 +17:05:04 1000 6329 ? ? ? ? 2 update-notifier +17:05:04 1000 5818 ? ? ? ? 0 gvfs-mtp-volume +17:05:04 0 5829 ? ? ? ? 1 fwupd +17:05:04 1000 6855 ? ? ? ? 0 deja-dup-monito +17:05:04 0 22728 ? ? ? ? 0 kworker/u16:3 +17:05:04 1000 11327 ? ? ? ? 3 gvfsd-dnssd +17:05:04 999 4810 ? ? ? ? 2 pmlogger +17:05:04 1000 18465 ? ? ? ? 0 chrome +17:05:04 113 5154 ? ? ? ? 0 colord +17:05:04 0 24782 ? ? ? ? 3 kworker/3:2 +17:05:04 0 461 ? ? ? ? 2 edac-poller +17:05:04 1000 18641 ? ? ? ? 3 chrome +17:05:04 1000 5842 ? ? ? ? 3 gvfsd-trash +17:05:04 1000 5633 ? ? ? ? 3 indicator-sound +17:05:04 122 4821 ? ? ? ? 0 unbound +17:05:04 1000 5335 ? ? ? ? 2 ibus-daemon +17:05:04 1000 24868 ? ? ? ? 0 python +17:05:04 1000 21722 ? ? ? ? 1 chrome +17:05:04 0 24783 ? ? ? ? 0 kworker/u16:2 +17:05:04 1000 18420 ? ? ? ? 1 cat +17:05:04 0 18062 ? ? ? ? 2 dhclient +17:05:04 1000 5343 ? ? ? ? 3 upstart-dbus-br +17:05:04 1000 6023 ? ? ? ? 2 gconfd-2 +17:05:04 1000 5345 ? ? ? ? 0 upstart-dbus-br +17:05:04 0 22757 ? ? ? ? 1 kworker/1:0 +17:05:04 0 21457 ? ? ? ? 2 kworker/2:2 +17:05:04 1000 5866 ? ? ? ? 2 evolution-calen +17:05:04 1000 5671 ? ? ? ? 3 indicator-appli +17:05:04 1000 5876 ? ? ? ? 3 evolution-addre +17:05:04 1000 5878 ? ? ? ? 3 evolution-calen +17:05:04 1000 5367 ? ? ? ? 0 gpg-agent +17:05:04 0 1031 ? ? ? ? 0 polkitd +17:05:04 0 249 ? ? ? ? 0 raid5wq +17:05:04 1000 8954 ? ? ? ? 2 unity-scope-hom +17:05:04 1000 18421 ? ? ? ? 1 cat +17:05:04 65534 5273 ? ? ? ? 3 dnsmasq +17:05:04 1000 5375 ? ? ? ? 3 gvfsd +17:05:04 1000 25344 ? ? ? ? 1 bash +17:05:04 1000 5380 ? ? ? ? 3 gvfsd-fuse +17:05:04 1000 5895 ? ? ? ? 2 evolution-addre +17:05:04 1000 8969 ? ? ? ? 3 unity-files-dae +17:05:04 1000 8971 ? ? ? ? 3 unity-music-dae +17:05:04 100 780 ? ? ? ? 3 systemd-timesyn +17:05:04 1000 5389 ? ? ? ? 3 ibus-dconf +17:05:04 1000 5395 ? ? ? ? 3 upstart-file-br +17:05:04 1000 5396 ? ? ? ? 3 ibus-ui-gtk3 +17:05:04 1000 18503 ? ? ? ? 1 chrome +17:05:04 1000 5398 ? ? ? ? 1 ibus-x11 +17:05:04 0 279 ? ? ? ? 0 bioset +17:05:04 1000 7130 ? ? ? ? 0 notify-osd +17:05:04 1000 5806 ? ? ? ? 1 gvfs-gphoto2-vo +17:05:04 1000 5789 ? ? ? ? 2 gvfs-goa-volume +17:05:04 1000 18224 ? ? ? ? 1 slack +17:05:04 0 17945 ? ? ? ? 3 irq/30-mei_me +17:05:04 1000 5414 ? ? ? ? 0 at-spi-bus-laun +17:05:04 1000 19642 ? ? ? ? 3 atom +17:05:04 1000 5419 ? ? ? ? 2 dbus-daemon +17:05:04 1000 18220 ? ? ? ? 1 slack +17:05:04 1000 5421 ? ? ? ? 2 at-spi2-registr +17:05:04 104 814 ? ? ? ? 2 rsyslogd +17:05:04 106 815 ? ? ? ? 1 dbus-daemon +17:05:04 0 304 ? ? ? ? 1 kworker/1:1H +17:05:04 0 306 ? ? ? ? 3 jbd2/sda8-8 +17:05:04 0 307 ? ? ? ? 1 ext4-rsv-conver +17:05:04 1000 5946 ? ? ? ? 1 zeitgeist-datah +17:05:04 0 22751 ? ? ? ? 2 kworker/u16:0 +17:05:04 1000 5441 ? ? ? ? 0 unity-settings- +17:05:04 1000 5442 ? ? ? ? 2 bamfdaemon +17:05:04 0 22852 ? ? ? ? 0 kworker/u16:1 +17:05:04 1000 5957 ? ? ? ? 0 zeitgeist-daemo +17:05:04 1000 18253 ? ? ? ? 0 slack +17:05:04 0 4937 ? ? ? ? 2 apache2 +17:05:04 0 25419 ? ? ? ? 2 kworker/2:1 +17:05:04 33 4940 ? ? ? ? 0 apache2 +17:05:04 33 4941 ? ? ? ? 3 apache2 +17:05:04 1000 5456 ? ? ? ? 2 hud-service +17:05:04 1000 5459 ? ? ? ? 2 gnome-session-b +17:05:04 1000 5461 ? ? ? ? 2 unity-panel-ser +17:05:04 1000 5462 ? ? ? ? 0 compiz +17:05:04 0 855 ? ? ? ? 2 NetworkManager +17:05:04 124 1369 ? ? ? ? 2 postgres +17:05:04 124 1370 ? ? ? ? 0 postgres +17:05:04 124 1371 ? ? ? ? 0 postgres +17:05:04 124 1372 ? ? ? ? 2 postgres +17:05:04 124 1373 ? ? ? ? 0 postgres +17:05:04 0 862 ? ? ? ? 1 cron +17:05:04 0 351 ? ? ? ? 0 kauditd +17:05:04 1000 18428 ? ? ? ? 2 chrome +17:05:04 0 866 ? ? ? ? 1 ModemManager +17:05:04 1000 19618 ? ? ? ? 0 atom +17:05:04 0 361 ? ? ? ? 3 systemd-journal +17:05:04 1000 18459 ? ? ? ? 0 chrome +17:05:04 0 1683 ? ? ? ? 3 rtsx_usb_ms_2 +17:05:04 0 372 ? ? ? ? 1 lvmetad +17:05:04 0 886 ? ? ? ? 1 acpid +17:05:04 0 888 ? ? ? ? 2 systemd-logind +17:05:04 0 63 ? ? ? ? 2 acpi_thermal_pm +17:05:04 0 892 ? ? ? ? 0 atd +17:05:04 0 895 ? ? ? ? 3 accounts-daemon +17:05:04 0 897 ? ? ? ? 3 thermald +17:05:04 0 386 ? ? ? ? 1 systemd-udevd +17:05:04 1000 18411 ? ? ? ? 2 chrome +17:05:04 0 662 ? ? ? ? 3 jbd2/sda10-8 +17:05:04 1000 5953 ? ? ? ? 1 sh +17:05:04 109 904 ? ? ? ? 2 whoopsie +17:05:04 0 1087 ? ? ? ? 1 Xorg +17:05:04 0 663 ? ? ? ? 1 ext4-rsv-conver +17:05:04 1000 18498 ? ? ? ? 1 chrome +17:05:04 111 912 ? ? ? ? 3 avahi-daemon +17:05:04 0 401 ? ? ? ? 0 kworker/0:1H +17:05:04 0 915 ? ? ? ? 3 snapd +17:05:04 0 24981 ? ? ? ? 0 kworker/0:2 +17:05:04 1000 18508 ? ? ? ? 2 chrome +17:05:04 0 153 ? ? ? ? 3 scsi_tmf_0 +17:05:04 0 154 ? ? ? ? 1 scsi_eh_1 +17:05:04 1000 19653 ? ? ? ? 0 atom +17:05:04 0 1173 ? ? ? ? 1 pmdaroot +17:05:04 1000 18337 ? ? ? ? 0 slack +17:05:04 999 1179 ? ? ? ? 3 pmdasimple +17:05:04 1000 5702 ? ? ? ? 3 unity-fallback- +17:05:04 1000 5964 ? ? ? ? 2 zeitgeist-fts +17:05:04 1000 18495 ? ? ? ? 0 chrome +17:05:04 0 24411 ? ? ? ? 1 kworker/1:1 +17:05:04 1000 5703 ? ? ? ? 3 polkit-gnome-au +17:05:04 0 5039 ? ? ? ? 0 lightdm +17:05:04 1000 11289 ? ? ? ? 0 gvfsd-network +17:05:04 1000 19614 ? ? ? ? 0 atom +17:05:04 0 25460 ? ? ? ? 1 kworker/1:2 +17:05:04 1000 5794 ? ? ? ? 2 gvfs-afc-volume +17:05:04 1000 5620 ? ? ? ? 3 indicator-messa +17:05:04 1000 23704 ? ? ? ? 1 gedit +17:05:04 1000 5621 ? ? ? ? 0 indicator-bluet +17:05:04 1000 18581 ? ? ? ? 2 chrome +17:05:04 0 24005 ? ? ? ? 0 kworker/0:1 +17:05:04 1000 5708 ? ? ? ? 3 nm-applet +17:05:04 0 24523 ? ? ? ? 1 bioset +17:05:04 0 1186 ? ? ? ? 0 wpa_supplicant +17:05:04 1000 5709 ? ? ? ? 3 gnome-software +17:05:04 118 5072 ? ? ? ? 1 rtkit-daemon +17:05:04 0 465 ? ? ? ? 2 kworker/2:1H +17:05:04 0 163 ? ? ? ? 0 scsi_tmf_5 +17:05:04 0 468 ? ? ? ? 3 kworker/3:1H +17:05:04 1000 22777 ? ? ? ? 0 chrome +17:05:04 0 152 ? ? ? ? 1 scsi_eh_0 +17:05:04 0 1175 ? ? ? ? 1 pmdaxfs +17:05:04 1000 5597 ? ? ? ? 1 ibus-engine-sim +17:05:04 0 24229 ? ? ? ? 2 kworker/2:0 +17:05:04 1000 5600 ? ? ? ? 0 syndaemon +17:05:04 1000 5604 ? ? ? ? 0 pulseaudio +17:05:04 1000 19431 ? ? ? ? 3 bash +17:05:04 1000 5608 ? ? ? ? 2 dconf-service +17:05:04 1000 5628 ? ? ? ? 1 indicator-datet +17:05:04 111 1002 ? ? ? ? 3 avahi-daemon +17:05:04 0 1003 ? ? ? ? 3 cups-browsed +17:05:04 1000 25541 ? ? ? ? 0 pmlogger +17:05:04 1000 8967 ? ? ? ? 0 unity-scope-loa +17:05:04 1000 19539 ? ? ? ? 3 chrome +17:05:04 0 1012 ? ? ? ? 0 irqbalance +17:05:04 0 1013 ? ? ? ? 3 mdadm +17:05:04 1000 5623 ? ? ? ? 2 indicator-power +17:05:04 1000 18424 ? ? ? ? 1 chrome +17:05:04 1000 18425 ? ? ? ? 0 nacl_helper +17:05:04 999 1176 ? ? ? ? 2 pmdasample +17:05:04 0 508 ? ? ? ? 1 cfg80211 +17:05:04 1000 18583 ? ? ? ? 1 chrome +Timestamp UID PID usr system guest %CPU CPU Command +17:05:05 1000 5632 0.0 0.0 0.0 0.0 1 indicator-keybo +17:05:05 0 1 0.0 0.0 0.0 0.0 2 systemd +17:05:05 0 2 0.0 0.0 0.0 0.0 2 kthreadd +17:05:05 0 3 0.0 0.0 0.0 0.0 0 ksoftirqd/0 +17:05:05 0 5 0.0 0.0 0.0 0.0 0 kworker/0:0H +17:05:05 0 7 0.0 0.0 0.0 0.0 1 rcu_sched +17:05:05 0 8 0.0 0.0 0.0 0.0 0 rcu_bh +17:05:05 0 9 0.0 0.0 0.0 0.0 0 migration/0 +17:05:05 0 10 0.0 0.0 0.0 0.0 0 watchdog/0 +17:05:05 0 11 0.0 0.0 0.0 0.0 1 watchdog/1 +17:05:05 0 12 0.0 0.0 0.0 0.0 1 migration/1 +17:05:05 0 13 0.0 0.0 0.0 0.0 1 ksoftirqd/1 +17:05:05 0 15 0.0 0.0 0.0 0.0 1 kworker/1:0H +17:05:05 0 16 0.0 0.0 0.0 0.0 2 watchdog/2 +17:05:05 0 17 0.0 0.0 0.0 0.0 2 migration/2 +17:05:05 0 18 0.0 0.0 0.0 0.0 2 ksoftirqd/2 +17:05:05 1000 5635 0.0 0.0 0.0 0.0 1 indicator-print +17:05:05 0 20 0.0 0.0 0.0 0.0 2 kworker/2:0H +17:05:05 0 21 0.0 0.0 0.0 0.0 3 watchdog/3 +17:05:05 0 22 0.0 0.0 0.0 0.0 3 migration/3 +17:05:05 0 23 0.0 0.0 0.0 0.0 3 ksoftirqd/3 +17:05:05 0 25 0.0 0.0 0.0 0.0 3 kworker/3:0H +17:05:05 0 26 0.0 0.0 0.0 0.0 0 kdevtmpfs +17:05:05 0 27 0.0 0.0 0.0 0.0 1 netns +17:05:05 0 28 0.0 0.0 0.0 0.0 1 perf +17:05:05 0 29 0.0 0.0 0.0 0.0 0 khungtaskd +17:05:05 0 30 0.0 0.0 0.0 0.0 1 writeback +17:05:05 0 31 0.0 0.0 0.0 0.0 2 ksmd +17:05:05 0 32 0.0 0.0 0.0 0.0 2 khugepaged +17:05:05 0 33 0.0 0.0 0.0 0.0 2 crypto +17:05:05 0 34 0.0 0.0 0.0 0.0 2 kintegrityd +17:05:05 0 35 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 36 0.0 0.0 0.0 0.0 2 kblockd +17:05:05 0 37 0.0 0.0 0.0 0.0 2 ata_sff +17:05:05 0 38 0.0 0.0 0.0 0.0 2 md +17:05:05 0 39 0.0 0.0 0.0 0.0 3 devfreq_wq +17:05:05 0 3624 0.0 0.0 0.0 0.0 1 agetty +17:05:05 0 43 0.0 0.0 0.0 0.0 1 kswapd0 +17:05:05 0 44 0.0 0.0 0.0 0.0 2 vmstat +17:05:05 0 45 0.0 0.0 0.0 0.0 2 fsnotify_mark +17:05:05 0 46 0.0 0.0 0.0 0.0 0 ecryptfs-kthrea +17:05:05 1000 5681 0.0 0.0 0.0 0.0 1 evolution-sourc +17:05:05 0 5129 0.0 0.0 0.0 0.0 2 upowerd +17:05:05 1000 5176 0.0 0.0 0.0 0.0 1 systemd +17:05:05 1000 5178 0.0 0.0 0.0 0.0 0 (sd-pam +17:05:05 0 23100 0.0 0.0 0.0 0.0 0 kworker/0:0 +17:05:05 0 62 0.0 0.0 0.0 0.0 2 kthrotld +17:05:05 1000 5183 0.0 0.0 0.0 0.0 3 gnome-keyring-d +17:05:05 1000 5185 0.0 0.0 0.0 0.0 1 upstart +17:05:05 0 66 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 67 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 68 0.0 0.0 0.0 0.0 2 bioset +17:05:05 1000 5701 0.0 0.0 0.0 0.0 1 nautilus +17:05:05 0 70 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 71 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 72 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 73 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 74 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 75 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 76 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 77 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 78 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 79 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 80 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 81 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 82 0.0 0.0 0.0 0.0 2 bioset +17:05:05 0 83 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 84 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 85 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 86 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 87 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 88 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 89 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 90 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 605 0.0 0.0 0.0 0.0 3 wl_event_handle +17:05:05 0 95 0.0 0.0 0.0 0.0 2 ipv6_addrconf +17:05:05 1000 5734 0.0 0.0 0.0 0.0 1 artha +17:05:05 0 619 0.0 0.0 0.0 0.0 0 kvm-irqfd-clean +17:05:05 0 108 0.0 0.0 0.0 0.0 1 deferwq +17:05:05 0 109 0.0 0.0 0.0 0.0 1 charger_manager +17:05:05 1000 18263 0.0 0.0 0.0 0.0 1 slack +17:05:05 1000 18549 0.0 0.0 0.0 0.0 0 chrome +17:05:05 1000 5750 0.0 0.0 0.0 0.0 0 redshift +17:05:05 0 25535 0.0 0.0 0.0 0.0 3 kworker/3:0 +17:05:05 1000 18556 0.0 0.0 0.0 0.0 2 chrome +17:05:05 123 5761 0.0 0.0 0.0 0.0 2 geoclue +17:05:05 1000 5637 0.0 0.0 0.0 0.0 2 indicator-sessi +17:05:05 1000 11395 0.0 0.0 0.0 0.0 0 gvfsd-metadata +17:05:05 1000 5767 0.0 0.0 0.0 0.0 0 gvfs-udisks2-vo +17:05:05 1000 18568 0.0 0.0 0.0 0.0 0 chrome +17:05:05 1000 18569 0.0 0.0 0.0 0.0 0 chrome +17:05:05 1000 24343 0.0 0.0 0.0 0.0 2 atom +17:05:05 0 5774 0.0 0.0 0.0 0.0 0 udisksd +17:05:05 0 1679 0.0 0.0 0.0 0.0 0 kmemstick +17:05:05 999 1171 0.0 0.0 0.0 0.0 2 pmcd +17:05:05 0 660 0.0 0.0 0.0 0.0 0 jbd2/sda9-8 +17:05:05 0 661 0.0 0.0 0.0 0.0 0 ext4-rsv-conver +17:05:05 1000 1174 1.0 1.0 0.0 2.0 3 pmdaproc +17:05:05 0 151 0.0 0.0 0.0 0.0 0 kpsmoused +17:05:05 1000 5272 0.0 0.0 0.0 0.0 3 upstart-udev-br +17:05:05 0 1177 0.0 0.0 0.0 0.0 0 pmdalinux +17:05:05 124 1178 0.0 0.0 0.0 0.0 2 postgres +17:05:05 0 155 0.0 0.0 0.0 0.0 3 scsi_tmf_1 +17:05:05 0 156 0.0 0.0 0.0 0.0 1 scsi_eh_2 +17:05:05 0 157 0.0 0.0 0.0 0.0 3 scsi_tmf_2 +17:05:05 0 158 0.0 0.0 0.0 0.0 1 scsi_eh_3 +17:05:05 0 159 0.0 0.0 0.0 0.0 0 scsi_tmf_3 +17:05:05 0 160 0.0 0.0 0.0 0.0 0 scsi_eh_4 +17:05:05 0 161 0.0 0.0 0.0 0.0 0 scsi_tmf_4 +17:05:05 0 162 0.0 0.0 0.0 0.0 1 scsi_eh_5 +17:05:05 0 1051 0.0 0.0 0.0 0.0 2 lightdm +17:05:05 1000 19424 0.0 0.0 0.0 0.0 1 gnome-terminal- +17:05:05 1000 5286 0.0 0.0 0.0 0.0 3 window-stack-br +17:05:05 1000 5800 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:05 0 169 0.0 0.0 0.0 0.0 2 kfd_process_wq +17:05:05 0 172 0.0 0.0 0.0 0.0 1 ttm_swap +17:05:05 0 174 0.0 0.0 0.0 0.0 1 bioset +17:05:05 1000 18291 0.0 0.0 0.0 0.0 2 slack +17:05:05 1000 5274 0.0 0.0 0.0 0.0 3 dbus-daemon +17:05:05 0 23736 0.0 0.0 0.0 0.0 3 kworker/3:1 +17:05:05 1000 6329 0.0 0.0 0.0 0.0 2 update-notifier +17:05:05 1000 5818 0.0 0.0 0.0 0.0 0 gvfs-mtp-volume +17:05:05 0 5829 0.0 0.0 0.0 0.0 1 fwupd +17:05:05 1000 6855 0.0 0.0 0.0 0.0 0 deja-dup-monito +17:05:05 0 22728 0.0 0.0 0.0 0.0 0 kworker/u16:3 +17:05:05 1000 11327 0.0 0.0 0.0 0.0 3 gvfsd-dnssd +17:05:05 999 4810 0.0 0.0 0.0 0.0 2 pmlogger +17:05:05 1000 18465 0.0 0.0 0.0 0.0 0 chrome +17:05:05 113 5154 0.0 0.0 0.0 0.0 0 colord +17:05:05 0 24782 0.0 0.0 0.0 0.0 3 kworker/3:2 +17:05:05 0 461 0.0 0.0 0.0 0.0 2 edac-poller +17:05:05 1000 18641 0.0 0.0 0.0 0.0 1 chrome +17:05:05 1000 5842 0.0 0.0 0.0 0.0 3 gvfsd-trash +17:05:05 1000 5633 0.0 0.0 0.0 0.0 3 indicator-sound +17:05:05 122 4821 0.0 0.0 0.0 0.0 0 unbound +17:05:05 1000 5335 0.0 0.0 0.0 0.0 2 ibus-daemon +17:05:05 1000 24868 0.0 0.0 0.0 0.0 0 python +17:05:05 1000 21722 0.0 0.0 0.0 0.0 1 chrome +17:05:05 0 24783 0.0 0.0 0.0 0.0 0 kworker/u16:2 +17:05:05 1000 18420 0.0 0.0 0.0 0.0 1 cat +17:05:05 0 18062 0.0 0.0 0.0 0.0 2 dhclient +17:05:05 1000 5343 0.0 0.0 0.0 0.0 3 upstart-dbus-br +17:05:05 1000 6023 0.0 0.0 0.0 0.0 2 gconfd-2 +17:05:05 1000 5345 0.0 0.0 0.0 0.0 0 upstart-dbus-br +17:05:05 0 22757 0.0 0.0 0.0 0.0 1 kworker/1:0 +17:05:05 0 21457 0.0 0.0 0.0 0.0 2 kworker/2:2 +17:05:05 1000 5866 0.0 0.0 0.0 0.0 2 evolution-calen +17:05:05 1000 5671 0.0 0.0 0.0 0.0 3 indicator-appli +17:05:05 1000 5876 0.0 0.0 0.0 0.0 3 evolution-addre +17:05:05 1000 5878 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:05 1000 5367 0.0 0.0 0.0 0.0 0 gpg-agent +17:05:05 0 1031 0.0 0.0 0.0 0.0 0 polkitd +17:05:05 0 249 0.0 0.0 0.0 0.0 0 raid5wq +17:05:05 1000 8954 0.0 0.0 0.0 0.0 2 unity-scope-hom +17:05:05 1000 18421 0.0 0.0 0.0 0.0 1 cat +17:05:05 65534 5273 0.0 0.0 0.0 0.0 3 dnsmasq +17:05:05 1000 5375 0.0 0.0 0.0 0.0 3 gvfsd +17:05:05 1000 25344 0.0 0.0 0.0 0.0 1 bash +17:05:05 1000 5380 0.0 0.0 0.0 0.0 3 gvfsd-fuse +17:05:05 1000 5895 0.0 0.0 0.0 0.0 2 evolution-addre +17:05:05 1000 8969 0.0 0.0 0.0 0.0 3 unity-files-dae +17:05:05 1000 8971 0.0 0.0 0.0 0.0 3 unity-music-dae +17:05:05 100 780 0.0 0.0 0.0 0.0 3 systemd-timesyn +17:05:05 1000 5389 0.0 0.0 0.0 0.0 3 ibus-dconf +17:05:05 1000 5395 0.0 0.0 0.0 0.0 3 upstart-file-br +17:05:05 1000 5396 0.0 0.0 0.0 0.0 3 ibus-ui-gtk3 +17:05:05 1000 18503 0.0 0.0 0.0 0.0 1 chrome +17:05:05 1000 5398 0.0 0.0 0.0 0.0 1 ibus-x11 +17:05:05 0 279 0.0 0.0 0.0 0.0 0 bioset +17:05:05 1000 7130 0.0 0.0 0.0 0.0 0 notify-osd +17:05:05 1000 5806 0.0 0.0 0.0 0.0 1 gvfs-gphoto2-vo +17:05:05 1000 5789 0.0 0.0 0.0 0.0 2 gvfs-goa-volume +17:05:05 1000 18224 0.0 0.0 0.0 0.0 1 slack +17:05:05 0 17945 0.0 0.0 0.0 0.0 3 irq/30-mei_me +17:05:05 1000 5414 0.0 0.0 0.0 0.0 0 at-spi-bus-laun +17:05:05 1000 19642 0.0 0.0 0.0 0.0 3 atom +17:05:05 1000 5419 0.0 0.0 0.0 0.0 2 dbus-daemon +17:05:05 1000 18220 0.0 0.0 0.0 0.0 1 slack +17:05:05 1000 5421 0.0 0.0 0.0 0.0 2 at-spi2-registr +17:05:05 104 814 0.0 0.0 0.0 0.0 2 rsyslogd +17:05:05 106 815 0.0 0.0 0.0 0.0 1 dbus-daemon +17:05:05 0 304 0.0 0.0 0.0 0.0 1 kworker/1:1H +17:05:05 0 306 0.0 0.0 0.0 0.0 3 jbd2/sda8-8 +17:05:05 0 307 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:05 1000 5946 0.0 0.0 0.0 0.0 1 zeitgeist-datah +17:05:05 0 22751 0.0 0.0 0.0 0.0 2 kworker/u16:0 +17:05:05 1000 5441 0.0 0.0 0.0 0.0 0 unity-settings- +17:05:05 1000 5442 0.0 0.0 0.0 0.0 2 bamfdaemon +17:05:05 0 22852 0.0 0.0 0.0 0.0 0 kworker/u16:1 +17:05:05 1000 5957 0.0 0.0 0.0 0.0 0 zeitgeist-daemo +17:05:05 1000 18253 0.0 0.0 0.0 0.0 0 slack +17:05:05 0 4937 0.0 0.0 0.0 0.0 2 apache2 +17:05:05 0 25419 0.0 0.0 0.0 0.0 2 kworker/2:1 +17:05:05 33 4940 0.0 1.0 0.0 1.0 0 apache2 +17:05:05 33 4941 0.0 0.0 0.0 0.0 3 apache2 +17:05:05 1000 5456 0.0 0.0 0.0 0.0 2 hud-service +17:05:05 1000 5459 0.0 0.0 0.0 0.0 2 gnome-session-b +17:05:05 1000 5461 0.0 0.0 0.0 0.0 2 unity-panel-ser +17:05:05 1000 5462 0.0 0.0 0.0 0.0 2 compiz +17:05:05 0 855 0.0 0.0 0.0 0.0 2 NetworkManager +17:05:05 124 1369 0.0 0.0 0.0 0.0 2 postgres +17:05:05 124 1370 0.0 0.0 0.0 0.0 0 postgres +17:05:05 124 1371 0.0 0.0 0.0 0.0 0 postgres +17:05:05 124 1372 0.0 0.0 0.0 0.0 2 postgres +17:05:05 124 1373 0.0 0.0 0.0 0.0 0 postgres +17:05:05 0 862 0.0 0.0 0.0 0.0 1 cron +17:05:05 0 351 0.0 0.0 0.0 0.0 0 kauditd +17:05:05 1000 18428 0.0 0.0 0.0 0.0 2 chrome +17:05:05 0 866 0.0 0.0 0.0 0.0 1 ModemManager +17:05:05 1000 19618 0.0 0.0 0.0 0.0 0 atom +17:05:05 0 361 0.0 0.0 0.0 0.0 3 systemd-journal +17:05:05 1000 18459 0.0 0.0 0.0 0.0 2 chrome +17:05:05 0 1683 0.0 0.0 0.0 0.0 3 rtsx_usb_ms_2 +17:05:05 0 372 0.0 0.0 0.0 0.0 1 lvmetad +17:05:05 0 886 0.0 0.0 0.0 0.0 1 acpid +17:05:05 0 888 0.0 0.0 0.0 0.0 2 systemd-logind +17:05:05 0 63 0.0 0.0 0.0 0.0 2 acpi_thermal_pm +17:05:05 0 892 0.0 0.0 0.0 0.0 0 atd +17:05:05 0 895 0.0 0.0 0.0 0.0 3 accounts-daemon +17:05:05 0 897 0.0 0.0 0.0 0.0 3 thermald +17:05:05 0 386 0.0 0.0 0.0 0.0 1 systemd-udevd +17:05:05 1000 18411 2.0 0.0 0.0 2.0 1 chrome +17:05:05 0 662 0.0 0.0 0.0 0.0 3 jbd2/sda10-8 +17:05:05 1000 5953 0.0 0.0 0.0 0.0 1 sh +17:05:05 109 904 0.0 0.0 0.0 0.0 2 whoopsie +17:05:05 0 1087 1.0 0.0 0.0 1.0 1 Xorg +17:05:05 0 663 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:05 1000 18498 0.0 0.0 0.0 0.0 0 chrome +17:05:05 111 912 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:05 0 401 0.0 0.0 0.0 0.0 0 kworker/0:1H +17:05:05 0 915 0.0 0.0 0.0 0.0 3 snapd +17:05:05 0 24981 0.0 0.0 0.0 0.0 0 kworker/0:2 +17:05:05 1000 18508 0.0 0.0 0.0 0.0 2 chrome +17:05:05 0 153 0.0 0.0 0.0 0.0 3 scsi_tmf_0 +17:05:05 0 154 0.0 0.0 0.0 0.0 1 scsi_eh_1 +17:05:05 1000 19653 0.0 0.0 0.0 0.0 0 atom +17:05:05 0 1173 0.0 0.0 0.0 0.0 1 pmdaroot +17:05:05 1000 18337 0.0 0.0 0.0 0.0 3 slack +17:05:05 999 1179 0.0 0.0 0.0 0.0 3 pmdasimple +17:05:05 1000 5702 0.0 0.0 0.0 0.0 3 unity-fallback- +17:05:05 1000 5964 0.0 0.0 0.0 0.0 2 zeitgeist-fts +17:05:05 1000 18495 0.0 0.0 0.0 0.0 0 chrome +17:05:05 0 24411 0.0 0.0 0.0 0.0 1 kworker/1:1 +17:05:05 1000 5703 0.0 0.0 0.0 0.0 3 polkit-gnome-au +17:05:05 0 5039 0.0 0.0 0.0 0.0 0 lightdm +17:05:05 1000 11289 0.0 0.0 0.0 0.0 0 gvfsd-network +17:05:05 1000 19614 0.0 0.0 0.0 0.0 0 atom +17:05:05 0 25460 0.0 0.0 0.0 0.0 1 kworker/1:2 +17:05:05 1000 5794 0.0 0.0 0.0 0.0 2 gvfs-afc-volume +17:05:05 1000 5620 0.0 0.0 0.0 0.0 3 indicator-messa +17:05:05 1000 23704 0.0 0.0 0.0 0.0 1 gedit +17:05:05 1000 5621 0.0 0.0 0.0 0.0 0 indicator-bluet +17:05:05 1000 18581 0.0 0.0 0.0 0.0 2 chrome +17:05:05 0 24005 0.0 0.0 0.0 0.0 0 kworker/0:1 +17:05:05 1000 5708 0.0 0.0 0.0 0.0 3 nm-applet +17:05:05 0 24523 0.0 0.0 0.0 0.0 1 bioset +17:05:05 0 1186 0.0 0.0 0.0 0.0 0 wpa_supplicant +17:05:05 1000 5709 0.0 0.0 0.0 0.0 3 gnome-software +17:05:05 118 5072 0.0 0.0 0.0 0.0 1 rtkit-daemon +17:05:05 0 465 0.0 0.0 0.0 0.0 2 kworker/2:1H +17:05:05 0 163 0.0 0.0 0.0 0.0 0 scsi_tmf_5 +17:05:05 0 468 0.0 0.0 0.0 0.0 3 kworker/3:1H +17:05:05 1000 22777 10.7 1.1 0.0 11.799999999999999 0 chrome +17:05:05 0 152 0.0 0.0 0.0 0.0 1 scsi_eh_0 +17:05:05 0 1175 0.0 0.0 0.0 0.0 1 pmdaxfs +17:05:05 1000 5597 0.0 0.0 0.0 0.0 1 ibus-engine-sim +17:05:05 0 24229 0.0 0.0 0.0 0.0 2 kworker/2:0 +17:05:05 1000 5600 0.0 0.0 0.0 0.0 0 syndaemon +17:05:05 1000 5604 1.0 1.0 0.0 2.0 2 pulseaudio +17:05:05 1000 19431 0.0 0.0 0.0 0.0 3 bash +17:05:05 1000 5608 0.0 0.0 0.0 0.0 2 dconf-service +17:05:05 1000 5628 0.0 0.0 0.0 0.0 1 indicator-datet +17:05:05 111 1002 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:05 0 1003 0.0 0.0 0.0 0.0 3 cups-browsed +17:05:05 1000 25541 0.0 0.0 0.0 0.0 3 pmlogger +17:05:05 1000 8967 0.0 0.0 0.0 0.0 0 unity-scope-loa +17:05:05 1000 19539 1.0 0.0 0.0 1.0 3 chrome +17:05:05 0 1012 0.0 0.0 0.0 0.0 0 irqbalance +17:05:05 0 1013 0.0 0.0 0.0 0.0 3 mdadm +17:05:05 1000 5623 0.0 0.0 0.0 0.0 2 indicator-power +17:05:05 1000 18424 0.0 0.0 0.0 0.0 1 chrome +17:05:05 1000 18425 0.0 0.0 0.0 0.0 0 nacl_helper +17:05:05 999 1176 0.0 0.0 0.0 0.0 2 pmdasample +17:05:05 0 508 0.0 0.0 0.0 0.0 1 cfg80211 +17:05:05 1000 18583 0.0 0.0 0.0 0.0 1 chrome +Timestamp UID PID usr system guest %CPU CPU Command +17:05:06 1000 5632 0.0 0.0 0.0 0.0 1 indicator-keybo +17:05:06 0 1 0.0 0.0 0.0 0.0 2 systemd +17:05:06 0 2 0.0 0.0 0.0 0.0 2 kthreadd +17:05:06 0 3 0.0 0.0 0.0 0.0 0 ksoftirqd/0 +17:05:06 0 5 0.0 0.0 0.0 0.0 0 kworker/0:0H +17:05:06 0 7 0.0 0.0 0.0 0.0 0 rcu_sched +17:05:06 0 8 0.0 0.0 0.0 0.0 0 rcu_bh +17:05:06 0 9 0.0 0.0 0.0 0.0 0 migration/0 +17:05:06 0 10 0.0 0.0 0.0 0.0 0 watchdog/0 +17:05:06 0 11 0.0 0.0 0.0 0.0 1 watchdog/1 +17:05:06 0 12 0.0 0.0 0.0 0.0 1 migration/1 +17:05:06 0 13 0.0 0.0 0.0 0.0 1 ksoftirqd/1 +17:05:06 0 15 0.0 0.0 0.0 0.0 1 kworker/1:0H +17:05:06 0 16 0.0 0.0 0.0 0.0 2 watchdog/2 +17:05:06 0 17 0.0 0.0 0.0 0.0 2 migration/2 +17:05:06 0 18 0.0 0.0 0.0 0.0 2 ksoftirqd/2 +17:05:06 1000 5635 0.0 0.0 0.0 0.0 1 indicator-print +17:05:06 0 20 0.0 0.0 0.0 0.0 2 kworker/2:0H +17:05:06 0 21 0.0 0.0 0.0 0.0 3 watchdog/3 +17:05:06 0 22 0.0 0.0 0.0 0.0 3 migration/3 +17:05:06 0 23 0.0 0.0 0.0 0.0 3 ksoftirqd/3 +17:05:06 0 25 0.0 0.0 0.0 0.0 3 kworker/3:0H +17:05:06 0 26 0.0 0.0 0.0 0.0 0 kdevtmpfs +17:05:06 0 27 0.0 0.0 0.0 0.0 1 netns +17:05:06 0 28 0.0 0.0 0.0 0.0 1 perf +17:05:06 0 29 0.0 0.0 0.0 0.0 0 khungtaskd +17:05:06 0 30 0.0 0.0 0.0 0.0 1 writeback +17:05:06 0 31 0.0 0.0 0.0 0.0 2 ksmd +17:05:06 0 32 0.0 0.0 0.0 0.0 2 khugepaged +17:05:06 0 33 0.0 0.0 0.0 0.0 2 crypto +17:05:06 0 34 0.0 0.0 0.0 0.0 2 kintegrityd +17:05:06 0 35 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 36 0.0 0.0 0.0 0.0 2 kblockd +17:05:06 0 37 0.0 0.0 0.0 0.0 2 ata_sff +17:05:06 0 38 0.0 0.0 0.0 0.0 2 md +17:05:06 0 39 0.0 0.0 0.0 0.0 3 devfreq_wq +17:05:06 0 3624 0.0 0.0 0.0 0.0 1 agetty +17:05:06 0 43 0.0 0.0 0.0 0.0 1 kswapd0 +17:05:06 0 44 0.0 0.0 0.0 0.0 2 vmstat +17:05:06 0 45 0.0 0.0 0.0 0.0 2 fsnotify_mark +17:05:06 0 46 0.0 0.0 0.0 0.0 0 ecryptfs-kthrea +17:05:06 1000 5681 0.0 0.0 0.0 0.0 1 evolution-sourc +17:05:06 0 5129 0.0 0.0 0.0 0.0 2 upowerd +17:05:06 1000 5176 0.0 0.0 0.0 0.0 1 systemd +17:05:06 1000 5178 0.0 0.0 0.0 0.0 0 (sd-pam +17:05:06 0 23100 0.0 0.0 0.0 0.0 0 kworker/0:0 +17:05:06 0 62 0.0 0.0 0.0 0.0 2 kthrotld +17:05:06 1000 5183 0.0 0.0 0.0 0.0 3 gnome-keyring-d +17:05:06 1000 5185 0.0 0.0 0.0 0.0 1 upstart +17:05:06 0 66 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 67 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 68 0.0 0.0 0.0 0.0 2 bioset +17:05:06 1000 5701 1.0 0.0 0.0 1.0 1 nautilus +17:05:06 0 70 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 71 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 72 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 73 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 74 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 75 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 76 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 77 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 78 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 79 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 80 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 81 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 82 0.0 0.0 0.0 0.0 2 bioset +17:05:06 0 83 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 84 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 85 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 86 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 87 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 88 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 89 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 90 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 605 0.0 0.0 0.0 0.0 3 wl_event_handle +17:05:06 0 95 0.0 0.0 0.0 0.0 2 ipv6_addrconf +17:05:06 1000 5734 0.0 0.0 0.0 0.0 1 artha +17:05:06 0 619 0.0 0.0 0.0 0.0 0 kvm-irqfd-clean +17:05:06 0 108 0.0 0.0 0.0 0.0 1 deferwq +17:05:06 0 109 0.0 0.0 0.0 0.0 1 charger_manager +17:05:06 1000 18263 0.0 0.0 0.0 0.0 1 slack +17:05:06 1000 18549 0.0 0.0 0.0 0.0 0 chrome +17:05:06 1000 5750 0.0 0.0 0.0 0.0 0 redshift +17:05:06 0 25535 0.0 0.0 0.0 0.0 3 kworker/3:0 +17:05:06 1000 18556 0.0 0.0 0.0 0.0 2 chrome +17:05:06 123 5761 0.0 0.0 0.0 0.0 2 geoclue +17:05:06 1000 5637 0.0 0.0 0.0 0.0 2 indicator-sessi +17:05:06 1000 11395 0.0 0.0 0.0 0.0 0 gvfsd-metadata +17:05:06 1000 5767 0.0 0.0 0.0 0.0 0 gvfs-udisks2-vo +17:05:06 1000 18568 0.0 0.0 0.0 0.0 0 chrome +17:05:06 1000 18569 1.0 0.0 0.0 1.0 0 chrome +17:05:06 1000 24343 0.0 0.0 0.0 0.0 2 atom +17:05:06 0 5774 0.0 0.0 0.0 0.0 0 udisksd +17:05:06 0 1679 0.0 0.0 0.0 0.0 0 kmemstick +17:05:06 999 1171 0.0 0.0 0.0 0.0 2 pmcd +17:05:06 0 660 0.0 0.0 0.0 0.0 0 jbd2/sda9-8 +17:05:06 0 661 0.0 0.0 0.0 0.0 0 ext4-rsv-conver +17:05:06 1000 1174 0.0 1.0 0.0 1.0 3 pmdaproc +17:05:06 0 151 0.0 0.0 0.0 0.0 0 kpsmoused +17:05:06 1000 5272 0.0 0.0 0.0 0.0 3 upstart-udev-br +17:05:06 0 1177 0.0 0.0 0.0 0.0 0 pmdalinux +17:05:06 124 1178 0.0 0.0 0.0 0.0 2 postgres +17:05:06 0 155 0.0 0.0 0.0 0.0 3 scsi_tmf_1 +17:05:06 0 156 0.0 0.0 0.0 0.0 1 scsi_eh_2 +17:05:06 0 157 0.0 0.0 0.0 0.0 3 scsi_tmf_2 +17:05:06 0 158 0.0 0.0 0.0 0.0 1 scsi_eh_3 +17:05:06 0 159 0.0 0.0 0.0 0.0 0 scsi_tmf_3 +17:05:06 0 160 0.0 0.0 0.0 0.0 0 scsi_eh_4 +17:05:06 0 161 0.0 0.0 0.0 0.0 0 scsi_tmf_4 +17:05:06 0 162 0.0 0.0 0.0 0.0 1 scsi_eh_5 +17:05:06 0 1051 0.0 0.0 0.0 0.0 2 lightdm +17:05:06 1000 19424 0.0 0.0 0.0 0.0 1 gnome-terminal- +17:05:06 1000 5286 0.0 0.0 0.0 0.0 3 window-stack-br +17:05:06 1000 5800 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:06 0 169 0.0 0.0 0.0 0.0 2 kfd_process_wq +17:05:06 0 172 0.0 0.0 0.0 0.0 1 ttm_swap +17:05:06 0 174 0.0 0.0 0.0 0.0 1 bioset +17:05:06 1000 18291 0.0 0.0 0.0 0.0 2 slack +17:05:06 1000 5274 0.0 0.0 0.0 0.0 3 dbus-daemon +17:05:06 0 23736 0.0 0.0 0.0 0.0 3 kworker/3:1 +17:05:06 1000 6329 0.0 0.0 0.0 0.0 2 update-notifier +17:05:06 1000 5818 0.0 0.0 0.0 0.0 0 gvfs-mtp-volume +17:05:06 0 5829 0.0 0.0 0.0 0.0 1 fwupd +17:05:06 1000 6855 0.0 0.0 0.0 0.0 0 deja-dup-monito +17:05:06 0 22728 0.0 0.0 0.0 0.0 0 kworker/u16:3 +17:05:06 1000 11327 0.0 0.0 0.0 0.0 3 gvfsd-dnssd +17:05:06 999 4810 0.0 0.0 0.0 0.0 2 pmlogger +17:05:06 1000 18465 0.0 0.0 0.0 0.0 0 chrome +17:05:06 113 5154 0.0 0.0 0.0 0.0 0 colord +17:05:06 0 24782 0.0 0.0 0.0 0.0 3 kworker/3:2 +17:05:06 0 461 0.0 0.0 0.0 0.0 2 edac-poller +17:05:06 1000 18641 0.0 0.0 0.0 0.0 1 chrome +17:05:06 1000 5842 0.0 0.0 0.0 0.0 3 gvfsd-trash +17:05:06 1000 5633 0.0 0.0 0.0 0.0 3 indicator-sound +17:05:06 122 4821 0.0 0.0 0.0 0.0 0 unbound +17:05:06 1000 5335 0.0 0.0 0.0 0.0 2 ibus-daemon +17:05:06 1000 24868 0.0 0.0 0.0 0.0 0 python +17:05:06 1000 21722 0.0 0.0 0.0 0.0 1 chrome +17:05:06 0 24783 0.0 0.0 0.0 0.0 0 kworker/u16:2 +17:05:06 1000 18420 0.0 0.0 0.0 0.0 1 cat +17:05:06 0 18062 0.0 0.0 0.0 0.0 2 dhclient +17:05:06 1000 5343 0.0 0.0 0.0 0.0 3 upstart-dbus-br +17:05:06 1000 6023 0.0 0.0 0.0 0.0 2 gconfd-2 +17:05:06 1000 5345 0.0 0.0 0.0 0.0 0 upstart-dbus-br +17:05:06 0 22757 0.0 0.0 0.0 0.0 1 kworker/1:0 +17:05:06 0 21457 0.0 0.0 0.0 0.0 2 kworker/2:2 +17:05:06 1000 5866 0.0 0.0 0.0 0.0 2 evolution-calen +17:05:06 1000 5671 0.0 0.0 0.0 0.0 3 indicator-appli +17:05:06 1000 5876 0.0 0.0 0.0 0.0 3 evolution-addre +17:05:06 1000 5878 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:06 1000 5367 0.0 0.0 0.0 0.0 0 gpg-agent +17:05:06 0 1031 0.0 0.0 0.0 0.0 0 polkitd +17:05:06 0 249 0.0 0.0 0.0 0.0 0 raid5wq +17:05:06 1000 8954 0.0 0.0 0.0 0.0 2 unity-scope-hom +17:05:06 1000 18421 0.0 0.0 0.0 0.0 1 cat +17:05:06 65534 5273 0.0 0.0 0.0 0.0 3 dnsmasq +17:05:06 1000 5375 0.0 0.0 0.0 0.0 3 gvfsd +17:05:06 1000 25344 0.0 0.0 0.0 0.0 1 bash +17:05:06 1000 5380 0.0 0.0 0.0 0.0 3 gvfsd-fuse +17:05:06 1000 5895 0.0 0.0 0.0 0.0 2 evolution-addre +17:05:06 1000 8969 0.0 0.0 0.0 0.0 3 unity-files-dae +17:05:06 1000 8971 0.0 0.0 0.0 0.0 3 unity-music-dae +17:05:06 100 780 0.0 0.0 0.0 0.0 3 systemd-timesyn +17:05:06 1000 5389 0.0 0.0 0.0 0.0 3 ibus-dconf +17:05:06 1000 5395 0.0 0.0 0.0 0.0 3 upstart-file-br +17:05:06 1000 5396 0.0 0.0 0.0 0.0 3 ibus-ui-gtk3 +17:05:06 1000 18503 0.0 0.0 0.0 0.0 2 chrome +17:05:06 1000 5398 0.0 0.0 0.0 0.0 1 ibus-x11 +17:05:06 0 279 0.0 0.0 0.0 0.0 0 bioset +17:05:06 1000 7130 0.0 0.0 0.0 0.0 0 notify-osd +17:05:06 1000 5806 0.0 0.0 0.0 0.0 1 gvfs-gphoto2-vo +17:05:06 1000 5789 0.0 0.0 0.0 0.0 2 gvfs-goa-volume +17:05:06 1000 18224 0.0 0.0 0.0 0.0 1 slack +17:05:06 0 17945 0.0 0.0 0.0 0.0 3 irq/30-mei_me +17:05:06 1000 5414 0.0 0.0 0.0 0.0 0 at-spi-bus-laun +17:05:06 1000 19642 0.0 0.0 0.0 0.0 3 atom +17:05:06 1000 5419 0.0 0.0 0.0 0.0 2 dbus-daemon +17:05:06 1000 18220 0.0 0.0 0.0 0.0 1 slack +17:05:06 1000 5421 0.0 0.0 0.0 0.0 2 at-spi2-registr +17:05:06 104 814 0.0 0.0 0.0 0.0 2 rsyslogd +17:05:06 106 815 0.0 0.0 0.0 0.0 1 dbus-daemon +17:05:06 0 304 0.0 0.0 0.0 0.0 1 kworker/1:1H +17:05:06 0 306 0.0 0.0 0.0 0.0 3 jbd2/sda8-8 +17:05:06 0 307 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:06 1000 5946 0.0 0.0 0.0 0.0 1 zeitgeist-datah +17:05:06 0 22751 0.0 0.0 0.0 0.0 2 kworker/u16:0 +17:05:06 1000 5441 0.0 0.0 0.0 0.0 0 unity-settings- +17:05:06 1000 5442 0.0 0.0 0.0 0.0 2 bamfdaemon +17:05:06 0 22852 0.0 0.0 0.0 0.0 3 kworker/u16:1 +17:05:06 1000 5957 0.0 0.0 0.0 0.0 0 zeitgeist-daemo +17:05:06 1000 18253 0.0 0.0 0.0 0.0 0 slack +17:05:06 0 4937 0.0 0.0 0.0 0.0 2 apache2 +17:05:06 0 25419 0.0 0.0 0.0 0.0 2 kworker/2:1 +17:05:06 33 4940 0.0 0.0 0.0 0.0 0 apache2 +17:05:06 33 4941 0.0 0.0 0.0 0.0 3 apache2 +17:05:06 1000 5456 1.0 0.0 0.0 1.0 2 hud-service +17:05:06 1000 5459 0.0 0.0 0.0 0.0 2 gnome-session-b +17:05:06 1000 5461 0.0 0.0 0.0 0.0 2 unity-panel-ser +17:05:06 1000 5462 0.0 1.0 0.0 1.0 2 compiz +17:05:06 0 855 0.0 0.0 0.0 0.0 2 NetworkManager +17:05:06 124 1369 0.0 0.0 0.0 0.0 2 postgres +17:05:06 124 1370 0.0 0.0 0.0 0.0 0 postgres +17:05:06 124 1371 0.0 0.0 0.0 0.0 0 postgres +17:05:06 124 1372 0.0 0.0 0.0 0.0 2 postgres +17:05:06 124 1373 0.0 0.0 0.0 0.0 0 postgres +17:05:06 0 862 0.0 0.0 0.0 0.0 1 cron +17:05:06 0 351 0.0 0.0 0.0 0.0 0 kauditd +17:05:06 1000 18428 0.0 0.0 0.0 0.0 2 chrome +17:05:06 0 866 0.0 0.0 0.0 0.0 1 ModemManager +17:05:06 1000 19618 0.0 0.0 0.0 0.0 0 atom +17:05:06 0 361 0.0 0.0 0.0 0.0 3 systemd-journal +17:05:06 1000 18459 1.0 0.0 0.0 1.0 0 chrome +17:05:06 0 1683 0.0 0.0 0.0 0.0 3 rtsx_usb_ms_2 +17:05:06 0 372 0.0 0.0 0.0 0.0 1 lvmetad +17:05:06 0 886 0.0 0.0 0.0 0.0 1 acpid +17:05:06 0 888 0.0 0.0 0.0 0.0 2 systemd-logind +17:05:06 0 63 0.0 0.0 0.0 0.0 2 acpi_thermal_pm +17:05:06 0 892 0.0 0.0 0.0 0.0 0 atd +17:05:06 0 895 0.0 0.0 0.0 0.0 3 accounts-daemon +17:05:06 0 897 0.0 0.0 0.0 0.0 3 thermald +17:05:06 0 386 0.0 0.0 0.0 0.0 1 systemd-udevd +17:05:06 1000 18411 4.0 0.0 0.0 4.0 1 chrome +17:05:06 0 662 0.0 0.0 0.0 0.0 1 jbd2/sda10-8 +17:05:06 1000 5953 0.0 0.0 0.0 0.0 1 sh +17:05:06 109 904 0.0 0.0 0.0 0.0 2 whoopsie +17:05:06 0 1087 0.0 0.0 0.0 0.0 1 Xorg +17:05:06 0 663 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:06 1000 18498 0.0 0.0 0.0 0.0 0 chrome +17:05:06 111 912 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:06 0 401 0.0 0.0 0.0 0.0 0 kworker/0:1H +17:05:06 0 915 0.0 0.0 0.0 0.0 3 snapd +17:05:06 0 24981 0.0 0.0 0.0 0.0 0 kworker/0:2 +17:05:06 1000 18508 0.0 0.0 0.0 0.0 2 chrome +17:05:06 0 153 0.0 0.0 0.0 0.0 3 scsi_tmf_0 +17:05:06 0 154 0.0 0.0 0.0 0.0 1 scsi_eh_1 +17:05:06 1000 19653 0.0 0.0 0.0 0.0 0 atom +17:05:06 0 1173 0.0 0.0 0.0 0.0 1 pmdaroot +17:05:06 1000 18337 0.0 0.0 0.0 0.0 3 slack +17:05:06 999 1179 0.0 0.0 0.0 0.0 3 pmdasimple +17:05:06 1000 5702 0.0 0.0 0.0 0.0 3 unity-fallback- +17:05:06 1000 5964 0.0 0.0 0.0 0.0 2 zeitgeist-fts +17:05:06 1000 18495 0.0 0.0 0.0 0.0 0 chrome +17:05:06 0 24411 0.0 0.0 0.0 0.0 1 kworker/1:1 +17:05:06 1000 5703 0.0 0.0 0.0 0.0 3 polkit-gnome-au +17:05:06 0 5039 0.0 0.0 0.0 0.0 0 lightdm +17:05:06 1000 11289 0.0 0.0 0.0 0.0 0 gvfsd-network +17:05:06 1000 19614 0.0 0.0 0.0 0.0 0 atom +17:05:06 0 25460 0.0 0.0 0.0 0.0 1 kworker/1:2 +17:05:06 1000 5794 0.0 0.0 0.0 0.0 2 gvfs-afc-volume +17:05:06 1000 5620 0.0 0.0 0.0 0.0 3 indicator-messa +17:05:06 1000 23704 0.0 0.0 0.0 0.0 1 gedit +17:05:06 1000 5621 0.0 0.0 0.0 0.0 0 indicator-bluet +17:05:06 1000 18581 0.0 0.0 0.0 0.0 2 chrome +17:05:06 0 24005 0.0 0.0 0.0 0.0 0 kworker/0:1 +17:05:06 1000 5708 0.0 0.0 0.0 0.0 3 nm-applet +17:05:06 0 24523 0.0 0.0 0.0 0.0 1 bioset +17:05:06 0 1186 0.0 0.0 0.0 0.0 0 wpa_supplicant +17:05:06 1000 5709 0.0 0.0 0.0 0.0 3 gnome-software +17:05:06 118 5072 0.0 0.0 0.0 0.0 1 rtkit-daemon +17:05:06 0 465 0.0 0.0 0.0 0.0 2 kworker/2:1H +17:05:06 0 163 0.0 0.0 0.0 0.0 0 scsi_tmf_5 +17:05:06 0 468 0.0 0.0 0.0 0.0 3 kworker/3:1H +17:05:06 1000 22777 7.1 1.0 0.0 8.1 1 chrome +17:05:06 0 152 0.0 0.0 0.0 0.0 1 scsi_eh_0 +17:05:06 0 1175 0.0 0.0 0.0 0.0 1 pmdaxfs +17:05:06 1000 5597 0.0 0.0 0.0 0.0 1 ibus-engine-sim +17:05:06 0 24229 0.0 0.0 0.0 0.0 2 kworker/2:0 +17:05:06 1000 5600 0.0 0.0 0.0 0.0 0 syndaemon +17:05:06 1000 5604 1.9 0.0 0.0 1.9 1 pulseaudio +17:05:06 1000 19431 0.0 0.0 0.0 0.0 3 bash +17:05:06 1000 5608 0.0 0.0 0.0 0.0 2 dconf-service +17:05:06 1000 5628 0.0 0.0 0.0 0.0 1 indicator-datet +17:05:06 111 1002 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:06 0 1003 0.0 0.0 0.0 0.0 3 cups-browsed +17:05:06 1000 25541 0.0 0.0 0.0 0.0 3 pmlogger +17:05:06 1000 8967 0.0 0.0 0.0 0.0 0 unity-scope-loa +17:05:06 1000 19539 0.0 0.0 0.0 0.0 3 chrome +17:05:06 0 1012 0.0 0.0 0.0 0.0 0 irqbalance +17:05:06 0 1013 0.0 0.0 0.0 0.0 3 mdadm +17:05:06 1000 5623 0.0 0.0 0.0 0.0 2 indicator-power +17:05:06 1000 18424 0.0 0.0 0.0 0.0 1 chrome +17:05:06 1000 18425 0.0 0.0 0.0 0.0 0 nacl_helper +17:05:06 999 1176 0.0 0.0 0.0 0.0 2 pmdasample +17:05:06 0 508 0.0 0.0 0.0 0.0 1 cfg80211 +17:05:06 1000 18583 0.0 0.0 0.0 0.0 1 chrome + +=== pcp-pidstat with user names +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UName PID usr system guest %CPU CPU Command +17:05:04 ram 5632 ? ? ? ? 1 indicator-keybo +17:05:04 root 1 ? ? ? ? 2 systemd +17:05:04 root 2 ? ? ? ? 2 kthreadd +17:05:04 root 3 ? ? ? ? 0 ksoftirqd/0 +17:05:04 root 5 ? ? ? ? 0 kworker/0:0H +17:05:04 root 7 ? ? ? ? 2 rcu_sched +17:05:04 root 8 ? ? ? ? 0 rcu_bh +17:05:04 root 9 ? ? ? ? 0 migration/0 +17:05:04 root 10 ? ? ? ? 0 watchdog/0 +17:05:04 root 11 ? ? ? ? 1 watchdog/1 +17:05:04 root 12 ? ? ? ? 1 migration/1 +17:05:04 root 13 ? ? ? ? 1 ksoftirqd/1 +17:05:04 root 15 ? ? ? ? 1 kworker/1:0H +17:05:04 root 16 ? ? ? ? 2 watchdog/2 +17:05:04 root 17 ? ? ? ? 2 migration/2 +17:05:04 root 18 ? ? ? ? 2 ksoftirqd/2 +17:05:04 ram 5635 ? ? ? ? 1 indicator-print +17:05:04 root 20 ? ? ? ? 2 kworker/2:0H +17:05:04 root 21 ? ? ? ? 3 watchdog/3 +17:05:04 root 22 ? ? ? ? 3 migration/3 +17:05:04 root 23 ? ? ? ? 3 ksoftirqd/3 +17:05:04 root 25 ? ? ? ? 3 kworker/3:0H +17:05:04 root 26 ? ? ? ? 0 kdevtmpfs +17:05:04 root 27 ? ? ? ? 1 netns +17:05:04 root 28 ? ? ? ? 1 perf +17:05:04 root 29 ? ? ? ? 0 khungtaskd +17:05:04 root 30 ? ? ? ? 1 writeback +17:05:04 root 31 ? ? ? ? 2 ksmd +17:05:04 root 32 ? ? ? ? 1 khugepaged +17:05:04 root 33 ? ? ? ? 2 crypto +17:05:04 root 34 ? ? ? ? 2 kintegrityd +17:05:04 root 35 ? ? ? ? 2 bioset +17:05:04 root 36 ? ? ? ? 2 kblockd +17:05:04 root 37 ? ? ? ? 2 ata_sff +17:05:04 root 38 ? ? ? ? 2 md +17:05:04 root 39 ? ? ? ? 3 devfreq_wq +17:05:04 root 3624 ? ? ? ? 1 agetty +17:05:04 root 43 ? ? ? ? 1 kswapd0 +17:05:04 root 44 ? ? ? ? 2 vmstat +17:05:04 root 45 ? ? ? ? 2 fsnotify_mark +17:05:04 root 46 ? ? ? ? 0 ecryptfs-kthrea +17:05:04 ram 5681 ? ? ? ? 1 evolution-sourc +17:05:04 root 5129 ? ? ? ? 2 upowerd +17:05:04 ram 5176 ? ? ? ? 1 systemd +17:05:04 ram 5178 ? ? ? ? 0 (sd-pam +17:05:04 root 23100 ? ? ? ? 0 kworker/0:0 +17:05:04 root 62 ? ? ? ? 2 kthrotld +17:05:04 ram 5183 ? ? ? ? 3 gnome-keyring-d +17:05:04 ram 5185 ? ? ? ? 1 upstart +17:05:04 root 66 ? ? ? ? 2 bioset +17:05:04 root 67 ? ? ? ? 2 bioset +17:05:04 root 68 ? ? ? ? 2 bioset +17:05:04 ram 5701 ? ? ? ? 0 nautilus +17:05:04 root 70 ? ? ? ? 2 bioset +17:05:04 root 71 ? ? ? ? 2 bioset +17:05:04 root 72 ? ? ? ? 2 bioset +17:05:04 root 73 ? ? ? ? 2 bioset +17:05:04 root 74 ? ? ? ? 2 bioset +17:05:04 root 75 ? ? ? ? 2 bioset +17:05:04 root 76 ? ? ? ? 2 bioset +17:05:04 root 77 ? ? ? ? 2 bioset +17:05:04 root 78 ? ? ? ? 2 bioset +17:05:04 root 79 ? ? ? ? 2 bioset +17:05:04 root 80 ? ? ? ? 2 bioset +17:05:04 root 81 ? ? ? ? 2 bioset +17:05:04 root 82 ? ? ? ? 2 bioset +17:05:04 root 83 ? ? ? ? 1 bioset +17:05:04 root 84 ? ? ? ? 1 bioset +17:05:04 root 85 ? ? ? ? 1 bioset +17:05:04 root 86 ? ? ? ? 1 bioset +17:05:04 root 87 ? ? ? ? 1 bioset +17:05:04 root 88 ? ? ? ? 1 bioset +17:05:04 root 89 ? ? ? ? 1 bioset +17:05:04 root 90 ? ? ? ? 1 bioset +17:05:04 root 605 ? ? ? ? 3 wl_event_handle +17:05:04 root 95 ? ? ? ? 2 ipv6_addrconf +17:05:04 ram 5734 ? ? ? ? 1 artha +17:05:04 root 619 ? ? ? ? 0 kvm-irqfd-clean +17:05:04 root 108 ? ? ? ? 1 deferwq +17:05:04 root 109 ? ? ? ? 1 charger_manager +17:05:04 ram 18263 ? ? ? ? 1 slack +17:05:04 ram 18549 ? ? ? ? 0 chrome +17:05:04 ram 5750 ? ? ? ? 0 redshift +17:05:04 root 25535 ? ? ? ? 3 kworker/3:0 +17:05:04 ram 18556 ? ? ? ? 2 chrome +17:05:04 geoclue 5761 ? ? ? ? 2 geoclue +17:05:04 ram 5637 ? ? ? ? 2 indicator-sessi +17:05:04 ram 11395 ? ? ? ? 0 gvfsd-metadata +17:05:04 ram 5767 ? ? ? ? 0 gvfs-udisks2-vo +17:05:04 ram 18568 ? ? ? ? 0 chrome +17:05:04 ram 18569 ? ? ? ? 0 chrome +17:05:04 ram 24343 ? ? ? ? 2 atom +17:05:04 root 5774 ? ? ? ? 0 udisksd +17:05:04 root 1679 ? ? ? ? 0 kmemstick +17:05:04 pcp 1171 ? ? ? ? 3 pmcd +17:05:04 root 660 ? ? ? ? 0 jbd2/sda9-8 +17:05:04 root 661 ? ? ? ? 0 ext4-rsv-conver +17:05:04 ram 1174 ? ? ? ? 3 pmdaproc +17:05:04 root 151 ? ? ? ? 0 kpsmoused +17:05:04 ram 5272 ? ? ? ? 3 upstart-udev-br +17:05:04 root 1177 ? ? ? ? 0 pmdalinux +17:05:04 postgres 1178 ? ? ? ? 2 postgres +17:05:04 root 155 ? ? ? ? 3 scsi_tmf_1 +17:05:04 root 156 ? ? ? ? 1 scsi_eh_2 +17:05:04 root 157 ? ? ? ? 3 scsi_tmf_2 +17:05:04 root 158 ? ? ? ? 1 scsi_eh_3 +17:05:04 root 159 ? ? ? ? 0 scsi_tmf_3 +17:05:04 root 160 ? ? ? ? 0 scsi_eh_4 +17:05:04 root 161 ? ? ? ? 0 scsi_tmf_4 +17:05:04 root 162 ? ? ? ? 1 scsi_eh_5 +17:05:04 root 1051 ? ? ? ? 2 lightdm +17:05:04 ram 19424 ? ? ? ? 1 gnome-terminal- +17:05:04 ram 5286 ? ? ? ? 3 window-stack-br +17:05:04 ram 5800 ? ? ? ? 3 evolution-calen +17:05:04 root 169 ? ? ? ? 2 kfd_process_wq +17:05:04 root 172 ? ? ? ? 1 ttm_swap +17:05:04 root 174 ? ? ? ? 1 bioset +17:05:04 ram 18291 ? ? ? ? 2 slack +17:05:04 ram 5274 ? ? ? ? 3 dbus-daemon +17:05:04 root 23736 ? ? ? ? 3 kworker/3:1 +17:05:04 ram 6329 ? ? ? ? 2 update-notifier +17:05:04 ram 5818 ? ? ? ? 0 gvfs-mtp-volume +17:05:04 root 5829 ? ? ? ? 1 fwupd +17:05:04 ram 6855 ? ? ? ? 0 deja-dup-monito +17:05:04 root 22728 ? ? ? ? 0 kworker/u16:3 +17:05:04 ram 11327 ? ? ? ? 3 gvfsd-dnssd +17:05:04 pcp 4810 ? ? ? ? 2 pmlogger +17:05:04 ram 18465 ? ? ? ? 0 chrome +17:05:04 colord 5154 ? ? ? ? 0 colord +17:05:04 root 24782 ? ? ? ? 3 kworker/3:2 +17:05:04 root 461 ? ? ? ? 2 edac-poller +17:05:04 ram 18641 ? ? ? ? 3 chrome +17:05:04 ram 5842 ? ? ? ? 3 gvfsd-trash +17:05:04 ram 5633 ? ? ? ? 3 indicator-sound +17:05:04 unbound 4821 ? ? ? ? 0 unbound +17:05:04 ram 5335 ? ? ? ? 2 ibus-daemon +17:05:04 ram 24868 ? ? ? ? 0 python +17:05:04 ram 21722 ? ? ? ? 1 chrome +17:05:04 root 24783 ? ? ? ? 0 kworker/u16:2 +17:05:04 ram 18420 ? ? ? ? 1 cat +17:05:04 root 18062 ? ? ? ? 2 dhclient +17:05:04 ram 5343 ? ? ? ? 3 upstart-dbus-br +17:05:04 ram 6023 ? ? ? ? 2 gconfd-2 +17:05:04 ram 5345 ? ? ? ? 0 upstart-dbus-br +17:05:04 root 22757 ? ? ? ? 1 kworker/1:0 +17:05:04 root 21457 ? ? ? ? 2 kworker/2:2 +17:05:04 ram 5866 ? ? ? ? 2 evolution-calen +17:05:04 ram 5671 ? ? ? ? 3 indicator-appli +17:05:04 ram 5876 ? ? ? ? 3 evolution-addre +17:05:04 ram 5878 ? ? ? ? 3 evolution-calen +17:05:04 ram 5367 ? ? ? ? 0 gpg-agent +17:05:04 root 1031 ? ? ? ? 0 polkitd +17:05:04 root 249 ? ? ? ? 0 raid5wq +17:05:04 ram 8954 ? ? ? ? 2 unity-scope-hom +17:05:04 ram 18421 ? ? ? ? 1 cat +17:05:04 nobody 5273 ? ? ? ? 3 dnsmasq +17:05:04 ram 5375 ? ? ? ? 3 gvfsd +17:05:04 ram 25344 ? ? ? ? 1 bash +17:05:04 ram 5380 ? ? ? ? 3 gvfsd-fuse +17:05:04 ram 5895 ? ? ? ? 2 evolution-addre +17:05:04 ram 8969 ? ? ? ? 3 unity-files-dae +17:05:04 ram 8971 ? ? ? ? 3 unity-music-dae +17:05:04 systemd-timesync 780 ? ? ? ? 3 systemd-timesyn +17:05:04 ram 5389 ? ? ? ? 3 ibus-dconf +17:05:04 ram 5395 ? ? ? ? 3 upstart-file-br +17:05:04 ram 5396 ? ? ? ? 3 ibus-ui-gtk3 +17:05:04 ram 18503 ? ? ? ? 1 chrome +17:05:04 ram 5398 ? ? ? ? 1 ibus-x11 +17:05:04 root 279 ? ? ? ? 0 bioset +17:05:04 ram 7130 ? ? ? ? 0 notify-osd +17:05:04 ram 5806 ? ? ? ? 1 gvfs-gphoto2-vo +17:05:04 ram 5789 ? ? ? ? 2 gvfs-goa-volume +17:05:04 ram 18224 ? ? ? ? 1 slack +17:05:04 root 17945 ? ? ? ? 3 irq/30-mei_me +17:05:04 ram 5414 ? ? ? ? 0 at-spi-bus-laun +17:05:04 ram 19642 ? ? ? ? 3 atom +17:05:04 ram 5419 ? ? ? ? 2 dbus-daemon +17:05:04 ram 18220 ? ? ? ? 1 slack +17:05:04 ram 5421 ? ? ? ? 2 at-spi2-registr +17:05:04 syslog 814 ? ? ? ? 2 rsyslogd +17:05:04 messagebus 815 ? ? ? ? 1 dbus-daemon +17:05:04 root 304 ? ? ? ? 1 kworker/1:1H +17:05:04 root 306 ? ? ? ? 3 jbd2/sda8-8 +17:05:04 root 307 ? ? ? ? 1 ext4-rsv-conver +17:05:04 ram 5946 ? ? ? ? 1 zeitgeist-datah +17:05:04 root 22751 ? ? ? ? 2 kworker/u16:0 +17:05:04 ram 5441 ? ? ? ? 0 unity-settings- +17:05:04 ram 5442 ? ? ? ? 2 bamfdaemon +17:05:04 root 22852 ? ? ? ? 0 kworker/u16:1 +17:05:04 ram 5957 ? ? ? ? 0 zeitgeist-daemo +17:05:04 ram 18253 ? ? ? ? 0 slack +17:05:04 root 4937 ? ? ? ? 2 apache2 +17:05:04 root 25419 ? ? ? ? 2 kworker/2:1 +17:05:04 www-data 4940 ? ? ? ? 0 apache2 +17:05:04 www-data 4941 ? ? ? ? 3 apache2 +17:05:04 ram 5456 ? ? ? ? 2 hud-service +17:05:04 ram 5459 ? ? ? ? 2 gnome-session-b +17:05:04 ram 5461 ? ? ? ? 2 unity-panel-ser +17:05:04 ram 5462 ? ? ? ? 0 compiz +17:05:04 root 855 ? ? ? ? 2 NetworkManager +17:05:04 postgres 1369 ? ? ? ? 2 postgres +17:05:04 postgres 1370 ? ? ? ? 0 postgres +17:05:04 postgres 1371 ? ? ? ? 0 postgres +17:05:04 postgres 1372 ? ? ? ? 2 postgres +17:05:04 postgres 1373 ? ? ? ? 0 postgres +17:05:04 root 862 ? ? ? ? 1 cron +17:05:04 root 351 ? ? ? ? 0 kauditd +17:05:04 ram 18428 ? ? ? ? 2 chrome +17:05:04 root 866 ? ? ? ? 1 ModemManager +17:05:04 ram 19618 ? ? ? ? 0 atom +17:05:04 root 361 ? ? ? ? 3 systemd-journal +17:05:04 ram 18459 ? ? ? ? 0 chrome +17:05:04 root 1683 ? ? ? ? 3 rtsx_usb_ms_2 +17:05:04 root 372 ? ? ? ? 1 lvmetad +17:05:04 root 886 ? ? ? ? 1 acpid +17:05:04 root 888 ? ? ? ? 2 systemd-logind +17:05:04 root 63 ? ? ? ? 2 acpi_thermal_pm +17:05:04 root 892 ? ? ? ? 0 atd +17:05:04 root 895 ? ? ? ? 3 accounts-daemon +17:05:04 root 897 ? ? ? ? 3 thermald +17:05:04 root 386 ? ? ? ? 1 systemd-udevd +17:05:04 ram 18411 ? ? ? ? 2 chrome +17:05:04 root 662 ? ? ? ? 3 jbd2/sda10-8 +17:05:04 ram 5953 ? ? ? ? 1 sh +17:05:04 whoopsie 904 ? ? ? ? 2 whoopsie +17:05:04 root 1087 ? ? ? ? 1 Xorg +17:05:04 root 663 ? ? ? ? 1 ext4-rsv-conver +17:05:04 ram 18498 ? ? ? ? 1 chrome +17:05:04 avahi 912 ? ? ? ? 3 avahi-daemon +17:05:04 root 401 ? ? ? ? 0 kworker/0:1H +17:05:04 root 915 ? ? ? ? 3 snapd +17:05:04 root 24981 ? ? ? ? 0 kworker/0:2 +17:05:04 ram 18508 ? ? ? ? 2 chrome +17:05:04 root 153 ? ? ? ? 3 scsi_tmf_0 +17:05:04 root 154 ? ? ? ? 1 scsi_eh_1 +17:05:04 ram 19653 ? ? ? ? 0 atom +17:05:04 root 1173 ? ? ? ? 1 pmdaroot +17:05:04 ram 18337 ? ? ? ? 0 slack +17:05:04 pcp 1179 ? ? ? ? 3 pmdasimple +17:05:04 ram 5702 ? ? ? ? 3 unity-fallback- +17:05:04 ram 5964 ? ? ? ? 2 zeitgeist-fts +17:05:04 ram 18495 ? ? ? ? 0 chrome +17:05:04 root 24411 ? ? ? ? 1 kworker/1:1 +17:05:04 ram 5703 ? ? ? ? 3 polkit-gnome-au +17:05:04 root 5039 ? ? ? ? 0 lightdm +17:05:04 ram 11289 ? ? ? ? 0 gvfsd-network +17:05:04 ram 19614 ? ? ? ? 0 atom +17:05:04 root 25460 ? ? ? ? 1 kworker/1:2 +17:05:04 ram 5794 ? ? ? ? 2 gvfs-afc-volume +17:05:04 ram 5620 ? ? ? ? 3 indicator-messa +17:05:04 ram 23704 ? ? ? ? 1 gedit +17:05:04 ram 5621 ? ? ? ? 0 indicator-bluet +17:05:04 ram 18581 ? ? ? ? 2 chrome +17:05:04 root 24005 ? ? ? ? 0 kworker/0:1 +17:05:04 ram 5708 ? ? ? ? 3 nm-applet +17:05:04 root 24523 ? ? ? ? 1 bioset +17:05:04 root 1186 ? ? ? ? 0 wpa_supplicant +17:05:04 ram 5709 ? ? ? ? 3 gnome-software +17:05:04 rtkit 5072 ? ? ? ? 1 rtkit-daemon +17:05:04 root 465 ? ? ? ? 2 kworker/2:1H +17:05:04 root 163 ? ? ? ? 0 scsi_tmf_5 +17:05:04 root 468 ? ? ? ? 3 kworker/3:1H +17:05:04 ram 22777 ? ? ? ? 0 chrome +17:05:04 root 152 ? ? ? ? 1 scsi_eh_0 +17:05:04 root 1175 ? ? ? ? 1 pmdaxfs +17:05:04 ram 5597 ? ? ? ? 1 ibus-engine-sim +17:05:04 root 24229 ? ? ? ? 2 kworker/2:0 +17:05:04 ram 5600 ? ? ? ? 0 syndaemon +17:05:04 ram 5604 ? ? ? ? 0 pulseaudio +17:05:04 ram 19431 ? ? ? ? 3 bash +17:05:04 ram 5608 ? ? ? ? 2 dconf-service +17:05:04 ram 5628 ? ? ? ? 1 indicator-datet +17:05:04 avahi 1002 ? ? ? ? 3 avahi-daemon +17:05:04 root 1003 ? ? ? ? 3 cups-browsed +17:05:04 ram 25541 ? ? ? ? 0 pmlogger +17:05:04 ram 8967 ? ? ? ? 0 unity-scope-loa +17:05:04 ram 19539 ? ? ? ? 3 chrome +17:05:04 root 1012 ? ? ? ? 0 irqbalance +17:05:04 root 1013 ? ? ? ? 3 mdadm +17:05:04 ram 5623 ? ? ? ? 2 indicator-power +17:05:04 ram 18424 ? ? ? ? 1 chrome +17:05:04 ram 18425 ? ? ? ? 0 nacl_helper +17:05:04 pcp 1176 ? ? ? ? 2 pmdasample +17:05:04 root 508 ? ? ? ? 1 cfg80211 +17:05:04 ram 18583 ? ? ? ? 1 chrome +Timestamp UName PID usr system guest %CPU CPU Command +17:05:05 ram 5632 0.0 0.0 0.0 0.0 1 indicator-keybo +17:05:05 root 1 0.0 0.0 0.0 0.0 2 systemd +17:05:05 root 2 0.0 0.0 0.0 0.0 2 kthreadd +17:05:05 root 3 0.0 0.0 0.0 0.0 0 ksoftirqd/0 +17:05:05 root 5 0.0 0.0 0.0 0.0 0 kworker/0:0H +17:05:05 root 7 0.0 0.0 0.0 0.0 1 rcu_sched +17:05:05 root 8 0.0 0.0 0.0 0.0 0 rcu_bh +17:05:05 root 9 0.0 0.0 0.0 0.0 0 migration/0 +17:05:05 root 10 0.0 0.0 0.0 0.0 0 watchdog/0 +17:05:05 root 11 0.0 0.0 0.0 0.0 1 watchdog/1 +17:05:05 root 12 0.0 0.0 0.0 0.0 1 migration/1 +17:05:05 root 13 0.0 0.0 0.0 0.0 1 ksoftirqd/1 +17:05:05 root 15 0.0 0.0 0.0 0.0 1 kworker/1:0H +17:05:05 root 16 0.0 0.0 0.0 0.0 2 watchdog/2 +17:05:05 root 17 0.0 0.0 0.0 0.0 2 migration/2 +17:05:05 root 18 0.0 0.0 0.0 0.0 2 ksoftirqd/2 +17:05:05 ram 5635 0.0 0.0 0.0 0.0 1 indicator-print +17:05:05 root 20 0.0 0.0 0.0 0.0 2 kworker/2:0H +17:05:05 root 21 0.0 0.0 0.0 0.0 3 watchdog/3 +17:05:05 root 22 0.0 0.0 0.0 0.0 3 migration/3 +17:05:05 root 23 0.0 0.0 0.0 0.0 3 ksoftirqd/3 +17:05:05 root 25 0.0 0.0 0.0 0.0 3 kworker/3:0H +17:05:05 root 26 0.0 0.0 0.0 0.0 0 kdevtmpfs +17:05:05 root 27 0.0 0.0 0.0 0.0 1 netns +17:05:05 root 28 0.0 0.0 0.0 0.0 1 perf +17:05:05 root 29 0.0 0.0 0.0 0.0 0 khungtaskd +17:05:05 root 30 0.0 0.0 0.0 0.0 1 writeback +17:05:05 root 31 0.0 0.0 0.0 0.0 2 ksmd +17:05:05 root 32 0.0 0.0 0.0 0.0 2 khugepaged +17:05:05 root 33 0.0 0.0 0.0 0.0 2 crypto +17:05:05 root 34 0.0 0.0 0.0 0.0 2 kintegrityd +17:05:05 root 35 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 36 0.0 0.0 0.0 0.0 2 kblockd +17:05:05 root 37 0.0 0.0 0.0 0.0 2 ata_sff +17:05:05 root 38 0.0 0.0 0.0 0.0 2 md +17:05:05 root 39 0.0 0.0 0.0 0.0 3 devfreq_wq +17:05:05 root 3624 0.0 0.0 0.0 0.0 1 agetty +17:05:05 root 43 0.0 0.0 0.0 0.0 1 kswapd0 +17:05:05 root 44 0.0 0.0 0.0 0.0 2 vmstat +17:05:05 root 45 0.0 0.0 0.0 0.0 2 fsnotify_mark +17:05:05 root 46 0.0 0.0 0.0 0.0 0 ecryptfs-kthrea +17:05:05 ram 5681 0.0 0.0 0.0 0.0 1 evolution-sourc +17:05:05 root 5129 0.0 0.0 0.0 0.0 2 upowerd +17:05:05 ram 5176 0.0 0.0 0.0 0.0 1 systemd +17:05:05 ram 5178 0.0 0.0 0.0 0.0 0 (sd-pam +17:05:05 root 23100 0.0 0.0 0.0 0.0 0 kworker/0:0 +17:05:05 root 62 0.0 0.0 0.0 0.0 2 kthrotld +17:05:05 ram 5183 0.0 0.0 0.0 0.0 3 gnome-keyring-d +17:05:05 ram 5185 0.0 0.0 0.0 0.0 1 upstart +17:05:05 root 66 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 67 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 68 0.0 0.0 0.0 0.0 2 bioset +17:05:05 ram 5701 0.0 0.0 0.0 0.0 1 nautilus +17:05:05 root 70 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 71 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 72 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 73 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 74 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 75 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 76 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 77 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 78 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 79 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 80 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 81 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 82 0.0 0.0 0.0 0.0 2 bioset +17:05:05 root 83 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 84 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 85 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 86 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 87 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 88 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 89 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 90 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 605 0.0 0.0 0.0 0.0 3 wl_event_handle +17:05:05 root 95 0.0 0.0 0.0 0.0 2 ipv6_addrconf +17:05:05 ram 5734 0.0 0.0 0.0 0.0 1 artha +17:05:05 root 619 0.0 0.0 0.0 0.0 0 kvm-irqfd-clean +17:05:05 root 108 0.0 0.0 0.0 0.0 1 deferwq +17:05:05 root 109 0.0 0.0 0.0 0.0 1 charger_manager +17:05:05 ram 18263 0.0 0.0 0.0 0.0 1 slack +17:05:05 ram 18549 0.0 0.0 0.0 0.0 0 chrome +17:05:05 ram 5750 0.0 0.0 0.0 0.0 0 redshift +17:05:05 root 25535 0.0 0.0 0.0 0.0 3 kworker/3:0 +17:05:05 ram 18556 0.0 0.0 0.0 0.0 2 chrome +17:05:05 geoclue 5761 0.0 0.0 0.0 0.0 2 geoclue +17:05:05 ram 5637 0.0 0.0 0.0 0.0 2 indicator-sessi +17:05:05 ram 11395 0.0 0.0 0.0 0.0 0 gvfsd-metadata +17:05:05 ram 5767 0.0 0.0 0.0 0.0 0 gvfs-udisks2-vo +17:05:05 ram 18568 0.0 0.0 0.0 0.0 0 chrome +17:05:05 ram 18569 0.0 0.0 0.0 0.0 0 chrome +17:05:05 ram 24343 0.0 0.0 0.0 0.0 2 atom +17:05:05 root 5774 0.0 0.0 0.0 0.0 0 udisksd +17:05:05 root 1679 0.0 0.0 0.0 0.0 0 kmemstick +17:05:05 pcp 1171 0.0 0.0 0.0 0.0 2 pmcd +17:05:05 root 660 0.0 0.0 0.0 0.0 0 jbd2/sda9-8 +17:05:05 root 661 0.0 0.0 0.0 0.0 0 ext4-rsv-conver +17:05:05 ram 1174 1.0 1.0 0.0 2.0 3 pmdaproc +17:05:05 root 151 0.0 0.0 0.0 0.0 0 kpsmoused +17:05:05 ram 5272 0.0 0.0 0.0 0.0 3 upstart-udev-br +17:05:05 root 1177 0.0 0.0 0.0 0.0 0 pmdalinux +17:05:05 postgres 1178 0.0 0.0 0.0 0.0 2 postgres +17:05:05 root 155 0.0 0.0 0.0 0.0 3 scsi_tmf_1 +17:05:05 root 156 0.0 0.0 0.0 0.0 1 scsi_eh_2 +17:05:05 root 157 0.0 0.0 0.0 0.0 3 scsi_tmf_2 +17:05:05 root 158 0.0 0.0 0.0 0.0 1 scsi_eh_3 +17:05:05 root 159 0.0 0.0 0.0 0.0 0 scsi_tmf_3 +17:05:05 root 160 0.0 0.0 0.0 0.0 0 scsi_eh_4 +17:05:05 root 161 0.0 0.0 0.0 0.0 0 scsi_tmf_4 +17:05:05 root 162 0.0 0.0 0.0 0.0 1 scsi_eh_5 +17:05:05 root 1051 0.0 0.0 0.0 0.0 2 lightdm +17:05:05 ram 19424 0.0 0.0 0.0 0.0 1 gnome-terminal- +17:05:05 ram 5286 0.0 0.0 0.0 0.0 3 window-stack-br +17:05:05 ram 5800 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:05 root 169 0.0 0.0 0.0 0.0 2 kfd_process_wq +17:05:05 root 172 0.0 0.0 0.0 0.0 1 ttm_swap +17:05:05 root 174 0.0 0.0 0.0 0.0 1 bioset +17:05:05 ram 18291 0.0 0.0 0.0 0.0 2 slack +17:05:05 ram 5274 0.0 0.0 0.0 0.0 3 dbus-daemon +17:05:05 root 23736 0.0 0.0 0.0 0.0 3 kworker/3:1 +17:05:05 ram 6329 0.0 0.0 0.0 0.0 2 update-notifier +17:05:05 ram 5818 0.0 0.0 0.0 0.0 0 gvfs-mtp-volume +17:05:05 root 5829 0.0 0.0 0.0 0.0 1 fwupd +17:05:05 ram 6855 0.0 0.0 0.0 0.0 0 deja-dup-monito +17:05:05 root 22728 0.0 0.0 0.0 0.0 0 kworker/u16:3 +17:05:05 ram 11327 0.0 0.0 0.0 0.0 3 gvfsd-dnssd +17:05:05 pcp 4810 0.0 0.0 0.0 0.0 2 pmlogger +17:05:05 ram 18465 0.0 0.0 0.0 0.0 0 chrome +17:05:05 colord 5154 0.0 0.0 0.0 0.0 0 colord +17:05:05 root 24782 0.0 0.0 0.0 0.0 3 kworker/3:2 +17:05:05 root 461 0.0 0.0 0.0 0.0 2 edac-poller +17:05:05 ram 18641 0.0 0.0 0.0 0.0 1 chrome +17:05:05 ram 5842 0.0 0.0 0.0 0.0 3 gvfsd-trash +17:05:05 ram 5633 0.0 0.0 0.0 0.0 3 indicator-sound +17:05:05 unbound 4821 0.0 0.0 0.0 0.0 0 unbound +17:05:05 ram 5335 0.0 0.0 0.0 0.0 2 ibus-daemon +17:05:05 ram 24868 0.0 0.0 0.0 0.0 0 python +17:05:05 ram 21722 0.0 0.0 0.0 0.0 1 chrome +17:05:05 root 24783 0.0 0.0 0.0 0.0 0 kworker/u16:2 +17:05:05 ram 18420 0.0 0.0 0.0 0.0 1 cat +17:05:05 root 18062 0.0 0.0 0.0 0.0 2 dhclient +17:05:05 ram 5343 0.0 0.0 0.0 0.0 3 upstart-dbus-br +17:05:05 ram 6023 0.0 0.0 0.0 0.0 2 gconfd-2 +17:05:05 ram 5345 0.0 0.0 0.0 0.0 0 upstart-dbus-br +17:05:05 root 22757 0.0 0.0 0.0 0.0 1 kworker/1:0 +17:05:05 root 21457 0.0 0.0 0.0 0.0 2 kworker/2:2 +17:05:05 ram 5866 0.0 0.0 0.0 0.0 2 evolution-calen +17:05:05 ram 5671 0.0 0.0 0.0 0.0 3 indicator-appli +17:05:05 ram 5876 0.0 0.0 0.0 0.0 3 evolution-addre +17:05:05 ram 5878 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:05 ram 5367 0.0 0.0 0.0 0.0 0 gpg-agent +17:05:05 root 1031 0.0 0.0 0.0 0.0 0 polkitd +17:05:05 root 249 0.0 0.0 0.0 0.0 0 raid5wq +17:05:05 ram 8954 0.0 0.0 0.0 0.0 2 unity-scope-hom +17:05:05 ram 18421 0.0 0.0 0.0 0.0 1 cat +17:05:05 nobody 5273 0.0 0.0 0.0 0.0 3 dnsmasq +17:05:05 ram 5375 0.0 0.0 0.0 0.0 3 gvfsd +17:05:05 ram 25344 0.0 0.0 0.0 0.0 1 bash +17:05:05 ram 5380 0.0 0.0 0.0 0.0 3 gvfsd-fuse +17:05:05 ram 5895 0.0 0.0 0.0 0.0 2 evolution-addre +17:05:05 ram 8969 0.0 0.0 0.0 0.0 3 unity-files-dae +17:05:05 ram 8971 0.0 0.0 0.0 0.0 3 unity-music-dae +17:05:05 systemd-timesync 780 0.0 0.0 0.0 0.0 3 systemd-timesyn +17:05:05 ram 5389 0.0 0.0 0.0 0.0 3 ibus-dconf +17:05:05 ram 5395 0.0 0.0 0.0 0.0 3 upstart-file-br +17:05:05 ram 5396 0.0 0.0 0.0 0.0 3 ibus-ui-gtk3 +17:05:05 ram 18503 0.0 0.0 0.0 0.0 1 chrome +17:05:05 ram 5398 0.0 0.0 0.0 0.0 1 ibus-x11 +17:05:05 root 279 0.0 0.0 0.0 0.0 0 bioset +17:05:05 ram 7130 0.0 0.0 0.0 0.0 0 notify-osd +17:05:05 ram 5806 0.0 0.0 0.0 0.0 1 gvfs-gphoto2-vo +17:05:05 ram 5789 0.0 0.0 0.0 0.0 2 gvfs-goa-volume +17:05:05 ram 18224 0.0 0.0 0.0 0.0 1 slack +17:05:05 root 17945 0.0 0.0 0.0 0.0 3 irq/30-mei_me +17:05:05 ram 5414 0.0 0.0 0.0 0.0 0 at-spi-bus-laun +17:05:05 ram 19642 0.0 0.0 0.0 0.0 3 atom +17:05:05 ram 5419 0.0 0.0 0.0 0.0 2 dbus-daemon +17:05:05 ram 18220 0.0 0.0 0.0 0.0 1 slack +17:05:05 ram 5421 0.0 0.0 0.0 0.0 2 at-spi2-registr +17:05:05 syslog 814 0.0 0.0 0.0 0.0 2 rsyslogd +17:05:05 messagebus 815 0.0 0.0 0.0 0.0 1 dbus-daemon +17:05:05 root 304 0.0 0.0 0.0 0.0 1 kworker/1:1H +17:05:05 root 306 0.0 0.0 0.0 0.0 3 jbd2/sda8-8 +17:05:05 root 307 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:05 ram 5946 0.0 0.0 0.0 0.0 1 zeitgeist-datah +17:05:05 root 22751 0.0 0.0 0.0 0.0 2 kworker/u16:0 +17:05:05 ram 5441 0.0 0.0 0.0 0.0 0 unity-settings- +17:05:05 ram 5442 0.0 0.0 0.0 0.0 2 bamfdaemon +17:05:05 root 22852 0.0 0.0 0.0 0.0 0 kworker/u16:1 +17:05:05 ram 5957 0.0 0.0 0.0 0.0 0 zeitgeist-daemo +17:05:05 ram 18253 0.0 0.0 0.0 0.0 0 slack +17:05:05 root 4937 0.0 0.0 0.0 0.0 2 apache2 +17:05:05 root 25419 0.0 0.0 0.0 0.0 2 kworker/2:1 +17:05:05 www-data 4940 0.0 1.0 0.0 1.0 0 apache2 +17:05:05 www-data 4941 0.0 0.0 0.0 0.0 3 apache2 +17:05:05 ram 5456 0.0 0.0 0.0 0.0 2 hud-service +17:05:05 ram 5459 0.0 0.0 0.0 0.0 2 gnome-session-b +17:05:05 ram 5461 0.0 0.0 0.0 0.0 2 unity-panel-ser +17:05:05 ram 5462 0.0 0.0 0.0 0.0 2 compiz +17:05:05 root 855 0.0 0.0 0.0 0.0 2 NetworkManager +17:05:05 postgres 1369 0.0 0.0 0.0 0.0 2 postgres +17:05:05 postgres 1370 0.0 0.0 0.0 0.0 0 postgres +17:05:05 postgres 1371 0.0 0.0 0.0 0.0 0 postgres +17:05:05 postgres 1372 0.0 0.0 0.0 0.0 2 postgres +17:05:05 postgres 1373 0.0 0.0 0.0 0.0 0 postgres +17:05:05 root 862 0.0 0.0 0.0 0.0 1 cron +17:05:05 root 351 0.0 0.0 0.0 0.0 0 kauditd +17:05:05 ram 18428 0.0 0.0 0.0 0.0 2 chrome +17:05:05 root 866 0.0 0.0 0.0 0.0 1 ModemManager +17:05:05 ram 19618 0.0 0.0 0.0 0.0 0 atom +17:05:05 root 361 0.0 0.0 0.0 0.0 3 systemd-journal +17:05:05 ram 18459 0.0 0.0 0.0 0.0 2 chrome +17:05:05 root 1683 0.0 0.0 0.0 0.0 3 rtsx_usb_ms_2 +17:05:05 root 372 0.0 0.0 0.0 0.0 1 lvmetad +17:05:05 root 886 0.0 0.0 0.0 0.0 1 acpid +17:05:05 root 888 0.0 0.0 0.0 0.0 2 systemd-logind +17:05:05 root 63 0.0 0.0 0.0 0.0 2 acpi_thermal_pm +17:05:05 root 892 0.0 0.0 0.0 0.0 0 atd +17:05:05 root 895 0.0 0.0 0.0 0.0 3 accounts-daemon +17:05:05 root 897 0.0 0.0 0.0 0.0 3 thermald +17:05:05 root 386 0.0 0.0 0.0 0.0 1 systemd-udevd +17:05:05 ram 18411 2.0 0.0 0.0 2.0 1 chrome +17:05:05 root 662 0.0 0.0 0.0 0.0 3 jbd2/sda10-8 +17:05:05 ram 5953 0.0 0.0 0.0 0.0 1 sh +17:05:05 whoopsie 904 0.0 0.0 0.0 0.0 2 whoopsie +17:05:05 root 1087 1.0 0.0 0.0 1.0 1 Xorg +17:05:05 root 663 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:05 ram 18498 0.0 0.0 0.0 0.0 0 chrome +17:05:05 avahi 912 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:05 root 401 0.0 0.0 0.0 0.0 0 kworker/0:1H +17:05:05 root 915 0.0 0.0 0.0 0.0 3 snapd +17:05:05 root 24981 0.0 0.0 0.0 0.0 0 kworker/0:2 +17:05:05 ram 18508 0.0 0.0 0.0 0.0 2 chrome +17:05:05 root 153 0.0 0.0 0.0 0.0 3 scsi_tmf_0 +17:05:05 root 154 0.0 0.0 0.0 0.0 1 scsi_eh_1 +17:05:05 ram 19653 0.0 0.0 0.0 0.0 0 atom +17:05:05 root 1173 0.0 0.0 0.0 0.0 1 pmdaroot +17:05:05 ram 18337 0.0 0.0 0.0 0.0 3 slack +17:05:05 pcp 1179 0.0 0.0 0.0 0.0 3 pmdasimple +17:05:05 ram 5702 0.0 0.0 0.0 0.0 3 unity-fallback- +17:05:05 ram 5964 0.0 0.0 0.0 0.0 2 zeitgeist-fts +17:05:05 ram 18495 0.0 0.0 0.0 0.0 0 chrome +17:05:05 root 24411 0.0 0.0 0.0 0.0 1 kworker/1:1 +17:05:05 ram 5703 0.0 0.0 0.0 0.0 3 polkit-gnome-au +17:05:05 root 5039 0.0 0.0 0.0 0.0 0 lightdm +17:05:05 ram 11289 0.0 0.0 0.0 0.0 0 gvfsd-network +17:05:05 ram 19614 0.0 0.0 0.0 0.0 0 atom +17:05:05 root 25460 0.0 0.0 0.0 0.0 1 kworker/1:2 +17:05:05 ram 5794 0.0 0.0 0.0 0.0 2 gvfs-afc-volume +17:05:05 ram 5620 0.0 0.0 0.0 0.0 3 indicator-messa +17:05:05 ram 23704 0.0 0.0 0.0 0.0 1 gedit +17:05:05 ram 5621 0.0 0.0 0.0 0.0 0 indicator-bluet +17:05:05 ram 18581 0.0 0.0 0.0 0.0 2 chrome +17:05:05 root 24005 0.0 0.0 0.0 0.0 0 kworker/0:1 +17:05:05 ram 5708 0.0 0.0 0.0 0.0 3 nm-applet +17:05:05 root 24523 0.0 0.0 0.0 0.0 1 bioset +17:05:05 root 1186 0.0 0.0 0.0 0.0 0 wpa_supplicant +17:05:05 ram 5709 0.0 0.0 0.0 0.0 3 gnome-software +17:05:05 rtkit 5072 0.0 0.0 0.0 0.0 1 rtkit-daemon +17:05:05 root 465 0.0 0.0 0.0 0.0 2 kworker/2:1H +17:05:05 root 163 0.0 0.0 0.0 0.0 0 scsi_tmf_5 +17:05:05 root 468 0.0 0.0 0.0 0.0 3 kworker/3:1H +17:05:05 ram 22777 10.7 1.1 0.0 11.799999999999999 0 chrome +17:05:05 root 152 0.0 0.0 0.0 0.0 1 scsi_eh_0 +17:05:05 root 1175 0.0 0.0 0.0 0.0 1 pmdaxfs +17:05:05 ram 5597 0.0 0.0 0.0 0.0 1 ibus-engine-sim +17:05:05 root 24229 0.0 0.0 0.0 0.0 2 kworker/2:0 +17:05:05 ram 5600 0.0 0.0 0.0 0.0 0 syndaemon +17:05:05 ram 5604 1.0 1.0 0.0 2.0 2 pulseaudio +17:05:05 ram 19431 0.0 0.0 0.0 0.0 3 bash +17:05:05 ram 5608 0.0 0.0 0.0 0.0 2 dconf-service +17:05:05 ram 5628 0.0 0.0 0.0 0.0 1 indicator-datet +17:05:05 avahi 1002 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:05 root 1003 0.0 0.0 0.0 0.0 3 cups-browsed +17:05:05 ram 25541 0.0 0.0 0.0 0.0 3 pmlogger +17:05:05 ram 8967 0.0 0.0 0.0 0.0 0 unity-scope-loa +17:05:05 ram 19539 1.0 0.0 0.0 1.0 3 chrome +17:05:05 root 1012 0.0 0.0 0.0 0.0 0 irqbalance +17:05:05 root 1013 0.0 0.0 0.0 0.0 3 mdadm +17:05:05 ram 5623 0.0 0.0 0.0 0.0 2 indicator-power +17:05:05 ram 18424 0.0 0.0 0.0 0.0 1 chrome +17:05:05 ram 18425 0.0 0.0 0.0 0.0 0 nacl_helper +17:05:05 pcp 1176 0.0 0.0 0.0 0.0 2 pmdasample +17:05:05 root 508 0.0 0.0 0.0 0.0 1 cfg80211 +17:05:05 ram 18583 0.0 0.0 0.0 0.0 1 chrome +Timestamp UName PID usr system guest %CPU CPU Command +17:05:06 ram 5632 0.0 0.0 0.0 0.0 1 indicator-keybo +17:05:06 root 1 0.0 0.0 0.0 0.0 2 systemd +17:05:06 root 2 0.0 0.0 0.0 0.0 2 kthreadd +17:05:06 root 3 0.0 0.0 0.0 0.0 0 ksoftirqd/0 +17:05:06 root 5 0.0 0.0 0.0 0.0 0 kworker/0:0H +17:05:06 root 7 0.0 0.0 0.0 0.0 0 rcu_sched +17:05:06 root 8 0.0 0.0 0.0 0.0 0 rcu_bh +17:05:06 root 9 0.0 0.0 0.0 0.0 0 migration/0 +17:05:06 root 10 0.0 0.0 0.0 0.0 0 watchdog/0 +17:05:06 root 11 0.0 0.0 0.0 0.0 1 watchdog/1 +17:05:06 root 12 0.0 0.0 0.0 0.0 1 migration/1 +17:05:06 root 13 0.0 0.0 0.0 0.0 1 ksoftirqd/1 +17:05:06 root 15 0.0 0.0 0.0 0.0 1 kworker/1:0H +17:05:06 root 16 0.0 0.0 0.0 0.0 2 watchdog/2 +17:05:06 root 17 0.0 0.0 0.0 0.0 2 migration/2 +17:05:06 root 18 0.0 0.0 0.0 0.0 2 ksoftirqd/2 +17:05:06 ram 5635 0.0 0.0 0.0 0.0 1 indicator-print +17:05:06 root 20 0.0 0.0 0.0 0.0 2 kworker/2:0H +17:05:06 root 21 0.0 0.0 0.0 0.0 3 watchdog/3 +17:05:06 root 22 0.0 0.0 0.0 0.0 3 migration/3 +17:05:06 root 23 0.0 0.0 0.0 0.0 3 ksoftirqd/3 +17:05:06 root 25 0.0 0.0 0.0 0.0 3 kworker/3:0H +17:05:06 root 26 0.0 0.0 0.0 0.0 0 kdevtmpfs +17:05:06 root 27 0.0 0.0 0.0 0.0 1 netns +17:05:06 root 28 0.0 0.0 0.0 0.0 1 perf +17:05:06 root 29 0.0 0.0 0.0 0.0 0 khungtaskd +17:05:06 root 30 0.0 0.0 0.0 0.0 1 writeback +17:05:06 root 31 0.0 0.0 0.0 0.0 2 ksmd +17:05:06 root 32 0.0 0.0 0.0 0.0 2 khugepaged +17:05:06 root 33 0.0 0.0 0.0 0.0 2 crypto +17:05:06 root 34 0.0 0.0 0.0 0.0 2 kintegrityd +17:05:06 root 35 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 36 0.0 0.0 0.0 0.0 2 kblockd +17:05:06 root 37 0.0 0.0 0.0 0.0 2 ata_sff +17:05:06 root 38 0.0 0.0 0.0 0.0 2 md +17:05:06 root 39 0.0 0.0 0.0 0.0 3 devfreq_wq +17:05:06 root 3624 0.0 0.0 0.0 0.0 1 agetty +17:05:06 root 43 0.0 0.0 0.0 0.0 1 kswapd0 +17:05:06 root 44 0.0 0.0 0.0 0.0 2 vmstat +17:05:06 root 45 0.0 0.0 0.0 0.0 2 fsnotify_mark +17:05:06 root 46 0.0 0.0 0.0 0.0 0 ecryptfs-kthrea +17:05:06 ram 5681 0.0 0.0 0.0 0.0 1 evolution-sourc +17:05:06 root 5129 0.0 0.0 0.0 0.0 2 upowerd +17:05:06 ram 5176 0.0 0.0 0.0 0.0 1 systemd +17:05:06 ram 5178 0.0 0.0 0.0 0.0 0 (sd-pam +17:05:06 root 23100 0.0 0.0 0.0 0.0 0 kworker/0:0 +17:05:06 root 62 0.0 0.0 0.0 0.0 2 kthrotld +17:05:06 ram 5183 0.0 0.0 0.0 0.0 3 gnome-keyring-d +17:05:06 ram 5185 0.0 0.0 0.0 0.0 1 upstart +17:05:06 root 66 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 67 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 68 0.0 0.0 0.0 0.0 2 bioset +17:05:06 ram 5701 1.0 0.0 0.0 1.0 1 nautilus +17:05:06 root 70 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 71 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 72 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 73 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 74 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 75 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 76 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 77 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 78 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 79 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 80 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 81 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 82 0.0 0.0 0.0 0.0 2 bioset +17:05:06 root 83 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 84 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 85 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 86 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 87 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 88 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 89 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 90 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 605 0.0 0.0 0.0 0.0 3 wl_event_handle +17:05:06 root 95 0.0 0.0 0.0 0.0 2 ipv6_addrconf +17:05:06 ram 5734 0.0 0.0 0.0 0.0 1 artha +17:05:06 root 619 0.0 0.0 0.0 0.0 0 kvm-irqfd-clean +17:05:06 root 108 0.0 0.0 0.0 0.0 1 deferwq +17:05:06 root 109 0.0 0.0 0.0 0.0 1 charger_manager +17:05:06 ram 18263 0.0 0.0 0.0 0.0 1 slack +17:05:06 ram 18549 0.0 0.0 0.0 0.0 0 chrome +17:05:06 ram 5750 0.0 0.0 0.0 0.0 0 redshift +17:05:06 root 25535 0.0 0.0 0.0 0.0 3 kworker/3:0 +17:05:06 ram 18556 0.0 0.0 0.0 0.0 2 chrome +17:05:06 geoclue 5761 0.0 0.0 0.0 0.0 2 geoclue +17:05:06 ram 5637 0.0 0.0 0.0 0.0 2 indicator-sessi +17:05:06 ram 11395 0.0 0.0 0.0 0.0 0 gvfsd-metadata +17:05:06 ram 5767 0.0 0.0 0.0 0.0 0 gvfs-udisks2-vo +17:05:06 ram 18568 0.0 0.0 0.0 0.0 0 chrome +17:05:06 ram 18569 1.0 0.0 0.0 1.0 0 chrome +17:05:06 ram 24343 0.0 0.0 0.0 0.0 2 atom +17:05:06 root 5774 0.0 0.0 0.0 0.0 0 udisksd +17:05:06 root 1679 0.0 0.0 0.0 0.0 0 kmemstick +17:05:06 pcp 1171 0.0 0.0 0.0 0.0 2 pmcd +17:05:06 root 660 0.0 0.0 0.0 0.0 0 jbd2/sda9-8 +17:05:06 root 661 0.0 0.0 0.0 0.0 0 ext4-rsv-conver +17:05:06 ram 1174 0.0 1.0 0.0 1.0 3 pmdaproc +17:05:06 root 151 0.0 0.0 0.0 0.0 0 kpsmoused +17:05:06 ram 5272 0.0 0.0 0.0 0.0 3 upstart-udev-br +17:05:06 root 1177 0.0 0.0 0.0 0.0 0 pmdalinux +17:05:06 postgres 1178 0.0 0.0 0.0 0.0 2 postgres +17:05:06 root 155 0.0 0.0 0.0 0.0 3 scsi_tmf_1 +17:05:06 root 156 0.0 0.0 0.0 0.0 1 scsi_eh_2 +17:05:06 root 157 0.0 0.0 0.0 0.0 3 scsi_tmf_2 +17:05:06 root 158 0.0 0.0 0.0 0.0 1 scsi_eh_3 +17:05:06 root 159 0.0 0.0 0.0 0.0 0 scsi_tmf_3 +17:05:06 root 160 0.0 0.0 0.0 0.0 0 scsi_eh_4 +17:05:06 root 161 0.0 0.0 0.0 0.0 0 scsi_tmf_4 +17:05:06 root 162 0.0 0.0 0.0 0.0 1 scsi_eh_5 +17:05:06 root 1051 0.0 0.0 0.0 0.0 2 lightdm +17:05:06 ram 19424 0.0 0.0 0.0 0.0 1 gnome-terminal- +17:05:06 ram 5286 0.0 0.0 0.0 0.0 3 window-stack-br +17:05:06 ram 5800 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:06 root 169 0.0 0.0 0.0 0.0 2 kfd_process_wq +17:05:06 root 172 0.0 0.0 0.0 0.0 1 ttm_swap +17:05:06 root 174 0.0 0.0 0.0 0.0 1 bioset +17:05:06 ram 18291 0.0 0.0 0.0 0.0 2 slack +17:05:06 ram 5274 0.0 0.0 0.0 0.0 3 dbus-daemon +17:05:06 root 23736 0.0 0.0 0.0 0.0 3 kworker/3:1 +17:05:06 ram 6329 0.0 0.0 0.0 0.0 2 update-notifier +17:05:06 ram 5818 0.0 0.0 0.0 0.0 0 gvfs-mtp-volume +17:05:06 root 5829 0.0 0.0 0.0 0.0 1 fwupd +17:05:06 ram 6855 0.0 0.0 0.0 0.0 0 deja-dup-monito +17:05:06 root 22728 0.0 0.0 0.0 0.0 0 kworker/u16:3 +17:05:06 ram 11327 0.0 0.0 0.0 0.0 3 gvfsd-dnssd +17:05:06 pcp 4810 0.0 0.0 0.0 0.0 2 pmlogger +17:05:06 ram 18465 0.0 0.0 0.0 0.0 0 chrome +17:05:06 colord 5154 0.0 0.0 0.0 0.0 0 colord +17:05:06 root 24782 0.0 0.0 0.0 0.0 3 kworker/3:2 +17:05:06 root 461 0.0 0.0 0.0 0.0 2 edac-poller +17:05:06 ram 18641 0.0 0.0 0.0 0.0 1 chrome +17:05:06 ram 5842 0.0 0.0 0.0 0.0 3 gvfsd-trash +17:05:06 ram 5633 0.0 0.0 0.0 0.0 3 indicator-sound +17:05:06 unbound 4821 0.0 0.0 0.0 0.0 0 unbound +17:05:06 ram 5335 0.0 0.0 0.0 0.0 2 ibus-daemon +17:05:06 ram 24868 0.0 0.0 0.0 0.0 0 python +17:05:06 ram 21722 0.0 0.0 0.0 0.0 1 chrome +17:05:06 root 24783 0.0 0.0 0.0 0.0 0 kworker/u16:2 +17:05:06 ram 18420 0.0 0.0 0.0 0.0 1 cat +17:05:06 root 18062 0.0 0.0 0.0 0.0 2 dhclient +17:05:06 ram 5343 0.0 0.0 0.0 0.0 3 upstart-dbus-br +17:05:06 ram 6023 0.0 0.0 0.0 0.0 2 gconfd-2 +17:05:06 ram 5345 0.0 0.0 0.0 0.0 0 upstart-dbus-br +17:05:06 root 22757 0.0 0.0 0.0 0.0 1 kworker/1:0 +17:05:06 root 21457 0.0 0.0 0.0 0.0 2 kworker/2:2 +17:05:06 ram 5866 0.0 0.0 0.0 0.0 2 evolution-calen +17:05:06 ram 5671 0.0 0.0 0.0 0.0 3 indicator-appli +17:05:06 ram 5876 0.0 0.0 0.0 0.0 3 evolution-addre +17:05:06 ram 5878 0.0 0.0 0.0 0.0 3 evolution-calen +17:05:06 ram 5367 0.0 0.0 0.0 0.0 0 gpg-agent +17:05:06 root 1031 0.0 0.0 0.0 0.0 0 polkitd +17:05:06 root 249 0.0 0.0 0.0 0.0 0 raid5wq +17:05:06 ram 8954 0.0 0.0 0.0 0.0 2 unity-scope-hom +17:05:06 ram 18421 0.0 0.0 0.0 0.0 1 cat +17:05:06 nobody 5273 0.0 0.0 0.0 0.0 3 dnsmasq +17:05:06 ram 5375 0.0 0.0 0.0 0.0 3 gvfsd +17:05:06 ram 25344 0.0 0.0 0.0 0.0 1 bash +17:05:06 ram 5380 0.0 0.0 0.0 0.0 3 gvfsd-fuse +17:05:06 ram 5895 0.0 0.0 0.0 0.0 2 evolution-addre +17:05:06 ram 8969 0.0 0.0 0.0 0.0 3 unity-files-dae +17:05:06 ram 8971 0.0 0.0 0.0 0.0 3 unity-music-dae +17:05:06 systemd-timesync 780 0.0 0.0 0.0 0.0 3 systemd-timesyn +17:05:06 ram 5389 0.0 0.0 0.0 0.0 3 ibus-dconf +17:05:06 ram 5395 0.0 0.0 0.0 0.0 3 upstart-file-br +17:05:06 ram 5396 0.0 0.0 0.0 0.0 3 ibus-ui-gtk3 +17:05:06 ram 18503 0.0 0.0 0.0 0.0 2 chrome +17:05:06 ram 5398 0.0 0.0 0.0 0.0 1 ibus-x11 +17:05:06 root 279 0.0 0.0 0.0 0.0 0 bioset +17:05:06 ram 7130 0.0 0.0 0.0 0.0 0 notify-osd +17:05:06 ram 5806 0.0 0.0 0.0 0.0 1 gvfs-gphoto2-vo +17:05:06 ram 5789 0.0 0.0 0.0 0.0 2 gvfs-goa-volume +17:05:06 ram 18224 0.0 0.0 0.0 0.0 1 slack +17:05:06 root 17945 0.0 0.0 0.0 0.0 3 irq/30-mei_me +17:05:06 ram 5414 0.0 0.0 0.0 0.0 0 at-spi-bus-laun +17:05:06 ram 19642 0.0 0.0 0.0 0.0 3 atom +17:05:06 ram 5419 0.0 0.0 0.0 0.0 2 dbus-daemon +17:05:06 ram 18220 0.0 0.0 0.0 0.0 1 slack +17:05:06 ram 5421 0.0 0.0 0.0 0.0 2 at-spi2-registr +17:05:06 syslog 814 0.0 0.0 0.0 0.0 2 rsyslogd +17:05:06 messagebus 815 0.0 0.0 0.0 0.0 1 dbus-daemon +17:05:06 root 304 0.0 0.0 0.0 0.0 1 kworker/1:1H +17:05:06 root 306 0.0 0.0 0.0 0.0 3 jbd2/sda8-8 +17:05:06 root 307 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:06 ram 5946 0.0 0.0 0.0 0.0 1 zeitgeist-datah +17:05:06 root 22751 0.0 0.0 0.0 0.0 2 kworker/u16:0 +17:05:06 ram 5441 0.0 0.0 0.0 0.0 0 unity-settings- +17:05:06 ram 5442 0.0 0.0 0.0 0.0 2 bamfdaemon +17:05:06 root 22852 0.0 0.0 0.0 0.0 3 kworker/u16:1 +17:05:06 ram 5957 0.0 0.0 0.0 0.0 0 zeitgeist-daemo +17:05:06 ram 18253 0.0 0.0 0.0 0.0 0 slack +17:05:06 root 4937 0.0 0.0 0.0 0.0 2 apache2 +17:05:06 root 25419 0.0 0.0 0.0 0.0 2 kworker/2:1 +17:05:06 www-data 4940 0.0 0.0 0.0 0.0 0 apache2 +17:05:06 www-data 4941 0.0 0.0 0.0 0.0 3 apache2 +17:05:06 ram 5456 1.0 0.0 0.0 1.0 2 hud-service +17:05:06 ram 5459 0.0 0.0 0.0 0.0 2 gnome-session-b +17:05:06 ram 5461 0.0 0.0 0.0 0.0 2 unity-panel-ser +17:05:06 ram 5462 0.0 1.0 0.0 1.0 2 compiz +17:05:06 root 855 0.0 0.0 0.0 0.0 2 NetworkManager +17:05:06 postgres 1369 0.0 0.0 0.0 0.0 2 postgres +17:05:06 postgres 1370 0.0 0.0 0.0 0.0 0 postgres +17:05:06 postgres 1371 0.0 0.0 0.0 0.0 0 postgres +17:05:06 postgres 1372 0.0 0.0 0.0 0.0 2 postgres +17:05:06 postgres 1373 0.0 0.0 0.0 0.0 0 postgres +17:05:06 root 862 0.0 0.0 0.0 0.0 1 cron +17:05:06 root 351 0.0 0.0 0.0 0.0 0 kauditd +17:05:06 ram 18428 0.0 0.0 0.0 0.0 2 chrome +17:05:06 root 866 0.0 0.0 0.0 0.0 1 ModemManager +17:05:06 ram 19618 0.0 0.0 0.0 0.0 0 atom +17:05:06 root 361 0.0 0.0 0.0 0.0 3 systemd-journal +17:05:06 ram 18459 1.0 0.0 0.0 1.0 0 chrome +17:05:06 root 1683 0.0 0.0 0.0 0.0 3 rtsx_usb_ms_2 +17:05:06 root 372 0.0 0.0 0.0 0.0 1 lvmetad +17:05:06 root 886 0.0 0.0 0.0 0.0 1 acpid +17:05:06 root 888 0.0 0.0 0.0 0.0 2 systemd-logind +17:05:06 root 63 0.0 0.0 0.0 0.0 2 acpi_thermal_pm +17:05:06 root 892 0.0 0.0 0.0 0.0 0 atd +17:05:06 root 895 0.0 0.0 0.0 0.0 3 accounts-daemon +17:05:06 root 897 0.0 0.0 0.0 0.0 3 thermald +17:05:06 root 386 0.0 0.0 0.0 0.0 1 systemd-udevd +17:05:06 ram 18411 4.0 0.0 0.0 4.0 1 chrome +17:05:06 root 662 0.0 0.0 0.0 0.0 1 jbd2/sda10-8 +17:05:06 ram 5953 0.0 0.0 0.0 0.0 1 sh +17:05:06 whoopsie 904 0.0 0.0 0.0 0.0 2 whoopsie +17:05:06 root 1087 0.0 0.0 0.0 0.0 1 Xorg +17:05:06 root 663 0.0 0.0 0.0 0.0 1 ext4-rsv-conver +17:05:06 ram 18498 0.0 0.0 0.0 0.0 0 chrome +17:05:06 avahi 912 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:06 root 401 0.0 0.0 0.0 0.0 0 kworker/0:1H +17:05:06 root 915 0.0 0.0 0.0 0.0 3 snapd +17:05:06 root 24981 0.0 0.0 0.0 0.0 0 kworker/0:2 +17:05:06 ram 18508 0.0 0.0 0.0 0.0 2 chrome +17:05:06 root 153 0.0 0.0 0.0 0.0 3 scsi_tmf_0 +17:05:06 root 154 0.0 0.0 0.0 0.0 1 scsi_eh_1 +17:05:06 ram 19653 0.0 0.0 0.0 0.0 0 atom +17:05:06 root 1173 0.0 0.0 0.0 0.0 1 pmdaroot +17:05:06 ram 18337 0.0 0.0 0.0 0.0 3 slack +17:05:06 pcp 1179 0.0 0.0 0.0 0.0 3 pmdasimple +17:05:06 ram 5702 0.0 0.0 0.0 0.0 3 unity-fallback- +17:05:06 ram 5964 0.0 0.0 0.0 0.0 2 zeitgeist-fts +17:05:06 ram 18495 0.0 0.0 0.0 0.0 0 chrome +17:05:06 root 24411 0.0 0.0 0.0 0.0 1 kworker/1:1 +17:05:06 ram 5703 0.0 0.0 0.0 0.0 3 polkit-gnome-au +17:05:06 root 5039 0.0 0.0 0.0 0.0 0 lightdm +17:05:06 ram 11289 0.0 0.0 0.0 0.0 0 gvfsd-network +17:05:06 ram 19614 0.0 0.0 0.0 0.0 0 atom +17:05:06 root 25460 0.0 0.0 0.0 0.0 1 kworker/1:2 +17:05:06 ram 5794 0.0 0.0 0.0 0.0 2 gvfs-afc-volume +17:05:06 ram 5620 0.0 0.0 0.0 0.0 3 indicator-messa +17:05:06 ram 23704 0.0 0.0 0.0 0.0 1 gedit +17:05:06 ram 5621 0.0 0.0 0.0 0.0 0 indicator-bluet +17:05:06 ram 18581 0.0 0.0 0.0 0.0 2 chrome +17:05:06 root 24005 0.0 0.0 0.0 0.0 0 kworker/0:1 +17:05:06 ram 5708 0.0 0.0 0.0 0.0 3 nm-applet +17:05:06 root 24523 0.0 0.0 0.0 0.0 1 bioset +17:05:06 root 1186 0.0 0.0 0.0 0.0 0 wpa_supplicant +17:05:06 ram 5709 0.0 0.0 0.0 0.0 3 gnome-software +17:05:06 rtkit 5072 0.0 0.0 0.0 0.0 1 rtkit-daemon +17:05:06 root 465 0.0 0.0 0.0 0.0 2 kworker/2:1H +17:05:06 root 163 0.0 0.0 0.0 0.0 0 scsi_tmf_5 +17:05:06 root 468 0.0 0.0 0.0 0.0 3 kworker/3:1H +17:05:06 ram 22777 7.1 1.0 0.0 8.1 1 chrome +17:05:06 root 152 0.0 0.0 0.0 0.0 1 scsi_eh_0 +17:05:06 root 1175 0.0 0.0 0.0 0.0 1 pmdaxfs +17:05:06 ram 5597 0.0 0.0 0.0 0.0 1 ibus-engine-sim +17:05:06 root 24229 0.0 0.0 0.0 0.0 2 kworker/2:0 +17:05:06 ram 5600 0.0 0.0 0.0 0.0 0 syndaemon +17:05:06 ram 5604 1.9 0.0 0.0 1.9 1 pulseaudio +17:05:06 ram 19431 0.0 0.0 0.0 0.0 3 bash +17:05:06 ram 5608 0.0 0.0 0.0 0.0 2 dconf-service +17:05:06 ram 5628 0.0 0.0 0.0 0.0 1 indicator-datet +17:05:06 avahi 1002 0.0 0.0 0.0 0.0 3 avahi-daemon +17:05:06 root 1003 0.0 0.0 0.0 0.0 3 cups-browsed +17:05:06 ram 25541 0.0 0.0 0.0 0.0 3 pmlogger +17:05:06 ram 8967 0.0 0.0 0.0 0.0 0 unity-scope-loa +17:05:06 ram 19539 0.0 0.0 0.0 0.0 3 chrome +17:05:06 root 1012 0.0 0.0 0.0 0.0 0 irqbalance +17:05:06 root 1013 0.0 0.0 0.0 0.0 3 mdadm +17:05:06 ram 5623 0.0 0.0 0.0 0.0 2 indicator-power +17:05:06 ram 18424 0.0 0.0 0.0 0.0 1 chrome +17:05:06 ram 18425 0.0 0.0 0.0 0.0 0 nacl_helper +17:05:06 pcp 1176 0.0 0.0 0.0 0.0 2 pmdasample +17:05:06 root 508 0.0 0.0 0.0 0.0 1 cfg80211 +17:05:06 ram 18583 0.0 0.0 0.0 0.0 1 chrome + +=== pcp-pidstat with given samples count +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UID PID usr system guest %CPU CPU Command +Timestamp UID PID usr system guest %CPU CPU Command + +=== pcp-pidstat priority and scheduling information +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UID PID prio policy Command +17:05:04 0 9 99 FIFO migration/0 +17:05:04 0 10 99 FIFO watchdog/0 +17:05:04 0 11 99 FIFO watchdog/1 +17:05:04 0 12 99 FIFO migration/1 +17:05:04 0 16 99 FIFO watchdog/2 +17:05:04 0 17 99 FIFO migration/2 +17:05:04 0 21 99 FIFO watchdog/3 +17:05:04 0 22 99 FIFO migration/3 +17:05:04 0 17945 50 FIFO irq/30-mei_me +Timestamp UID PID prio policy Command +17:05:05 0 9 99 FIFO migration/0 +17:05:05 0 10 99 FIFO watchdog/0 +17:05:05 0 11 99 FIFO watchdog/1 +17:05:05 0 12 99 FIFO migration/1 +17:05:05 0 16 99 FIFO watchdog/2 +17:05:05 0 17 99 FIFO migration/2 +17:05:05 0 21 99 FIFO watchdog/3 +17:05:05 0 22 99 FIFO migration/3 +17:05:05 0 17945 50 FIFO irq/30-mei_me +Timestamp UID PID prio policy Command +17:05:06 0 9 99 FIFO migration/0 +17:05:06 0 10 99 FIFO watchdog/0 +17:05:06 0 11 99 FIFO watchdog/1 +17:05:06 0 12 99 FIFO migration/1 +17:05:06 0 16 99 FIFO watchdog/2 +17:05:06 0 17 99 FIFO migration/2 +17:05:06 0 21 99 FIFO watchdog/3 +17:05:06 0 22 99 FIFO migration/3 +17:05:06 0 17945 50 FIFO irq/30-mei_me + +=== pcp-pidstat memory utilization +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UID PID MinFlt/s MajFlt/s VSize RSS %Mem Command +17:05:04 1000 5632 ? ? 714080 4500 0.12 indicator-keybo +17:05:04 0 1 ? ? 185436 3984 0.1 systemd +17:05:04 1000 5635 ? ? 547032 4168 0.11 indicator-print +17:05:04 0 3624 ? ? 23008 352 0.01 agetty +17:05:04 1000 5681 ? ? 1111676 2592 0.07 evolution-sourc +17:05:04 0 5129 ? ? 354652 5332 0.14 upowerd +17:05:04 1000 5176 ? ? 45380 1492 0.04 systemd +17:05:04 1000 5178 ? ? 63308 396 0.01 (sd-pam +17:05:04 1000 5183 ? ? 286888 3892 0.1 gnome-keyring-d +17:05:04 1000 5185 ? ? 53644 2060 0.05 upstart +17:05:04 1000 5701 ? ? 1119960 51320 1.35 nautilus +17:05:04 1000 5734 ? ? 603428 10284 0.27 artha +17:05:04 1000 18263 ? ? 1141588 96392 2.54 slack +17:05:04 1000 18549 ? ? 785592 58736 1.55 chrome +17:05:04 1000 5750 ? ? 291832 344 0.01 redshift +17:05:04 1000 18556 ? ? 752784 42032 1.11 chrome +17:05:04 123 5761 ? ? 371156 7024 0.19 geoclue +17:05:04 1000 5637 ? ? 828876 1620 0.04 indicator-sessi +17:05:04 1000 11395 ? ? 193180 1600 0.04 gvfsd-metadata +17:05:04 1000 5767 ? ? 292512 2844 0.07 gvfs-udisks2-vo +17:05:04 1000 18568 ? ? 774296 51944 1.37 chrome +17:05:04 1000 18569 ? ? 776164 52508 1.38 chrome +17:05:04 1000 24343 ? ? 893736 51208 1.35 atom +17:05:04 0 5774 ? ? 433620 5396 0.14 udisksd +17:05:04 999 1171 ? ? 54516 2040 0.05 pmcd +17:05:04 1000 1174 ? ? 46708 2364 0.06 pmdaproc +17:05:04 1000 5272 ? ? 39928 1152 0.03 upstart-udev-br +17:05:04 0 1177 ? ? 37444 712 0.02 pmdalinux +17:05:04 124 1178 ? ? 301812 2852 0.08 postgres +17:05:04 0 1051 ? ? 350408 1616 0.04 lightdm +17:05:04 1000 19424 ? ? 661348 24460 0.64 gnome-terminal- +17:05:04 1000 5286 ? ? 93416 2656 0.07 window-stack-br +17:05:04 1000 5800 ? ? 862592 2096 0.06 evolution-calen +17:05:04 1000 18291 ? ? 1327188 178548 4.71 slack +17:05:04 1000 5274 ? ? 48308 4768 0.13 dbus-daemon +17:05:04 1000 6329 ? ? 524028 5988 0.16 update-notifier +17:05:04 1000 5818 ? ? 266700 1660 0.04 gvfs-mtp-volume +17:05:04 0 5829 ? ? 628728 19284 0.51 fwupd +17:05:04 1000 6855 ? ? 442520 2160 0.06 deja-dup-monito +17:05:04 1000 11327 ? ? 368792 1200 0.03 gvfsd-dnssd +17:05:04 999 4810 ? ? 43856 1056 0.03 pmlogger +17:05:04 1000 18465 ? ? 391548 6644 0.18 chrome +17:05:04 113 5154 ? ? 308252 3280 0.09 colord +17:05:04 1000 18641 ? ? 990408 113420 2.99 chrome +17:05:04 1000 5842 ? ? 357636 988 0.03 gvfsd-trash +17:05:04 1000 5633 ? ? 744440 3420 0.09 indicator-sound +17:05:04 122 4821 ? ? 54500 11748 0.31 unbound +17:05:04 1000 5335 ? ? 354736 6456 0.17 ibus-daemon +17:05:04 1000 24868 ? ? 49592 18976 0.5 python +17:05:04 1000 21722 ? ? 897828 130960 3.45 chrome +17:05:04 1000 18420 ? ? 14516 100 0.0 cat +17:05:04 0 18062 ? ? 16120 2204 0.06 dhclient +17:05:04 1000 5343 ? ? 39864 88 0.0 upstart-dbus-br +17:05:04 1000 6023 ? ? 68368 1480 0.04 gconfd-2 +17:05:04 1000 5345 ? ? 39864 112 0.0 upstart-dbus-br +17:05:04 1000 5866 ? ? 888340 1944 0.05 evolution-calen +17:05:04 1000 5671 ? ? 395968 5144 0.14 indicator-appli +17:05:04 1000 5876 ? ? 697644 1644 0.04 evolution-addre +17:05:04 1000 5878 ? ? 1069192 2180 0.06 evolution-calen +17:05:04 1000 5367 ? ? 173608 160 0.0 gpg-agent +17:05:04 0 1031 ? ? 288936 2300 0.06 polkitd +17:05:04 1000 8954 ? ? 782972 2308 0.06 unity-scope-hom +17:05:04 1000 18421 ? ? 14516 72 0.0 cat +17:05:04 65534 5273 ? ? 59936 960 0.03 dnsmasq +17:05:04 1000 5375 ? ? 281592 1072 0.03 gvfsd +17:05:04 1000 25344 ? ? 34036 9512 0.25 bash +17:05:04 1000 5380 ? ? 406860 1104 0.03 gvfsd-fuse +17:05:04 1000 5895 ? ? 846864 2584 0.07 evolution-addre +17:05:04 1000 8969 ? ? 522984 2704 0.07 unity-files-dae +17:05:04 1000 8971 ? ? 340748 2164 0.06 unity-music-dae +17:05:04 100 780 ? ? 102384 664 0.02 systemd-timesyn +17:05:04 1000 5389 ? ? 271332 1284 0.03 ibus-dconf +17:05:04 1000 5395 ? ? 48356 860 0.02 upstart-file-br +17:05:04 1000 5396 ? ? 477908 7124 0.19 ibus-ui-gtk3 +17:05:04 1000 18503 ? ? 1500876 114160 3.01 chrome +17:05:04 1000 5398 ? ? 427552 4172 0.11 ibus-x11 +17:05:04 1000 7130 ? ? 514172 38440 1.01 notify-osd +17:05:04 1000 5806 ? ? 278900 1960 0.05 gvfs-gphoto2-vo +17:05:04 1000 5789 ? ? 264600 860 0.02 gvfs-goa-volume +17:05:04 1000 18224 ? ? 309976 6440 0.17 slack +17:05:04 1000 5414 ? ? 338008 1292 0.03 at-spi-bus-laun +17:05:04 1000 19642 ? ? 423528 42964 1.13 atom +17:05:04 1000 5419 ? ? 43028 1012 0.03 dbus-daemon +17:05:04 1000 18220 ? ? 1543240 77648 2.05 slack +17:05:04 1000 5421 ? ? 206868 1764 0.05 at-spi2-registr +17:05:04 104 814 ? ? 256396 940 0.02 rsyslogd +17:05:04 106 815 ? ? 44388 2920 0.08 dbus-daemon +17:05:04 1000 5946 ? ? 577500 4612 0.12 zeitgeist-datah +17:05:04 1000 5441 ? ? 1061192 12944 0.34 unity-settings- +17:05:04 1000 5442 ? ? 547624 11488 0.3 bamfdaemon +17:05:04 1000 5957 ? ? 410416 3876 0.1 zeitgeist-daemo +17:05:04 1000 18253 ? ? 592588 88844 2.34 slack +17:05:04 0 4937 ? ? 71576 628 0.02 apache2 +17:05:04 33 4940 ? ? 360740 612 0.02 apache2 +17:05:04 33 4941 ? ? 360740 612 0.02 apache2 +17:05:04 1000 5456 ? ? 701124 26084 0.69 hud-service +17:05:04 1000 5459 ? ? 560592 3572 0.09 gnome-session-b +17:05:04 1000 5461 ? ? 643552 25080 0.66 unity-panel-ser +17:05:04 1000 5462 ? ? 1570040 70980 1.87 compiz +17:05:04 0 855 ? ? 456536 5332 0.14 NetworkManager +17:05:04 124 1369 ? ? 301812 76 0.0 postgres +17:05:04 124 1370 ? ? 301812 976 0.03 postgres +17:05:04 124 1371 ? ? 301812 320 0.01 postgres +17:05:04 124 1372 ? ? 302240 1560 0.04 postgres +17:05:04 124 1373 ? ? 156796 176 0.0 postgres +17:05:04 0 862 ? ? 36076 892 0.02 cron +17:05:04 1000 18428 ? ? 367660 6164 0.16 chrome +17:05:04 0 866 ? ? 337320 1332 0.04 ModemManager +17:05:04 1000 19618 ? ? 305616 7108 0.19 atom +17:05:04 0 361 ? ? 32076 3240 0.09 systemd-journal +17:05:04 1000 18459 ? ? 929620 216644 5.71 chrome +17:05:04 0 372 ? ? 94772 0 0.0 lvmetad +17:05:04 0 886 ? ? 4400 868 0.02 acpid +17:05:04 0 888 ? ? 28628 1244 0.03 systemd-logind +17:05:04 0 892 ? ? 26044 504 0.01 atd +17:05:04 0 895 ? ? 282932 1556 0.04 accounts-daemon +17:05:04 0 897 ? ? 173500 1824 0.05 thermald +17:05:04 0 386 ? ? 46192 1512 0.04 systemd-udevd +17:05:04 1000 18411 ? ? 1558800 197716 5.21 chrome +17:05:04 1000 5953 ? ? 4508 0 0.0 sh +17:05:04 109 904 ? ? 374040 2680 0.07 whoopsie +17:05:04 0 1087 ? ? 500060 54124 1.43 Xorg +17:05:04 1000 18498 ? ? 935920 158556 4.18 chrome +17:05:04 111 912 ? ? 44912 1312 0.03 avahi-daemon +17:05:04 0 915 ? ? 231584 3776 0.1 snapd +17:05:04 1000 18508 ? ? 755856 41140 1.08 chrome +17:05:04 1000 19653 ? ? 1426648 248360 6.54 atom +17:05:04 0 1173 ? ? 37236 868 0.02 pmdaroot +17:05:04 1000 18337 ? ? 1297884 188584 4.97 slack +17:05:04 999 1179 ? ? 45656 712 0.02 pmdasimple +17:05:04 1000 5702 ? ? 576604 3804 0.1 unity-fallback- +17:05:04 1000 5964 ? ? 324152 6700 0.18 zeitgeist-fts +17:05:04 1000 18495 ? ? 750732 46724 1.23 chrome +17:05:04 1000 5703 ? ? 429160 3536 0.09 polkit-gnome-au +17:05:04 0 5039 ? ? 230300 1364 0.04 lightdm +17:05:04 1000 11289 ? ? 433748 1192 0.03 gvfsd-network +17:05:04 1000 19614 ? ? 1459168 95140 2.51 atom +17:05:04 1000 5794 ? ? 410680 2088 0.06 gvfs-afc-volume +17:05:04 1000 5620 ? ? 352000 1280 0.03 indicator-messa +17:05:04 1000 23704 ? ? 658444 41880 1.1 gedit +17:05:04 1000 5621 ? ? 414192 848 0.02 indicator-bluet +17:05:04 1000 18581 ? ? 752776 46348 1.22 chrome +17:05:04 1000 5708 ? ? 662884 14044 0.37 nm-applet +17:05:04 0 1186 ? ? 44116 2352 0.06 wpa_supplicant +17:05:04 1000 5709 ? ? 1319872 19560 0.52 gnome-software +17:05:04 118 5072 ? ? 183544 956 0.03 rtkit-daemon +17:05:04 1000 22777 ? ? 1355200 415524 10.95 chrome +17:05:04 0 1175 ? ? 37240 1008 0.03 pmdaxfs +17:05:04 1000 5597 ? ? 195456 1596 0.04 ibus-engine-sim +17:05:04 1000 5600 ? ? 22372 912 0.02 syndaemon +17:05:04 1000 5604 ? ? 581800 5596 0.15 pulseaudio +17:05:04 1000 19431 ? ? 34980 9832 0.26 bash +17:05:04 1000 5608 ? ? 178792 1800 0.05 dconf-service +17:05:04 1000 5628 ? ? 1240056 3188 0.08 indicator-datet +17:05:04 111 1002 ? ? 44788 24 0.0 avahi-daemon +17:05:04 0 1003 ? ? 274828 1572 0.04 cups-browsed +17:05:04 1000 25541 ? ? 37272 3388 0.09 pmlogger +17:05:04 1000 8967 ? ? 591444 8556 0.23 unity-scope-loa +17:05:04 1000 19539 ? ? 949128 168752 4.45 chrome +17:05:04 0 1012 ? ? 19472 976 0.03 irqbalance +17:05:04 0 1013 ? ? 13376 44 0.0 mdadm +17:05:04 1000 5623 ? ? 430636 4544 0.12 indicator-power +17:05:04 1000 18424 ? ? 367660 13336 0.35 chrome +17:05:04 1000 18425 ? ? 142156 4824 0.13 nacl_helper +17:05:04 999 1176 ? ? 45728 1116 0.03 pmdasample +17:05:04 1000 18583 ? ? 799672 61856 1.63 chrome +Timestamp UID PID MinFlt/s MajFlt/s VSize RSS %Mem Command +17:05:05 1000 5632 0.0 0.0 714080 4500 0.12 indicator-keybo +17:05:05 0 1 0.0 0.0 185436 3984 0.1 systemd +17:05:05 1000 5635 0.0 0.0 547032 4168 0.11 indicator-print +17:05:05 0 3624 0.0 0.0 23008 352 0.01 agetty +17:05:05 1000 5681 0.0 0.0 1111676 2592 0.07 evolution-sourc +17:05:05 0 5129 0.0 0.0 354652 5332 0.14 upowerd +17:05:05 1000 5176 0.0 0.0 45380 1492 0.04 systemd +17:05:05 1000 5178 0.0 0.0 63308 396 0.01 (sd-pam +17:05:05 1000 5183 0.0 0.0 286888 3892 0.1 gnome-keyring-d +17:05:05 1000 5185 0.0 0.0 53644 2060 0.05 upstart +17:05:05 1000 5701 0.0 0.0 1119960 51320 1.35 nautilus +17:05:05 1000 5734 0.0 0.0 603428 10284 0.27 artha +17:05:05 1000 18263 0.0 0.0 1141588 96392 2.54 slack +17:05:05 1000 18549 0.0 0.0 785592 58736 1.55 chrome +17:05:05 1000 5750 0.0 0.0 291832 344 0.01 redshift +17:05:05 1000 18556 0.0 0.0 752784 42032 1.11 chrome +17:05:05 123 5761 0.0 0.0 371156 7024 0.19 geoclue +17:05:05 1000 5637 0.0 0.0 828876 1620 0.04 indicator-sessi +17:05:05 1000 11395 0.0 0.0 193180 1600 0.04 gvfsd-metadata +17:05:05 1000 5767 0.0 0.0 292512 2844 0.07 gvfs-udisks2-vo +17:05:05 1000 18568 0.0 0.0 774296 51944 1.37 chrome +17:05:05 1000 18569 0.0 0.0 776164 52508 1.38 chrome +17:05:05 1000 24343 0.0 0.0 893736 51208 1.35 atom +17:05:05 0 5774 0.0 0.0 433620 5396 0.14 udisksd +17:05:05 999 1171 48.0 0.0 54528 2084 0.05 pmcd +17:05:05 1000 1174 288.0 1.0 46708 2708 0.07 pmdaproc +17:05:05 1000 5272 0.0 0.0 39928 1152 0.03 upstart-udev-br +17:05:05 0 1177 0.0 0.0 37444 712 0.02 pmdalinux +17:05:05 124 1178 0.0 0.0 301812 2852 0.08 postgres +17:05:05 0 1051 0.0 0.0 350408 1616 0.04 lightdm +17:05:05 1000 19424 0.0 0.0 661348 24460 0.64 gnome-terminal- +17:05:05 1000 5286 0.0 0.0 93416 2656 0.07 window-stack-br +17:05:05 1000 5800 0.0 0.0 862592 2096 0.06 evolution-calen +17:05:05 1000 18291 0.0 0.0 1327188 178548 4.71 slack +17:05:05 1000 5274 0.0 0.0 48308 4768 0.13 dbus-daemon +17:05:05 1000 6329 0.0 0.0 524028 5988 0.16 update-notifier +17:05:05 1000 5818 0.0 0.0 266700 1660 0.04 gvfs-mtp-volume +17:05:05 0 5829 0.0 0.0 628728 19284 0.51 fwupd +17:05:05 1000 6855 0.0 0.0 442520 2160 0.06 deja-dup-monito +17:05:05 1000 11327 0.0 0.0 368792 1200 0.03 gvfsd-dnssd +17:05:05 999 4810 0.0 0.0 43856 1056 0.03 pmlogger +17:05:05 1000 18465 0.0 0.0 391548 6644 0.18 chrome +17:05:05 113 5154 0.0 0.0 308252 3280 0.09 colord +17:05:05 1000 18641 18.0 0.0 990408 113420 2.99 chrome +17:05:05 1000 5842 0.0 0.0 357636 988 0.03 gvfsd-trash +17:05:05 1000 5633 0.0 0.0 744440 3420 0.09 indicator-sound +17:05:05 122 4821 0.0 0.0 54500 11748 0.31 unbound +17:05:05 1000 5335 0.0 0.0 354736 6456 0.17 ibus-daemon +17:05:05 1000 24868 0.0 0.0 49592 18976 0.5 python +17:05:05 1000 21722 0.0 0.0 897828 130960 3.45 chrome +17:05:05 1000 18420 0.0 0.0 14516 100 0.0 cat +17:05:05 0 18062 0.0 0.0 16120 2204 0.06 dhclient +17:05:05 1000 5343 0.0 0.0 39864 88 0.0 upstart-dbus-br +17:05:05 1000 6023 0.0 0.0 68368 1480 0.04 gconfd-2 +17:05:05 1000 5345 0.0 0.0 39864 112 0.0 upstart-dbus-br +17:05:05 1000 5866 0.0 0.0 888340 1944 0.05 evolution-calen +17:05:05 1000 5671 0.0 0.0 395968 5144 0.14 indicator-appli +17:05:05 1000 5876 0.0 0.0 697644 1644 0.04 evolution-addre +17:05:05 1000 5878 0.0 0.0 1069192 2180 0.06 evolution-calen +17:05:05 1000 5367 0.0 0.0 173608 160 0.0 gpg-agent +17:05:05 0 1031 0.0 0.0 288936 2300 0.06 polkitd +17:05:05 1000 8954 0.0 0.0 782972 2308 0.06 unity-scope-hom +17:05:05 1000 18421 0.0 0.0 14516 72 0.0 cat +17:05:05 65534 5273 0.0 0.0 59936 960 0.03 dnsmasq +17:05:05 1000 5375 0.0 0.0 281592 1072 0.03 gvfsd +17:05:05 1000 25344 0.0 0.0 34036 9512 0.25 bash +17:05:05 1000 5380 0.0 0.0 406860 1104 0.03 gvfsd-fuse +17:05:05 1000 5895 0.0 0.0 846864 2584 0.07 evolution-addre +17:05:05 1000 8969 0.0 0.0 522984 2704 0.07 unity-files-dae +17:05:05 1000 8971 0.0 0.0 340748 2164 0.06 unity-music-dae +17:05:05 100 780 0.0 0.0 102384 664 0.02 systemd-timesyn +17:05:05 1000 5389 0.0 0.0 271332 1284 0.03 ibus-dconf +17:05:05 1000 5395 0.0 0.0 48356 860 0.02 upstart-file-br +17:05:05 1000 5396 0.0 0.0 477908 7124 0.19 ibus-ui-gtk3 +17:05:05 1000 18503 8.0 0.0 1500876 114160 3.01 chrome +17:05:05 1000 5398 0.0 0.0 427552 4172 0.11 ibus-x11 +17:05:05 1000 7130 0.0 0.0 514172 38440 1.01 notify-osd +17:05:05 1000 5806 0.0 0.0 278900 1960 0.05 gvfs-gphoto2-vo +17:05:05 1000 5789 0.0 0.0 264600 860 0.02 gvfs-goa-volume +17:05:05 1000 18224 0.0 0.0 309976 6440 0.17 slack +17:05:05 1000 5414 0.0 0.0 338008 1292 0.03 at-spi-bus-laun +17:05:05 1000 19642 0.0 0.0 423528 42964 1.13 atom +17:05:05 1000 5419 0.0 0.0 43028 1012 0.03 dbus-daemon +17:05:05 1000 18220 0.0 0.0 1543240 77648 2.05 slack +17:05:05 1000 5421 0.0 0.0 206868 1764 0.05 at-spi2-registr +17:05:05 104 814 0.0 0.0 256396 940 0.02 rsyslogd +17:05:05 106 815 0.0 0.0 44388 2920 0.08 dbus-daemon +17:05:05 1000 5946 0.0 0.0 577500 4612 0.12 zeitgeist-datah +17:05:05 1000 5441 0.0 0.0 1061192 12944 0.34 unity-settings- +17:05:05 1000 5442 0.0 0.0 547624 11488 0.3 bamfdaemon +17:05:05 1000 5957 0.0 0.0 410416 3876 0.1 zeitgeist-daemo +17:05:05 1000 18253 0.0 0.0 592588 88844 2.34 slack +17:05:05 0 4937 0.0 0.0 71576 628 0.02 apache2 +17:05:05 33 4940 0.0 0.0 360740 612 0.02 apache2 +17:05:05 33 4941 0.0 0.0 360740 612 0.02 apache2 +17:05:05 1000 5456 0.0 0.0 701124 26084 0.69 hud-service +17:05:05 1000 5459 0.0 0.0 560592 3572 0.09 gnome-session-b +17:05:05 1000 5461 0.0 0.0 643552 25080 0.66 unity-panel-ser +17:05:05 1000 5462 0.0 0.0 1570040 70980 1.87 compiz +17:05:05 0 855 0.0 0.0 456536 5332 0.14 NetworkManager +17:05:05 124 1369 0.0 0.0 301812 76 0.0 postgres +17:05:05 124 1370 0.0 0.0 301812 976 0.03 postgres +17:05:05 124 1371 0.0 0.0 301812 320 0.01 postgres +17:05:05 124 1372 0.0 0.0 302240 1560 0.04 postgres +17:05:05 124 1373 0.0 0.0 156796 176 0.0 postgres +17:05:05 0 862 0.0 0.0 36076 892 0.02 cron +17:05:05 1000 18428 0.0 0.0 367660 6164 0.16 chrome +17:05:05 0 866 0.0 0.0 337320 1332 0.04 ModemManager +17:05:05 1000 19618 0.0 0.0 305616 7108 0.19 atom +17:05:05 0 361 0.0 0.0 32076 3240 0.09 systemd-journal +17:05:05 1000 18459 1.0 0.0 927540 214308 5.65 chrome +17:05:05 0 372 0.0 0.0 94772 0 0.0 lvmetad +17:05:05 0 886 0.0 0.0 4400 868 0.02 acpid +17:05:05 0 888 0.0 0.0 28628 1244 0.03 systemd-logind +17:05:05 0 892 0.0 0.0 26044 504 0.01 atd +17:05:05 0 895 0.0 0.0 282932 1556 0.04 accounts-daemon +17:05:05 0 897 0.0 0.0 173500 1824 0.05 thermald +17:05:05 0 386 0.0 0.0 46192 1512 0.04 systemd-udevd +17:05:05 1000 18411 1.0 0.0 1558800 197716 5.21 chrome +17:05:05 1000 5953 0.0 0.0 4508 0 0.0 sh +17:05:05 109 904 0.0 0.0 374040 2680 0.07 whoopsie +17:05:05 0 1087 0.0 0.0 500060 54124 1.43 Xorg +17:05:05 1000 18498 25.0 0.0 935920 158556 4.18 chrome +17:05:05 111 912 0.0 0.0 44912 1312 0.03 avahi-daemon +17:05:05 0 915 0.0 0.0 231584 3776 0.1 snapd +17:05:05 1000 18508 0.0 0.0 755856 41140 1.08 chrome +17:05:05 1000 19653 0.0 0.0 1426648 248360 6.54 atom +17:05:05 0 1173 0.0 0.0 37236 868 0.02 pmdaroot +17:05:05 1000 18337 0.0 0.0 1297884 188584 4.97 slack +17:05:05 999 1179 0.0 0.0 45656 712 0.02 pmdasimple +17:05:05 1000 5702 0.0 0.0 576604 3804 0.1 unity-fallback- +17:05:05 1000 5964 0.0 0.0 324152 6700 0.18 zeitgeist-fts +17:05:05 1000 18495 0.0 0.0 750732 46724 1.23 chrome +17:05:05 1000 5703 0.0 0.0 429160 3536 0.09 polkit-gnome-au +17:05:05 0 5039 0.0 0.0 230300 1364 0.04 lightdm +17:05:05 1000 11289 0.0 0.0 433748 1192 0.03 gvfsd-network +17:05:05 1000 19614 0.0 0.0 1459168 95140 2.51 atom +17:05:05 1000 5794 0.0 0.0 410680 2088 0.06 gvfs-afc-volume +17:05:05 1000 5620 0.0 0.0 352000 1280 0.03 indicator-messa +17:05:05 1000 23704 0.0 0.0 658444 41880 1.1 gedit +17:05:05 1000 5621 0.0 0.0 414192 848 0.02 indicator-bluet +17:05:05 1000 18581 0.0 0.0 752776 46348 1.22 chrome +17:05:05 1000 5708 0.0 0.0 662884 14044 0.37 nm-applet +17:05:05 0 1186 0.0 0.0 44116 2352 0.06 wpa_supplicant +17:05:05 1000 5709 0.0 0.0 1319872 19560 0.52 gnome-software +17:05:05 118 5072 0.0 0.0 183544 956 0.03 rtkit-daemon +17:05:05 1000 22777 207.0 0.0 1355344 414688 10.93 chrome +17:05:05 0 1175 0.0 0.0 37240 1008 0.03 pmdaxfs +17:05:05 1000 5597 0.0 0.0 195456 1596 0.04 ibus-engine-sim +17:05:05 1000 5600 0.0 0.0 22372 912 0.02 syndaemon +17:05:05 1000 5604 0.0 0.0 581800 5596 0.15 pulseaudio +17:05:05 1000 19431 0.0 0.0 34980 9832 0.26 bash +17:05:05 1000 5608 0.0 0.0 178792 1800 0.05 dconf-service +17:05:05 1000 5628 0.0 0.0 1240056 3188 0.08 indicator-datet +17:05:05 111 1002 0.0 0.0 44788 24 0.0 avahi-daemon +17:05:05 0 1003 0.0 0.0 274828 1572 0.04 cups-browsed +17:05:05 1000 25541 36.0 0.0 37524 3612 0.1 pmlogger +17:05:05 1000 8967 0.0 0.0 591444 8556 0.23 unity-scope-loa +17:05:05 1000 19539 0.0 0.0 949128 168752 4.45 chrome +17:05:05 0 1012 0.0 0.0 19472 976 0.03 irqbalance +17:05:05 0 1013 0.0 0.0 13376 44 0.0 mdadm +17:05:05 1000 5623 0.0 0.0 430636 4544 0.12 indicator-power +17:05:05 1000 18424 0.0 0.0 367660 13336 0.35 chrome +17:05:05 1000 18425 0.0 0.0 142156 4824 0.13 nacl_helper +17:05:05 999 1176 0.0 0.0 45728 1116 0.03 pmdasample +17:05:05 1000 18583 0.0 0.0 799672 61472 1.62 chrome +Timestamp UID PID MinFlt/s MajFlt/s VSize RSS %Mem Command +17:05:06 1000 5632 0.0 0.0 714080 4500 0.12 indicator-keybo +17:05:06 0 1 0.0 0.0 185436 3984 0.1 systemd +17:05:06 1000 5635 0.0 0.0 547032 4168 0.11 indicator-print +17:05:06 0 3624 0.0 0.0 23008 352 0.01 agetty +17:05:06 1000 5681 0.0 0.0 1111676 2592 0.07 evolution-sourc +17:05:06 0 5129 0.0 0.0 354652 5332 0.14 upowerd +17:05:06 1000 5176 0.0 0.0 45380 1492 0.04 systemd +17:05:06 1000 5178 0.0 0.0 63308 396 0.01 (sd-pam +17:05:06 1000 5183 0.0 0.0 286888 3892 0.1 gnome-keyring-d +17:05:06 1000 5185 0.0 0.0 53644 2060 0.05 upstart +17:05:06 1000 5701 0.0 0.0 1119960 51320 1.35 nautilus +17:05:06 1000 5734 0.0 0.0 603428 10284 0.27 artha +17:05:06 1000 18263 0.0 0.0 1141588 96392 2.54 slack +17:05:06 1000 18549 0.0 0.0 785592 58736 1.55 chrome +17:05:06 1000 5750 0.0 0.0 291832 344 0.01 redshift +17:05:06 1000 18556 0.0 0.0 752784 42032 1.11 chrome +17:05:06 123 5761 0.0 0.0 371156 7024 0.19 geoclue +17:05:06 1000 5637 0.0 0.0 828876 1620 0.04 indicator-sessi +17:05:06 1000 11395 0.0 0.0 193180 1600 0.04 gvfsd-metadata +17:05:06 1000 5767 0.0 0.0 292512 2844 0.07 gvfs-udisks2-vo +17:05:06 1000 18568 0.0 0.0 774296 51944 1.37 chrome +17:05:06 1000 18569 7.0 0.0 776164 52508 1.38 chrome +17:05:06 1000 24343 0.0 0.0 893736 51208 1.35 atom +17:05:06 0 5774 0.0 0.0 433620 5396 0.14 udisksd +17:05:06 999 1171 47.0 0.0 54528 2084 0.05 pmcd +17:05:06 1000 1174 285.0 0.0 46708 2708 0.07 pmdaproc +17:05:06 1000 5272 0.0 0.0 39928 1152 0.03 upstart-udev-br +17:05:06 0 1177 0.0 0.0 37444 712 0.02 pmdalinux +17:05:06 124 1178 0.0 0.0 301812 2852 0.08 postgres +17:05:06 0 1051 0.0 0.0 350408 1616 0.04 lightdm +17:05:06 1000 19424 0.0 0.0 661348 24460 0.64 gnome-terminal- +17:05:06 1000 5286 0.0 0.0 93416 2656 0.07 window-stack-br +17:05:06 1000 5800 0.0 0.0 862592 2096 0.06 evolution-calen +17:05:06 1000 18291 0.0 0.0 1327188 178548 4.71 slack +17:05:06 1000 5274 0.0 0.0 48308 4768 0.13 dbus-daemon +17:05:06 1000 6329 0.0 0.0 524028 5988 0.16 update-notifier +17:05:06 1000 5818 0.0 0.0 266700 1660 0.04 gvfs-mtp-volume +17:05:06 0 5829 0.0 0.0 628728 19284 0.51 fwupd +17:05:06 1000 6855 0.0 0.0 442520 2160 0.06 deja-dup-monito +17:05:06 1000 11327 0.0 0.0 368792 1200 0.03 gvfsd-dnssd +17:05:06 999 4810 0.0 0.0 43856 1056 0.03 pmlogger +17:05:06 1000 18465 0.0 0.0 391548 6644 0.18 chrome +17:05:06 113 5154 0.0 0.0 308252 3280 0.09 colord +17:05:06 1000 18641 17.0 0.0 990408 113420 2.99 chrome +17:05:06 1000 5842 0.0 0.0 357636 988 0.03 gvfsd-trash +17:05:06 1000 5633 0.0 0.0 744440 3420 0.09 indicator-sound +17:05:06 122 4821 0.0 0.0 54500 11748 0.31 unbound +17:05:06 1000 5335 0.0 0.0 354736 6456 0.17 ibus-daemon +17:05:06 1000 24868 0.0 0.0 49592 18976 0.5 python +17:05:06 1000 21722 0.0 0.0 897828 130960 3.45 chrome +17:05:06 1000 18420 0.0 0.0 14516 100 0.0 cat +17:05:06 0 18062 0.0 0.0 16120 2204 0.06 dhclient +17:05:06 1000 5343 0.0 0.0 39864 88 0.0 upstart-dbus-br +17:05:06 1000 6023 0.0 0.0 68368 1480 0.04 gconfd-2 +17:05:06 1000 5345 0.0 0.0 39864 112 0.0 upstart-dbus-br +17:05:06 1000 5866 0.0 0.0 888340 1944 0.05 evolution-calen +17:05:06 1000 5671 0.0 0.0 395968 5144 0.14 indicator-appli +17:05:06 1000 5876 0.0 0.0 697644 1644 0.04 evolution-addre +17:05:06 1000 5878 0.0 0.0 1069192 2180 0.06 evolution-calen +17:05:06 1000 5367 0.0 0.0 173608 160 0.0 gpg-agent +17:05:06 0 1031 0.0 0.0 288936 2300 0.06 polkitd +17:05:06 1000 8954 0.0 0.0 782972 2308 0.06 unity-scope-hom +17:05:06 1000 18421 0.0 0.0 14516 72 0.0 cat +17:05:06 65534 5273 0.0 0.0 59936 960 0.03 dnsmasq +17:05:06 1000 5375 0.0 0.0 281592 1072 0.03 gvfsd +17:05:06 1000 25344 0.0 0.0 34036 9512 0.25 bash +17:05:06 1000 5380 0.0 0.0 406860 1104 0.03 gvfsd-fuse +17:05:06 1000 5895 0.0 0.0 846864 2584 0.07 evolution-addre +17:05:06 1000 8969 0.0 0.0 522984 2704 0.07 unity-files-dae +17:05:06 1000 8971 0.0 0.0 340748 2164 0.06 unity-music-dae +17:05:06 100 780 0.0 0.0 102384 664 0.02 systemd-timesyn +17:05:06 1000 5389 0.0 0.0 271332 1284 0.03 ibus-dconf +17:05:06 1000 5395 0.0 0.0 48356 860 0.02 upstart-file-br +17:05:06 1000 5396 0.0 0.0 477908 7124 0.19 ibus-ui-gtk3 +17:05:06 1000 18503 0.0 0.0 1500876 114160 3.01 chrome +17:05:06 1000 5398 0.0 0.0 427552 4172 0.11 ibus-x11 +17:05:06 1000 7130 0.0 0.0 514172 38440 1.01 notify-osd +17:05:06 1000 5806 0.0 0.0 278900 1960 0.05 gvfs-gphoto2-vo +17:05:06 1000 5789 0.0 0.0 264600 860 0.02 gvfs-goa-volume +17:05:06 1000 18224 0.0 0.0 309976 6440 0.17 slack +17:05:06 1000 5414 0.0 0.0 338008 1292 0.03 at-spi-bus-laun +17:05:06 1000 19642 0.0 0.0 423528 42964 1.13 atom +17:05:06 1000 5419 0.0 0.0 43028 1012 0.03 dbus-daemon +17:05:06 1000 18220 0.0 0.0 1543240 77648 2.05 slack +17:05:06 1000 5421 0.0 0.0 206868 1764 0.05 at-spi2-registr +17:05:06 104 814 0.0 0.0 256396 940 0.02 rsyslogd +17:05:06 106 815 0.0 0.0 44388 2920 0.08 dbus-daemon +17:05:06 1000 5946 0.0 0.0 577500 4612 0.12 zeitgeist-datah +17:05:06 1000 5441 0.0 0.0 1061192 12944 0.34 unity-settings- +17:05:06 1000 5442 0.0 0.0 547624 11488 0.3 bamfdaemon +17:05:06 1000 5957 0.0 0.0 410416 3876 0.1 zeitgeist-daemo +17:05:06 1000 18253 0.0 0.0 592588 88844 2.34 slack +17:05:06 0 4937 0.0 0.0 71576 628 0.02 apache2 +17:05:06 33 4940 0.0 0.0 360740 612 0.02 apache2 +17:05:06 33 4941 0.0 0.0 360740 612 0.02 apache2 +17:05:06 1000 5456 8.0 0.0 701124 26084 0.69 hud-service +17:05:06 1000 5459 0.0 0.0 560592 3572 0.09 gnome-session-b +17:05:06 1000 5461 0.0 0.0 643552 25080 0.66 unity-panel-ser +17:05:06 1000 5462 0.0 0.0 1570040 70980 1.87 compiz +17:05:06 0 855 0.0 0.0 456536 5332 0.14 NetworkManager +17:05:06 124 1369 0.0 0.0 301812 76 0.0 postgres +17:05:06 124 1370 0.0 0.0 301812 976 0.03 postgres +17:05:06 124 1371 0.0 0.0 301812 320 0.01 postgres +17:05:06 124 1372 0.0 0.0 302240 1560 0.04 postgres +17:05:06 124 1373 0.0 0.0 156796 176 0.0 postgres +17:05:06 0 862 0.0 0.0 36076 892 0.02 cron +17:05:06 1000 18428 0.0 0.0 367660 6164 0.16 chrome +17:05:06 0 866 0.0 0.0 337320 1332 0.04 ModemManager +17:05:06 1000 19618 0.0 0.0 305616 7108 0.19 atom +17:05:06 0 361 0.0 0.0 32076 3240 0.09 systemd-journal +17:05:06 1000 18459 0.0 0.0 926468 213492 5.63 chrome +17:05:06 0 372 0.0 0.0 94772 0 0.0 lvmetad +17:05:06 0 886 0.0 0.0 4400 868 0.02 acpid +17:05:06 0 888 0.0 0.0 28628 1244 0.03 systemd-logind +17:05:06 0 892 0.0 0.0 26044 504 0.01 atd +17:05:06 0 895 0.0 0.0 282932 1556 0.04 accounts-daemon +17:05:06 0 897 0.0 0.0 173500 1824 0.05 thermald +17:05:06 0 386 0.0 0.0 46192 1512 0.04 systemd-udevd +17:05:06 1000 18411 40.0 0.0 1558800 197720 5.21 chrome +17:05:06 1000 5953 0.0 0.0 4508 0 0.0 sh +17:05:06 109 904 0.0 0.0 374040 2680 0.07 whoopsie +17:05:06 0 1087 0.0 0.0 500060 54124 1.43 Xorg +17:05:06 1000 18498 1.0 0.0 935920 157592 4.15 chrome +17:05:06 111 912 0.0 0.0 44912 1312 0.03 avahi-daemon +17:05:06 0 915 0.0 0.0 231584 3776 0.1 snapd +17:05:06 1000 18508 0.0 0.0 755856 41140 1.08 chrome +17:05:06 1000 19653 0.0 0.0 1426648 248360 6.54 atom +17:05:06 0 1173 0.0 0.0 37236 868 0.02 pmdaroot +17:05:06 1000 18337 0.0 0.0 1297884 188584 4.97 slack +17:05:06 999 1179 0.0 0.0 45656 712 0.02 pmdasimple +17:05:06 1000 5702 0.0 0.0 576604 3804 0.1 unity-fallback- +17:05:06 1000 5964 0.0 0.0 324152 6700 0.18 zeitgeist-fts +17:05:06 1000 18495 0.0 0.0 750732 46724 1.23 chrome +17:05:06 1000 5703 0.0 0.0 429160 3536 0.09 polkit-gnome-au +17:05:06 0 5039 0.0 0.0 230300 1364 0.04 lightdm +17:05:06 1000 11289 0.0 0.0 433748 1192 0.03 gvfsd-network +17:05:06 1000 19614 0.0 0.0 1459168 95140 2.51 atom +17:05:06 1000 5794 0.0 0.0 410680 2088 0.06 gvfs-afc-volume +17:05:06 1000 5620 0.0 0.0 352000 1280 0.03 indicator-messa +17:05:06 1000 23704 0.0 0.0 658444 41880 1.1 gedit +17:05:06 1000 5621 0.0 0.0 414192 848 0.02 indicator-bluet +17:05:06 1000 18581 0.0 0.0 752776 46348 1.22 chrome +17:05:06 1000 5708 0.0 0.0 662884 14044 0.37 nm-applet +17:05:06 0 1186 0.0 0.0 44116 2352 0.06 wpa_supplicant +17:05:06 1000 5709 0.0 0.0 1319872 19560 0.52 gnome-software +17:05:06 118 5072 0.0 0.0 183544 956 0.03 rtkit-daemon +17:05:06 1000 22777 131.0 0.0 1354944 414452 10.92 chrome +17:05:06 0 1175 0.0 0.0 37240 1008 0.03 pmdaxfs +17:05:06 1000 5597 0.0 0.0 195456 1596 0.04 ibus-engine-sim +17:05:06 1000 5600 0.0 0.0 22372 912 0.02 syndaemon +17:05:06 1000 5604 0.0 0.0 581800 5596 0.15 pulseaudio +17:05:06 1000 19431 0.0 0.0 34980 9832 0.26 bash +17:05:06 1000 5608 0.0 0.0 178792 1800 0.05 dconf-service +17:05:06 1000 5628 0.0 0.0 1240056 3188 0.08 indicator-datet +17:05:06 111 1002 0.0 0.0 44788 24 0.0 avahi-daemon +17:05:06 0 1003 0.0 0.0 274828 1572 0.04 cups-browsed +17:05:06 1000 25541 1.0 0.0 37728 3612 0.1 pmlogger +17:05:06 1000 8967 0.0 0.0 591444 8556 0.23 unity-scope-loa +17:05:06 1000 19539 102.0 0.0 949128 168752 4.45 chrome +17:05:06 0 1012 0.0 0.0 19472 976 0.03 irqbalance +17:05:06 0 1013 0.0 0.0 13376 44 0.0 mdadm +17:05:06 1000 5623 0.0 0.0 430636 4544 0.12 indicator-power +17:05:06 1000 18424 0.0 0.0 367660 13336 0.35 chrome +17:05:06 1000 18425 0.0 0.0 142156 4824 0.13 nacl_helper +17:05:06 999 1176 0.0 0.0 45728 1116 0.03 pmdasample +17:05:06 1000 18583 0.0 0.0 799672 61472 1.62 chrome + +=== pcp-pidstat stack utilization +Linux ram-Lenovo 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 (4 CPU) +Timestamp UID PID StkSize Command +17:05:04 1000 5632 136 indicator-keybo +17:05:04 0 1 136 systemd +17:05:04 1000 5635 136 indicator-print +17:05:04 0 3624 136 agetty +17:05:04 1000 5681 136 evolution-sourc +17:05:04 0 5129 136 upowerd +17:05:04 1000 5176 136 systemd +17:05:04 1000 5178 136 (sd-pam +17:05:04 1000 5183 136 gnome-keyring-d +17:05:04 1000 5185 136 upstart +17:05:04 1000 5701 136 nautilus +17:05:04 1000 5734 136 artha +17:05:04 1000 18263 220 slack +17:05:04 1000 18549 136 chrome +17:05:04 1000 5750 136 redshift +17:05:04 1000 18556 136 chrome +17:05:04 123 5761 136 geoclue +17:05:04 1000 5637 136 indicator-sessi +17:05:04 1000 11395 136 gvfsd-metadata +17:05:04 1000 5767 136 gvfs-udisks2-vo +17:05:04 1000 18568 136 chrome +17:05:04 1000 18569 136 chrome +17:05:04 1000 24343 136 atom +17:05:04 0 5774 136 udisksd +17:05:04 999 1171 136 pmcd +17:05:04 1000 1174 136 pmdaproc +17:05:04 1000 5272 136 upstart-udev-br +17:05:04 0 1177 136 pmdalinux +17:05:04 124 1178 148 postgres +17:05:04 0 1051 136 lightdm +17:05:04 1000 19424 136 gnome-terminal- +17:05:04 1000 5286 136 window-stack-br +17:05:04 1000 5800 136 evolution-calen +17:05:04 1000 18291 220 slack +17:05:04 1000 5274 136 dbus-daemon +17:05:04 1000 6329 136 update-notifier +17:05:04 1000 5818 136 gvfs-mtp-volume +17:05:04 0 5829 136 fwupd +17:05:04 1000 6855 136 deja-dup-monito +17:05:04 1000 11327 136 gvfsd-dnssd +17:05:04 999 4810 136 pmlogger +17:05:04 1000 18465 140 chrome +17:05:04 113 5154 136 colord +17:05:04 1000 18641 136 chrome +17:05:04 1000 5842 136 gvfsd-trash +17:05:04 1000 5633 136 indicator-sound +17:05:04 122 4821 160 unbound +17:05:04 1000 5335 136 ibus-daemon +17:05:04 1000 24868 136 python +17:05:04 1000 21722 136 chrome +17:05:04 1000 18420 136 cat +17:05:04 0 18062 136 dhclient +17:05:04 1000 5343 136 upstart-dbus-br +17:05:04 1000 6023 136 gconfd-2 +17:05:04 1000 5345 136 upstart-dbus-br +17:05:04 1000 5866 136 evolution-calen +17:05:04 1000 5671 136 indicator-appli +17:05:04 1000 5876 136 evolution-addre +17:05:04 1000 5878 136 evolution-calen +17:05:04 1000 5367 136 gpg-agent +17:05:04 0 1031 136 polkitd +17:05:04 1000 8954 136 unity-scope-hom +17:05:04 1000 18421 136 cat +17:05:04 65534 5273 136 dnsmasq +17:05:04 1000 5375 136 gvfsd +17:05:04 1000 25344 136 bash +17:05:04 1000 5380 136 gvfsd-fuse +17:05:04 1000 5895 136 evolution-addre +17:05:04 1000 8969 136 unity-files-dae +17:05:04 1000 8971 136 unity-music-dae +17:05:04 100 780 136 systemd-timesyn +17:05:04 1000 5389 136 ibus-dconf +17:05:04 1000 5395 136 upstart-file-br +17:05:04 1000 5396 136 ibus-ui-gtk3 +17:05:04 1000 18503 136 chrome +17:05:04 1000 5398 136 ibus-x11 +17:05:04 1000 7130 136 notify-osd +17:05:04 1000 5806 136 gvfs-gphoto2-vo +17:05:04 1000 5789 136 gvfs-goa-volume +17:05:04 1000 18224 136 slack +17:05:04 1000 5414 136 at-spi-bus-laun +17:05:04 1000 19642 136 atom +17:05:04 1000 5419 136 dbus-daemon +17:05:04 1000 18220 136 slack +17:05:04 1000 5421 136 at-spi2-registr +17:05:04 104 814 136 rsyslogd +17:05:04 106 815 136 dbus-daemon +17:05:04 1000 5946 136 zeitgeist-datah +17:05:04 1000 5441 136 unity-settings- +17:05:04 1000 5442 136 bamfdaemon +17:05:04 1000 5957 136 zeitgeist-daemo +17:05:04 1000 18253 136 slack +17:05:04 0 4937 136 apache2 +17:05:04 33 4940 136 apache2 +17:05:04 33 4941 136 apache2 +17:05:04 1000 5456 136 hud-service +17:05:04 1000 5459 136 gnome-session-b +17:05:04 1000 5461 136 unity-panel-ser +17:05:04 1000 5462 156 compiz +17:05:04 0 855 136 NetworkManager +17:05:04 124 1369 148 postgres +17:05:04 124 1370 148 postgres +17:05:04 124 1371 148 postgres +17:05:04 124 1372 148 postgres +17:05:04 124 1373 148 postgres +17:05:04 0 862 136 cron +17:05:04 1000 18428 136 chrome +17:05:04 0 866 136 ModemManager +17:05:04 1000 19618 136 atom +17:05:04 0 361 136 systemd-journal +17:05:04 1000 18459 140 chrome +17:05:04 0 372 136 lvmetad +17:05:04 0 886 136 acpid +17:05:04 0 888 136 systemd-logind +17:05:04 0 892 136 atd +17:05:04 0 895 136 accounts-daemon +17:05:04 0 897 136 thermald +17:05:04 0 386 136 systemd-udevd +17:05:04 1000 18411 136 chrome +17:05:04 1000 5953 136 sh +17:05:04 109 904 136 whoopsie +17:05:04 0 1087 272 Xorg +17:05:04 1000 18498 136 chrome +17:05:04 111 912 136 avahi-daemon +17:05:04 0 915 136 snapd +17:05:04 1000 18508 136 chrome +17:05:04 1000 19653 136 atom +17:05:04 0 1173 136 pmdaroot +17:05:04 1000 18337 220 slack +17:05:04 999 1179 136 pmdasimple +17:05:04 1000 5702 136 unity-fallback- +17:05:04 1000 5964 136 zeitgeist-fts +17:05:04 1000 18495 136 chrome +17:05:04 1000 5703 136 polkit-gnome-au +17:05:04 0 5039 136 lightdm +17:05:04 1000 11289 136 gvfsd-network +17:05:04 1000 19614 136 atom +17:05:04 1000 5794 136 gvfs-afc-volume +17:05:04 1000 5620 136 indicator-messa +17:05:04 1000 23704 136 gedit +17:05:04 1000 5621 136 indicator-bluet +17:05:04 1000 18581 136 chrome +17:05:04 1000 5708 136 nm-applet +17:05:04 0 1186 136 wpa_supplicant +17:05:04 1000 5709 136 gnome-software +17:05:04 118 5072 136 rtkit-daemon +17:05:04 1000 22777 136 chrome +17:05:04 0 1175 136 pmdaxfs +17:05:04 1000 5597 136 ibus-engine-sim +17:05:04 1000 5600 136 syndaemon +17:05:04 1000 5604 136 pulseaudio +17:05:04 1000 19431 136 bash +17:05:04 1000 5608 136 dconf-service +17:05:04 1000 5628 136 indicator-datet +17:05:04 111 1002 136 avahi-daemon +17:05:04 0 1003 136 cups-browsed +17:05:04 1000 25541 140 pmlogger +17:05:04 1000 8967 136 unity-scope-loa +17:05:04 1000 19539 136 chrome +17:05:04 0 1012 136 irqbalance +17:05:04 0 1013 136 mdadm +17:05:04 1000 5623 136 indicator-power +17:05:04 1000 18424 136 chrome +17:05:04 1000 18425 136 nacl_helper +17:05:04 999 1176 136 pmdasample +17:05:04 1000 18583 136 chrome +Timestamp UID PID StkSize Command +17:05:05 1000 5632 136 indicator-keybo +17:05:05 0 1 136 systemd +17:05:05 1000 5635 136 indicator-print +17:05:05 0 3624 136 agetty +17:05:05 1000 5681 136 evolution-sourc +17:05:05 0 5129 136 upowerd +17:05:05 1000 5176 136 systemd +17:05:05 1000 5178 136 (sd-pam +17:05:05 1000 5183 136 gnome-keyring-d +17:05:05 1000 5185 136 upstart +17:05:05 1000 5701 136 nautilus +17:05:05 1000 5734 136 artha +17:05:05 1000 18263 220 slack +17:05:05 1000 18549 136 chrome +17:05:05 1000 5750 136 redshift +17:05:05 1000 18556 136 chrome +17:05:05 123 5761 136 geoclue +17:05:05 1000 5637 136 indicator-sessi +17:05:05 1000 11395 136 gvfsd-metadata +17:05:05 1000 5767 136 gvfs-udisks2-vo +17:05:05 1000 18568 136 chrome +17:05:05 1000 18569 136 chrome +17:05:05 1000 24343 136 atom +17:05:05 0 5774 136 udisksd +17:05:05 999 1171 136 pmcd +17:05:05 1000 1174 136 pmdaproc +17:05:05 1000 5272 136 upstart-udev-br +17:05:05 0 1177 136 pmdalinux +17:05:05 124 1178 148 postgres +17:05:05 0 1051 136 lightdm +17:05:05 1000 19424 136 gnome-terminal- +17:05:05 1000 5286 136 window-stack-br +17:05:05 1000 5800 136 evolution-calen +17:05:05 1000 18291 220 slack +17:05:05 1000 5274 136 dbus-daemon +17:05:05 1000 6329 136 update-notifier +17:05:05 1000 5818 136 gvfs-mtp-volume +17:05:05 0 5829 136 fwupd +17:05:05 1000 6855 136 deja-dup-monito +17:05:05 1000 11327 136 gvfsd-dnssd +17:05:05 999 4810 136 pmlogger +17:05:05 1000 18465 140 chrome +17:05:05 113 5154 136 colord +17:05:05 1000 18641 136 chrome +17:05:05 1000 5842 136 gvfsd-trash +17:05:05 1000 5633 136 indicator-sound +17:05:05 122 4821 160 unbound +17:05:05 1000 5335 136 ibus-daemon +17:05:05 1000 24868 136 python +17:05:05 1000 21722 136 chrome +17:05:05 1000 18420 136 cat +17:05:05 0 18062 136 dhclient +17:05:05 1000 5343 136 upstart-dbus-br +17:05:05 1000 6023 136 gconfd-2 +17:05:05 1000 5345 136 upstart-dbus-br +17:05:05 1000 5866 136 evolution-calen +17:05:05 1000 5671 136 indicator-appli +17:05:05 1000 5876 136 evolution-addre +17:05:05 1000 5878 136 evolution-calen +17:05:05 1000 5367 136 gpg-agent +17:05:05 0 1031 136 polkitd +17:05:05 1000 8954 136 unity-scope-hom +17:05:05 1000 18421 136 cat +17:05:05 65534 5273 136 dnsmasq +17:05:05 1000 5375 136 gvfsd +17:05:05 1000 25344 136 bash +17:05:05 1000 5380 136 gvfsd-fuse +17:05:05 1000 5895 136 evolution-addre +17:05:05 1000 8969 136 unity-files-dae +17:05:05 1000 8971 136 unity-music-dae +17:05:05 100 780 136 systemd-timesyn +17:05:05 1000 5389 136 ibus-dconf +17:05:05 1000 5395 136 upstart-file-br +17:05:05 1000 5396 136 ibus-ui-gtk3 +17:05:05 1000 18503 136 chrome +17:05:05 1000 5398 136 ibus-x11 +17:05:05 1000 7130 136 notify-osd +17:05:05 1000 5806 136 gvfs-gphoto2-vo +17:05:05 1000 5789 136 gvfs-goa-volume +17:05:05 1000 18224 136 slack +17:05:05 1000 5414 136 at-spi-bus-laun +17:05:05 1000 19642 136 atom +17:05:05 1000 5419 136 dbus-daemon +17:05:05 1000 18220 136 slack +17:05:05 1000 5421 136 at-spi2-registr +17:05:05 104 814 136 rsyslogd +17:05:05 106 815 136 dbus-daemon +17:05:05 1000 5946 136 zeitgeist-datah +17:05:05 1000 5441 136 unity-settings- +17:05:05 1000 5442 136 bamfdaemon +17:05:05 1000 5957 136 zeitgeist-daemo +17:05:05 1000 18253 136 slack +17:05:05 0 4937 136 apache2 +17:05:05 33 4940 136 apache2 +17:05:05 33 4941 136 apache2 +17:05:05 1000 5456 136 hud-service +17:05:05 1000 5459 136 gnome-session-b +17:05:05 1000 5461 136 unity-panel-ser +17:05:05 1000 5462 156 compiz +17:05:05 0 855 136 NetworkManager +17:05:05 124 1369 148 postgres +17:05:05 124 1370 148 postgres +17:05:05 124 1371 148 postgres +17:05:05 124 1372 148 postgres +17:05:05 124 1373 148 postgres +17:05:05 0 862 136 cron +17:05:05 1000 18428 136 chrome +17:05:05 0 866 136 ModemManager +17:05:05 1000 19618 136 atom +17:05:05 0 361 136 systemd-journal +17:05:05 1000 18459 140 chrome +17:05:05 0 372 136 lvmetad +17:05:05 0 886 136 acpid +17:05:05 0 888 136 systemd-logind +17:05:05 0 892 136 atd +17:05:05 0 895 136 accounts-daemon +17:05:05 0 897 136 thermald +17:05:05 0 386 136 systemd-udevd +17:05:05 1000 18411 136 chrome +17:05:05 1000 5953 136 sh +17:05:05 109 904 136 whoopsie +17:05:05 0 1087 272 Xorg +17:05:05 1000 18498 136 chrome +17:05:05 111 912 136 avahi-daemon +17:05:05 0 915 136 snapd +17:05:05 1000 18508 136 chrome +17:05:05 1000 19653 136 atom +17:05:05 0 1173 136 pmdaroot +17:05:05 1000 18337 220 slack +17:05:05 999 1179 136 pmdasimple +17:05:05 1000 5702 136 unity-fallback- +17:05:05 1000 5964 136 zeitgeist-fts +17:05:05 1000 18495 136 chrome +17:05:05 1000 5703 136 polkit-gnome-au +17:05:05 0 5039 136 lightdm +17:05:05 1000 11289 136 gvfsd-network +17:05:05 1000 19614 136 atom +17:05:05 1000 5794 136 gvfs-afc-volume +17:05:05 1000 5620 136 indicator-messa +17:05:05 1000 23704 136 gedit +17:05:05 1000 5621 136 indicator-bluet +17:05:05 1000 18581 136 chrome +17:05:05 1000 5708 136 nm-applet +17:05:05 0 1186 136 wpa_supplicant +17:05:05 1000 5709 136 gnome-software +17:05:05 118 5072 136 rtkit-daemon +17:05:05 1000 22777 136 chrome +17:05:05 0 1175 136 pmdaxfs +17:05:05 1000 5597 136 ibus-engine-sim +17:05:05 1000 5600 136 syndaemon +17:05:05 1000 5604 136 pulseaudio +17:05:05 1000 19431 136 bash +17:05:05 1000 5608 136 dconf-service +17:05:05 1000 5628 136 indicator-datet +17:05:05 111 1002 136 avahi-daemon +17:05:05 0 1003 136 cups-browsed +17:05:05 1000 25541 140 pmlogger +17:05:05 1000 8967 136 unity-scope-loa +17:05:05 1000 19539 136 chrome +17:05:05 0 1012 136 irqbalance +17:05:05 0 1013 136 mdadm +17:05:05 1000 5623 136 indicator-power +17:05:05 1000 18424 136 chrome +17:05:05 1000 18425 136 nacl_helper +17:05:05 999 1176 136 pmdasample +17:05:05 1000 18583 136 chrome +Timestamp UID PID StkSize Command +17:05:06 1000 5632 136 indicator-keybo +17:05:06 0 1 136 systemd +17:05:06 1000 5635 136 indicator-print +17:05:06 0 3624 136 agetty +17:05:06 1000 5681 136 evolution-sourc +17:05:06 0 5129 136 upowerd +17:05:06 1000 5176 136 systemd +17:05:06 1000 5178 136 (sd-pam +17:05:06 1000 5183 136 gnome-keyring-d +17:05:06 1000 5185 136 upstart +17:05:06 1000 5701 136 nautilus +17:05:06 1000 5734 136 artha +17:05:06 1000 18263 220 slack +17:05:06 1000 18549 136 chrome +17:05:06 1000 5750 136 redshift +17:05:06 1000 18556 136 chrome +17:05:06 123 5761 136 geoclue +17:05:06 1000 5637 136 indicator-sessi +17:05:06 1000 11395 136 gvfsd-metadata +17:05:06 1000 5767 136 gvfs-udisks2-vo +17:05:06 1000 18568 136 chrome +17:05:06 1000 18569 136 chrome +17:05:06 1000 24343 136 atom +17:05:06 0 5774 136 udisksd +17:05:06 999 1171 136 pmcd +17:05:06 1000 1174 136 pmdaproc +17:05:06 1000 5272 136 upstart-udev-br +17:05:06 0 1177 136 pmdalinux +17:05:06 124 1178 148 postgres +17:05:06 0 1051 136 lightdm +17:05:06 1000 19424 136 gnome-terminal- +17:05:06 1000 5286 136 window-stack-br +17:05:06 1000 5800 136 evolution-calen +17:05:06 1000 18291 220 slack +17:05:06 1000 5274 136 dbus-daemon +17:05:06 1000 6329 136 update-notifier +17:05:06 1000 5818 136 gvfs-mtp-volume +17:05:06 0 5829 136 fwupd +17:05:06 1000 6855 136 deja-dup-monito +17:05:06 1000 11327 136 gvfsd-dnssd +17:05:06 999 4810 136 pmlogger +17:05:06 1000 18465 140 chrome +17:05:06 113 5154 136 colord +17:05:06 1000 18641 136 chrome +17:05:06 1000 5842 136 gvfsd-trash +17:05:06 1000 5633 136 indicator-sound +17:05:06 122 4821 160 unbound +17:05:06 1000 5335 136 ibus-daemon +17:05:06 1000 24868 136 python +17:05:06 1000 21722 136 chrome +17:05:06 1000 18420 136 cat +17:05:06 0 18062 136 dhclient +17:05:06 1000 5343 136 upstart-dbus-br +17:05:06 1000 6023 136 gconfd-2 +17:05:06 1000 5345 136 upstart-dbus-br +17:05:06 1000 5866 136 evolution-calen +17:05:06 1000 5671 136 indicator-appli +17:05:06 1000 5876 136 evolution-addre +17:05:06 1000 5878 136 evolution-calen +17:05:06 1000 5367 136 gpg-agent +17:05:06 0 1031 136 polkitd +17:05:06 1000 8954 136 unity-scope-hom +17:05:06 1000 18421 136 cat +17:05:06 65534 5273 136 dnsmasq +17:05:06 1000 5375 136 gvfsd +17:05:06 1000 25344 136 bash +17:05:06 1000 5380 136 gvfsd-fuse +17:05:06 1000 5895 136 evolution-addre +17:05:06 1000 8969 136 unity-files-dae +17:05:06 1000 8971 136 unity-music-dae +17:05:06 100 780 136 systemd-timesyn +17:05:06 1000 5389 136 ibus-dconf +17:05:06 1000 5395 136 upstart-file-br +17:05:06 1000 5396 136 ibus-ui-gtk3 +17:05:06 1000 18503 136 chrome +17:05:06 1000 5398 136 ibus-x11 +17:05:06 1000 7130 136 notify-osd +17:05:06 1000 5806 136 gvfs-gphoto2-vo +17:05:06 1000 5789 136 gvfs-goa-volume +17:05:06 1000 18224 136 slack +17:05:06 1000 5414 136 at-spi-bus-laun +17:05:06 1000 19642 136 atom +17:05:06 1000 5419 136 dbus-daemon +17:05:06 1000 18220 136 slack +17:05:06 1000 5421 136 at-spi2-registr +17:05:06 104 814 136 rsyslogd +17:05:06 106 815 136 dbus-daemon +17:05:06 1000 5946 136 zeitgeist-datah +17:05:06 1000 5441 136 unity-settings- +17:05:06 1000 5442 136 bamfdaemon +17:05:06 1000 5957 136 zeitgeist-daemo +17:05:06 1000 18253 136 slack +17:05:06 0 4937 136 apache2 +17:05:06 33 4940 136 apache2 +17:05:06 33 4941 136 apache2 +17:05:06 1000 5456 136 hud-service +17:05:06 1000 5459 136 gnome-session-b +17:05:06 1000 5461 136 unity-panel-ser +17:05:06 1000 5462 156 compiz +17:05:06 0 855 136 NetworkManager +17:05:06 124 1369 148 postgres +17:05:06 124 1370 148 postgres +17:05:06 124 1371 148 postgres +17:05:06 124 1372 148 postgres +17:05:06 124 1373 148 postgres +17:05:06 0 862 136 cron +17:05:06 1000 18428 136 chrome +17:05:06 0 866 136 ModemManager +17:05:06 1000 19618 136 atom +17:05:06 0 361 136 systemd-journal +17:05:06 1000 18459 140 chrome +17:05:06 0 372 136 lvmetad +17:05:06 0 886 136 acpid +17:05:06 0 888 136 systemd-logind +17:05:06 0 892 136 atd +17:05:06 0 895 136 accounts-daemon +17:05:06 0 897 136 thermald +17:05:06 0 386 136 systemd-udevd +17:05:06 1000 18411 136 chrome +17:05:06 1000 5953 136 sh +17:05:06 109 904 136 whoopsie +17:05:06 0 1087 272 Xorg +17:05:06 1000 18498 136 chrome +17:05:06 111 912 136 avahi-daemon +17:05:06 0 915 136 snapd +17:05:06 1000 18508 136 chrome +17:05:06 1000 19653 136 atom +17:05:06 0 1173 136 pmdaroot +17:05:06 1000 18337 220 slack +17:05:06 999 1179 136 pmdasimple +17:05:06 1000 5702 136 unity-fallback- +17:05:06 1000 5964 136 zeitgeist-fts +17:05:06 1000 18495 136 chrome +17:05:06 1000 5703 136 polkit-gnome-au +17:05:06 0 5039 136 lightdm +17:05:06 1000 11289 136 gvfsd-network +17:05:06 1000 19614 136 atom +17:05:06 1000 5794 136 gvfs-afc-volume +17:05:06 1000 5620 136 indicator-messa +17:05:06 1000 23704 136 gedit +17:05:06 1000 5621 136 indicator-bluet +17:05:06 1000 18581 136 chrome +17:05:06 1000 5708 136 nm-applet +17:05:06 0 1186 136 wpa_supplicant +17:05:06 1000 5709 136 gnome-software +17:05:06 118 5072 136 rtkit-daemon +17:05:06 1000 22777 136 chrome +17:05:06 0 1175 136 pmdaxfs +17:05:06 1000 5597 136 ibus-engine-sim +17:05:06 1000 5600 136 syndaemon +17:05:06 1000 5604 136 pulseaudio +17:05:06 1000 19431 136 bash +17:05:06 1000 5608 136 dconf-service +17:05:06 1000 5628 136 indicator-datet +17:05:06 111 1002 136 avahi-daemon +17:05:06 0 1003 136 cups-browsed +17:05:06 1000 25541 140 pmlogger +17:05:06 1000 8967 136 unity-scope-loa +17:05:06 1000 19539 136 chrome +17:05:06 0 1012 136 irqbalance +17:05:06 0 1013 136 mdadm +17:05:06 1000 5623 136 indicator-power +17:05:06 1000 18424 136 chrome +17:05:06 1000 18425 136 nacl_helper +17:05:06 999 1176 136 pmdasample +17:05:06 1000 18583 136 chrome diff --git a/qa/archives/pcp-pidstat.0 b/qa/archives/pcp-pidstat.0 new file mode 100644 index 000000000..f210cc92e Binary files /dev/null and b/qa/archives/pcp-pidstat.0 differ diff --git a/qa/archives/pcp-pidstat.index b/qa/archives/pcp-pidstat.index new file mode 100644 index 000000000..ab38859ed Binary files /dev/null and b/qa/archives/pcp-pidstat.index differ diff --git a/qa/archives/pcp-pidstat.meta b/qa/archives/pcp-pidstat.meta new file mode 100644 index 000000000..994a7f8e6 Binary files /dev/null and b/qa/archives/pcp-pidstat.meta differ diff --git a/qa/group b/qa/group index f143fff26..1c709ec0c 100644 --- a/qa/group +++ b/qa/group @@ -1260,6 +1260,7 @@ timezone 1069 pmrep python local timezone 1070 pmrep pmimport python perl local 1071 pmrep python local +1078 pcp python local 1079 pcp atop local 1080 valgrind pcp atop local 1081 python pcp local diff --git a/src/GNUmakefile b/src/GNUmakefile index 5ae0f9248..c6c047038 100644 --- a/src/GNUmakefile +++ b/src/GNUmakefile @@ -124,6 +124,11 @@ install :: default_pcp install_pcp install_pcp : $(SUBDIRS) $(SUBDIRS_MAKERULE) +check :: check_pcp + +check_pcp : pcp + $(SUBDIRS_MAKERULE) + $(LIBPCP_SUBDIR): $(INCLUDE_SUBDIR) $(PMNS_SUBDIR): $(LIBPCP_SUBDIR) $(LIBS_SUBDIRS): $(PMNS_SUBDIR) diff --git a/src/pcp/GNUmakefile b/src/pcp/GNUmakefile index e9920d539..abc09ba53 100644 --- a/src/pcp/GNUmakefile +++ b/src/pcp/GNUmakefile @@ -23,6 +23,7 @@ SUBDIRS = \ free \ iostat \ numastat \ + pidstat \ python \ shping \ summary \ @@ -41,5 +42,9 @@ install :: install_pcp install_pcp : $(SUBDIRS) $(INSTALL) -m 755 pcp.sh $(PCP_BIN_DIR)/pcp$(SHELLSUFFIX) $(SUBDIRS_MAKERULE) +check :: check_pcp + +check_pcp : pidstat + $(SUBDIRS_MAKERULE) include $(BUILDRULES) diff --git a/src/pcp/pidstat/.gitignore b/src/pcp/pidstat/.gitignore new file mode 100644 index 000000000..0d20b6487 --- /dev/null +++ b/src/pcp/pidstat/.gitignore @@ -0,0 +1 @@ +*.pyc diff --git a/src/pcp/pidstat/GNUmakefile b/src/pcp/pidstat/GNUmakefile new file mode 100644 index 000000000..ae0a25662 --- /dev/null +++ b/src/pcp/pidstat/GNUmakefile @@ -0,0 +1,40 @@ +# +# Copyright (c) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +TOPDIR = ../../.. +include $(TOPDIR)/src/include/builddefs + +TARGET = pcp-pidstat +MAN_SECTION = 1 +MAN_PAGES = $(TARGET).$(MAN_SECTION) +MAN_DEST = $(PCP_MAN_DIR)/man$(MAN_SECTION) + +default: $(TARGET).py $(MAN_PAGES) + +include $(BUILDRULES) + +install: default +ifeq "$(HAVE_PYTHON)" "true" + $(INSTALL) -m 755 $(TARGET).py $(PCP_BINADM_DIR)/$(TARGET) + @$(INSTALL_MAN) +endif + +default_pcp : default + +install_pcp : install + +check :: check_pcp + +check_pcp: + python -m unittest discover -s test -p '*_test.py' diff --git a/src/pcp/pidstat/pcp-pidstat.1 b/src/pcp/pidstat/pcp-pidstat.1 new file mode 100644 index 000000000..b993a7df3 --- /dev/null +++ b/src/pcp/pidstat/pcp-pidstat.1 @@ -0,0 +1,148 @@ +.TH PCP-PIDSTAT 1 "PCP" "Performance Co-Pilot" +.SH NAME +\f3 pcp-pidstat\f1 \- Report statistics for Linux tasks. +.SH SYNOPSIS +\f3pcp\f1 \f3pidstat\f1 [\f3\-s\f1 N] [\f3\-t\f1 DELTA] [\f3\-I \f1] [\f3\-a\f1 FILE] [\f3\-G\f1 NAME] [\f3\-U\f1[USERNAME]] [\f3\-p\f1 PID1,PID2..] [\f3\-R\f1/\f3\-r/\f3\-k\f1] [\f3\-V\f1] [\f3\-?\f1] +.SH DESCRIPTION +.B pcp-pidstat +command is used for monitoring individual tasks currently being managed by the Linux kernel. Using various options it helps user to see useful information related with the processes. This information can include percentage CPU, memory and stack usages, scheduling and priority information. +.BR pcp-pidstat +fetches the data to be analysed from PMCD unless provided \-a option. (See below) + +.SH OPTIONS +Output control options: +.TP +.BR \-s \ N ", " \fB\-\-samples =\fIN\fR +Set the number of samples to be displayed. +Default is continous. + +.TP +.BR \-t \ DELTA ", " \fB\-\-interval =\fIDELTA\fR +Set the interval between two samples. +Default is one second. + +.PP +General Options: + +.TP +.BR \-I \fR +In an SMP environment, indicates that tasks CPU usage should be divided by the total number of processors. + +.TP +.BR \-a \ FILE ", " \fB\-\-archive =\fIFILE\fR +Causes pcp\-pidstat to use the specified archive than connecting to PMCD. The argument to -a is a comma-separated +list of names, each of which may be the base name of an archive or the name of a directory containing one or more archives. Archives can be created using +.BR pmlogger (1)\. + +.TP +.BR \-R \fR +Report realtime priority and scheduling policy information. The following values may be displayed: + +UID + The real user identification number of the task being monitored. + +USER + The name of the real user owning the task being monitored. + +PID + The identification number of the task being monitored. + +prio + The realtime priority of the task being monitored. + +policy + The scheduling policy of the task being monitored. + +Command + The command name of the task. + +.TP +.BR \-r \fR +Report page faults and memory utilization. The following values may be displayed: + +UID + The real user identification number of the task being monitored. + +USER + The name of the real user owning the task being monitored. + +PID + The identification number of the task being monitored. + +minflt/s + Total number of minor faults the task has made per second, those which have not required loading a memory page from disk. + +majflt/s + Total number of major faults the task has made per second, those which have required loading a memory page from disk. + +VSZ + Virtual Size: The virtual memory usage of entire task in kilobytes. + +RSS + Resident Set Size: The non-swapped physical memory used by the task in kilobytes. + +%MEM + The tasks's currently used share of available physical memory. + +Command + The command name of the task. + +.TP +.BR \-k \fR +Report stack utilization. The following values may be displayed: + +UID + The real user identification number of the task being monitored. + +USER + The name of the real user owning the task being monitored. + +PID + The identification number of the task being monitored. + +StkSize + The amount of memory in kilobytes reserved for the task as stack, but not necessarily used. + +StkRef + The amount of memory in kilobytes used as stack, referenced by the task. + +Command + The command name of the task. + +.TP +.BR \-V \fR +Display version and exit + +.TP +.BR \-? " , " \fB\-\-help\fR +Display help and exit + +.PP +Ouput Filter Options + +.TP +.BR \-G \ NAME ", " \fB\-\-process-name =\fINAME\fR +Display only processes whose command name includes the string \fINAME\fR. This string can be a regular expression. + +.TP +.BR \-U\fI[USERNAME] ", " \fB\-\-user\-name =\fI[USERNAME]\fR +Display the real user name of the tasks being monitored instead of the UID. If \fIusername\fR is specified, then only tasks belonging to the specified user are displayed. + +.TP +.BR \-p \ \fIPID1,PID2 .. " , " \fB\-\-pid-list =\fIPID1,PID2 ..\fR +Display only processes whose PID belongs to the given Pid List. + +.SH NOTES +.B pcp-pidstat +is inspired by the +.BR pidstat (1) +command and aims to be command line and output compatible with it. + +.PP +.SH "SEE ALSO" +.BR pcp (1), +.BR pidstat(1), +.BR PCPIntro (1), +.BR pmParseInterval (3) +and +.BR environ (7). diff --git a/src/pcp/pidstat/pcp-pidstat.py b/src/pcp/pidstat/pcp-pidstat.py new file mode 100644 index 000000000..0aa0062b1 --- /dev/null +++ b/src/pcp/pidstat/pcp-pidstat.py @@ -0,0 +1,574 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import sys +import re +import os +from pcp import pmcc +from pcp import pmapi + +# Metric list to be fetched +PIDSTAT_METRICS = ['pmda.uname','hinv.ncpu','proc.psinfo.pid','proc.nprocs','proc.psinfo.utime', + 'proc.psinfo.stime','proc.psinfo.guest_time','proc.psinfo.processor', + 'proc.id.uid','proc.psinfo.cmd','kernel.all.cpu.user','kernel.all.cpu.vuser', + 'kernel.all.cpu.sys','kernel.all.cpu.guest','kernel.all.cpu.nice','kernel.all.cpu.idle', + 'proc.id.uid_nm', 'proc.psinfo.rt_priority', 'proc.psinfo.policy', 'proc.psinfo.minflt', + 'proc.psinfo.maj_flt', 'proc.psinfo.vsize', 'proc.psinfo.rss', 'mem.physmem', + 'proc.memory.vmstack'] +SCHED_POLICY = ['NORMAL','FIFO','RR','BATCH','','IDLE','DEADLINE'] + +class StdoutPrinter: + def Print(self, args): + print(args) + +''' After fetching non singular metric values, create a mapping of instance id +to instance value rather than instance name to instance value. +The reason is, in PCP, instance names require a separate pmGetIndom() request +and some of the names may not be available.''' +class ReportingMetricRepository: + def __init__(self,group): + self.group = group + self.current_cached_values = {} + self.previous_cached_values = {} + def __fetch_current_values(self,metric,instance): + if instance: + return dict(map(lambda x: (x[0].inst, x[2]), self.group[metric].netValues)) + else: + return self.group[metric].netValues[0][2] + + def __fetch_previous_values(self,metric,instance): + if instance: + return dict(map(lambda x: (x[0].inst, x[2]), self.group[metric].netPrevValues)) + else: + return self.group[metric].netPrevValues[0][2] + + def current_value(self, metric, instance): + if not metric in self.group: + return None + if instance: + if self.current_cached_values.get(metric, None) is None: + lst = self.__fetch_current_values(metric,instance) + self.current_cached_values[metric] = lst + + return self.current_cached_values[metric].get(instance,None) + else: + if self.current_cached_values.get(metric, None) is None: + self.current_cached_values[metric] = self.__fetch_current_values(metric,instance) + return self.current_cached_values.get(metric, None) + + def previous_value(self, metric, instance): + if not metric in self.group: + return None + if instance: + if self.previous_cached_values.get(metric, None) is None: + lst = self.__fetch_previous_values(metric,instance) + self.previous_cached_values[metric] = lst + + return self.previous_cached_values[metric].get(instance,None) + else: + if self.previous_cached_values.get(metric, None) is None: + self.previous_cached_values[metric] = self.__fetch_previous_values(metric,instance) + return self.previous_cached_values.get(metric, None) + + def current_values(self, metric_name): + if self.group.get(metric_name, None) is None: + return None + if self.current_cached_values.get(metric_name, None) is None: + self.current_cached_values[metric_name] = self.__fetch_current_values(metric_name,True) + return self.current_cached_values.get(metric_name, None) + + def previous_values(self, metric_name): + if self.group.get(metric_name, None) is None: + return None + if self.previous_cached_values.get(metric_name, None) is None: + self.previous_cached_values[metric_name] = self.__fetch_previous_values(metric_name,True) + return self.previous_cached_values.get(metric_name, None) + +class ProcessCpuUsage: + def __init__(self, instance, delta_time, metrics_repository): + self.instance = instance + self.__delta_time = delta_time + self.__metric_repository = metrics_repository + + def user_percent(self): + c_usertime = self.__metric_repository.current_value('proc.psinfo.utime', self.instance) + p_usertime = self.__metric_repository.previous_value('proc.psinfo.utime', self.instance) + if c_usertime is not None and p_usertime is not None: + percent_of_time = 100 * float(c_usertime - p_usertime) / float(1000 * self.__delta_time) + return float("%.2f"%percent_of_time) + else: + return None + + def guest_percent(self): + c_guesttime = self.__metric_repository.current_value('proc.psinfo.guest_time', self.instance) + p_guesttime = self.__metric_repository.previous_value('proc.psinfo.guest_time', self.instance) + if c_guesttime is not None and p_guesttime is not None: + percent_of_time = 100 * float(c_guesttime - p_guesttime) / float(1000 * self.__delta_time) + return float("%.2f"%percent_of_time) + else: + return None + + def system_percent(self): + c_systemtime = self.__metric_repository.current_value('proc.psinfo.stime', self.instance) + p_systemtime = self.__metric_repository.previous_value('proc.psinfo.stime', self.instance) + if c_systemtime is not None and p_systemtime is not None: + percent_of_time = 100 * float(c_systemtime - p_systemtime) / float(1000 * self.__delta_time) + return float("%.2f"%percent_of_time) + else: + return None + + def total_percent(self): + if self.user_percent() is not None and self.guest_percent() is not None and self.system_percent() is not None: + return self.user_percent()+self.guest_percent()+self.system_percent() + else: + return None + + def pid(self): + return self.__metric_repository.current_value('proc.psinfo.pid', self.instance) + + def process_name(self): + return self.__metric_repository.current_value('proc.psinfo.cmd', self.instance) + + def cpu_number(self): + return self.__metric_repository.current_value('proc.psinfo.processor', self.instance) + + def user_id(self): + return self.__metric_repository.current_value('proc.id.uid', self.instance) + + def user_name(self): + return self.__metric_repository.current_value('proc.id.uid_nm', self.instance) + +class CpuUsage: + def __init__(self, metric_repository): + self.__metric_repository = metric_repository + + def get_processes(self, delta_time): + return map(lambda pid: (ProcessCpuUsage(pid,delta_time,self.__metric_repository)), self.__pids()) + + def __pids(self): + pid_dict = self.__metric_repository.current_values('proc.psinfo.pid') + return sorted(pid_dict.values()) + + +class ProcessPriority: + def __init__(self, instance, metrics_repository): + self.instance = instance + self.__metric_repository = metrics_repository + + def pid(self): + return self.__metric_repository.current_value('proc.psinfo.pid', self.instance) + + def user_id(self): + return self.__metric_repository.current_value('proc.id.uid', self.instance) + + def process_name(self): + return self.__metric_repository.current_value('proc.psinfo.cmd', self.instance) + + def priority(self): + return self.__metric_repository.current_value('proc.psinfo.rt_priority', self.instance) + + def policy_int(self): + return self.__metric_repository.current_value('proc.psinfo.policy', self.instance) + + def policy(self): + policy_int = self.__metric_repository.current_value('proc.psinfo.policy', self.instance) + return SCHED_POLICY[policy_int] + + def user_name(self): + return self.__metric_repository.current_value('proc.id.uid_nm', self.instance) + +class CpuProcessPriorities: + def __init__(self, metric_repository): + self.__metric_repository = metric_repository + def get_processes(self): + return map((lambda pid: (ProcessPriority(pid,self.__metric_repository))), self.__pids()) + + def __pids(self): + pid_dict = self.__metric_repository.current_values('proc.psinfo.pid') + return sorted(pid_dict.values()) + +class ProcessMemoryUtil: + def __init__(self, instance, delta_time, metric_repository): + self.instance = instance + self.__metric_repository = metric_repository + self.delta_time = delta_time + + def pid(self): + return self.__metric_repository.current_value('proc.psinfo.pid', self.instance) + + def user_id(self): + return self.__metric_repository.current_value('proc.id.uid', self.instance) + + def process_name(self): + return self.__metric_repository.current_value('proc.psinfo.cmd', self.instance) + + def minflt(self): + c_min_flt = self.__metric_repository.current_value('proc.psinfo.minflt', self.instance) + p_min_flt = self.__metric_repository.previous_value('proc.psinfo.minflt', self.instance) + if c_min_flt is not None and p_min_flt is not None: + return float("%.2f" % ((c_min_flt - p_min_flt)/self.delta_time)) + else: + return None + + def majflt(self): + c_maj_flt = self.__metric_repository.current_value('proc.psinfo.maj_flt', self.instance) + p_maj_flt = self.__metric_repository.previous_value('proc.psinfo.maj_flt', self.instance) + if c_maj_flt is not None and p_maj_flt is not None: + return float("%.2f" % ((c_maj_flt - p_maj_flt)/self.delta_time)) + else: + return None + + def vsize(self): + return self.__metric_repository.current_value('proc.psinfo.vsize', self.instance) + + def rss(self): + return self.__metric_repository.current_value('proc.psinfo.rss', self.instance) + + def mem(self): + total_mem = self.__metric_repository.current_value('mem.physmem', None) + rss = self.__metric_repository.current_value('proc.psinfo.rss', self.instance) + if total_mem is not None and rss is not None: + return float("%.2f" % (100*float(rss)/total_mem)) + else: + return None + + def user_name(self): + return self.__metric_repository.current_value('proc.id.uid_nm', self.instance) + +class CpuProcessMemoryUtil: + def __init__(self, metric_repository): + self.__metric_repository = metric_repository + + def get_processes(self, delta_time): + return map((lambda pid: (ProcessMemoryUtil(pid, delta_time, self.__metric_repository))), self.__pids()) + + def __pids(self): + pid_dict = self.__metric_repository.current_values('proc.psinfo.pid') + return sorted(pid_dict.values()) + +class ProcessStackUtil: + def __init__(self, instance, metric_repository): + self.instance = instance + self.__metric_repository = metric_repository + + def pid(self): + return self.__metric_repository.current_value('proc.psinfo.pid', self.instance) + + def user_id(self): + return self.__metric_repository.current_value('proc.id.uid', self.instance) + + def process_name(self): + return self.__metric_repository.current_value('proc.psinfo.cmd', self.instance) + + def stack_size(self): + return self.__metric_repository.current_value('proc.memory.vmstack', self.instance) + + def user_name(self): + return self.__metric_repository.current_value('proc.id.uid_nm', self.instance) + + +class CpuProcessStackUtil: + def __init__(self, metric_repository): + self.__metric_repository = metric_repository + + def get_processes(self): + return map((lambda pid: (ProcessStackUtil(pid, self.__metric_repository))), self.__pids()) + + def __pids(self): + pid_dict = self.__metric_repository.current_values('proc.psinfo.pid') + return sorted(pid_dict.values()) + +class ProcessFilter: + def __init__(self,options): + self.options = options + + def filter_processes(self, processes): + return filter(lambda p: self.__predicate(p), processes) + + def __predicate(self, process): + return self.__matches_process_username(process) and self.__matches_process_pid(process) and self.__matches_process_name(process) and self.__matches_process_priority(process) and self.__matches_process_memory_util(process) and self.__matches_process_stack_size(process) + + def __matches_process_username(self, process): + if self.options.filtered_process_user is not None: + return self.options.filtered_process_user == process.user_name() + return True + + def __matches_process_pid(self, process): + if self.options.pid_filter is not None: + pid = process.pid() + if pid in self.options.pid_list: + return True + else: + return False + return True + + def __matches_process_name(self, process): + if self.options.process_name is not None: + return re.search(self.options.process_name, process.process_name()) + return True + + def __matches_process_priority(self, process): + if self.options.show_process_priority: + return process.priority() > 0 + return True + + def __matches_process_memory_util(self, process): + if self.options.show_process_memory_util: + return process.vsize() > 0 + return True + + def __matches_process_stack_size(self, process): + if self.options.show_process_stack_util: + return process.stack_size() > 0 + return True + +class CpuUsageReporter: + def __init__(self, cpu_usage, process_filter, delta_time, printer, pidstat_options): + self.cpu_usage = cpu_usage + self.process_filter = process_filter + self.printer = printer + self.delta_time = delta_time + self.pidstat_options = pidstat_options + + def print_report(self, timestamp, ncpu): + if self.pidstat_options.show_process_user: + self.printer ("Timestamp\tUName\tPID\tusr\tsystem\tguest\t%CPU\tCPU\tCommand") + else: + self.printer ("Timestamp\tUID\tPID\tusr\tsystem\tguest\t%CPU\tCPU\tCommand") + processes = self.process_filter.filter_processes(self.cpu_usage.get_processes(self.delta_time)) + for process in processes: + user_percent = process.user_percent() + guest_percent = process.guest_percent() + system_percent = process.system_percent() + total_percent = process.total_percent() + + if self.pidstat_options.per_processor_usage and total_percent is not None: + total_percent = float("%.2f"%(total_percent/ncpu)) + + if self.pidstat_options.show_process_user: + self.printer("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_name(),process.pid(),user_percent,system_percent,guest_percent,total_percent,process.cpu_number(),process.process_name())) + else: + self.printer("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_id(),process.pid(),user_percent,system_percent,guest_percent,total_percent,process.cpu_number(),process.process_name())) + +class CpuProcessPrioritiesReporter: + def __init__(self, process_priority, process_filter, printer, pidstat_options): + self.process_priority = process_priority + self.process_filter = process_filter + self.printer = printer + self.pidstat_options = pidstat_options + + def print_report(self, timestamp): + self.printer ("Timestamp\tUID\tPID\tprio\tpolicy\tCommand") + processes = self.process_filter.filter_processes(self.process_priority.get_processes()) + for process in processes: + if self.pidstat_options.show_process_user: + self.printer("%s\t%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_name(),process.pid(),process.priority(),process.policy(),process.process_name())) + else: + self.printer("%s\t%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_id(),process.pid(),process.priority(),process.policy(),process.process_name())) + +class CpuProcessMemoryUtilReporter: + def __init__(self, process_memory_util, process_filter, delta_time, printer, pidstat_options): + self.process_memory_util = process_memory_util + self.process_filter = process_filter + self.printer = printer + self.delta_time = delta_time + self.pidstat_options = pidstat_options + + def print_report(self, timestamp): + self.printer ("Timestamp\tUID\tPID\tMinFlt/s\tMajFlt/s\tVSize\tRSS\t%Mem\tCommand") + processes = self.process_filter.filter_processes(self.process_memory_util.get_processes(self.delta_time)) + for process in processes: + maj_flt = process.majflt() + min_flt = process.minflt() + if self.pidstat_options.show_process_user: + self.printer("%s\t%s\t%s\t%s\t\t%s\t\t%s\t%s\t%s\t%s" % (timestamp,process.user_name(),process.pid(),min_flt,maj_flt,process.vsize(),process.rss(),process.mem(),process.process_name())) + else: + self.printer("%s\t%s\t%s\t%s\t\t%s\t\t%s\t%s\t%s\t%s" % (timestamp,process.user_id(),process.pid(),min_flt,maj_flt,process.vsize(),process.rss(),process.mem(),process.process_name())) + +class CpuProcessStackUtilReporter: + def __init__(self, process_stack_util, process_filter, printer, pidstat_options): + self.process_stack_util = process_stack_util + self.process_filter = process_filter + self.printer = printer + self.pidstat_options = pidstat_options + + def print_report(self, timestamp): + self.printer ("Timestamp\tUID\tPID\tStkSize\tCommand") + processes = self.process_filter.filter_processes(self.process_stack_util.get_processes()) + for process in processes: + if self.pidstat_options.show_process_user: + self.printer("%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_name(),process.pid(),process.stack_size(),process.process_name())) + else: + self.printer("%s\t%s\t%s\t%s\t%s" % (timestamp,process.user_id(),process.pid(),process.stack_size(),process.process_name())) + +class NoneHandlingPrinterDecorator: + def __init__(self, printer): + self.printer = printer + + def Print(self, args): + new_args = args.replace('None','?') + self.printer.Print(new_args) + + +class PidstatOptions(pmapi.pmOptions): + process_name = None + show_process_memory_util = False + show_process_priority = False + show_process_stack_util = False + per_processor_usage = False + show_process_user = False + filtered_process_user = None + pid_filter = None + pid_list = [] + + def checkOptions(self): + if (self.show_process_priority and self.show_process_memory_util): + print("Error: -R is incompatible with -r") + return False + elif (self.show_process_priority and self.show_process_stack_util): + print("Error: -R is incompatible with -k") + return False + elif(self.show_process_memory_util and self.show_process_stack_util): + print("Error: -r is incompatible with -k") + return False + else: + return True + + def extraOptions(self, opt,optarg, index): + if opt == 'k': + PidstatOptions.show_process_stack_util = True + elif opt == 'r': + PidstatOptions.show_process_memory_util = True + elif opt == 'R': + PidstatOptions.show_process_priority = True + elif opt == 'G': + PidstatOptions.process_name = optarg + elif opt == 'I': + PidstatOptions.per_processor_usage = True + elif opt == 'U': + PidstatOptions.show_process_user = True + PidstatOptions.filtered_process_user = optarg + elif opt == 'P': + if optarg == "ALL" or optarg == "SELF": + PidstatOptions.pid_filter = optarg + else: + PidstatOptions.pid_filter = "ALL" + try: + PidstatOptions.pid_list = map(lambda x:int(x),optarg.split(',')) + except ValueError as e: + print ("Invalid Process Id List: use comma separated pids without whitespaces") + sys.exit(1) + + def __init__(self): + pmapi.pmOptions.__init__(self,"a:s:t:G:IU::P:RrkV?") + self.pmSetOptionCallback(self.extraOptions) + self.pmSetLongOptionHeader("General options") + self.pmSetLongOptionArchive() + self.pmSetLongOptionSamples() + self.pmSetLongOptionInterval() + self.pmSetLongOption("process-name",1,"G","NAME","Select process names using regular expression.") + self.pmSetLongOption("",0,"I","","In SMP environment, show CPU usage per processor.") + self.pmSetLongOption("user-name",2,"U","[USERNAME]","Show real user name of the tasks and optionally filter by user name.") + self.pmSetLongOption("pid-list",1,"P","PID1,PID2.. ","Show stats for specified pids, Use SELF for current process and ALL for all processes.") + self.pmSetLongOption("",0,"R","","Report realtime priority and scheduling policy information.") + self.pmSetLongOption("",0,"r","","Report page faults and memory utilization.") + self.pmSetLongOption("",0,"k","","Report stack utilization.") + self.pmSetLongOptionVersion() + self.pmSetLongOptionHelp() + + +class PidstatReport(pmcc.MetricGroupPrinter): + Machine_info_count = 0 + + def timeStampDelta(self, group): + s = group.timestamp.tv_sec - group.prevTimestamp.tv_sec + u = group.timestamp.tv_usec - group.prevTimestamp.tv_usec + return (s + u / 1000000.0) + + def print_machine_info(self,group): + machine_name = group['pmda.uname'].netValues[0][2] + no_cpu =self.get_ncpu(group) + print("%s\t(%s CPU)" % (machine_name,no_cpu)) + + def get_ncpu(self,group): + return group['hinv.ncpu'].netValues[0][2] + + def report(self,manager): + group = manager['pidstat'] + if group['proc.psinfo.utime'].netPrevValues == None: + # need two fetches to report rate converted counter metrics + return + + if not self.Machine_info_count: + self.print_machine_info(group) + self.Machine_info_count = 1 + + timestamp = group.contextCache.pmCtime(int(group.timestamp)).rstrip().split() + interval_in_seconds = self.timeStampDelta(group) + ncpu = self.get_ncpu(group) + + metric_repository = ReportingMetricRepository(group) + + if(PidstatOptions.show_process_stack_util): + process_stack_util = CpuProcessStackUtil(metric_repository) + process_filter = ProcessFilter(PidstatOptions) + stdout = StdoutPrinter() + printdecorator = NoneHandlingPrinterDecorator(stdout) + report = CpuProcessStackUtilReporter(process_stack_util, process_filter, printdecorator.Print, PidstatOptions) + + report.print_report(timestamp[3]) + elif(PidstatOptions.show_process_memory_util): + process_memory_util = CpuProcessMemoryUtil(metric_repository) + process_filter = ProcessFilter(PidstatOptions) + stdout = StdoutPrinter() + printdecorator = NoneHandlingPrinterDecorator(stdout) + report = CpuProcessMemoryUtilReporter(process_memory_util, process_filter, interval_in_seconds, printdecorator.Print, PidstatOptions) + + report.print_report(timestamp[3]) + elif(PidstatOptions.show_process_priority): + process_priority = CpuProcessPriorities(metric_repository) + process_filter = ProcessFilter(PidstatOptions) + stdout = StdoutPrinter() + printdecorator = NoneHandlingPrinterDecorator(stdout) + report = CpuProcessPrioritiesReporter(process_priority, process_filter, printdecorator.Print, PidstatOptions) + + report.print_report(timestamp[3]) + else: + cpu_usage = CpuUsage(metric_repository) + process_filter = ProcessFilter(PidstatOptions) + stdout = StdoutPrinter() + printdecorator = NoneHandlingPrinterDecorator(stdout) + report = CpuUsageReporter(cpu_usage, process_filter, interval_in_seconds, printdecorator.Print, PidstatOptions) + + report.print_report(timestamp[3],ncpu) + + +if __name__ == "__main__": + try: + opts = PidstatOptions() + manager = pmcc.MetricGroupManager.builder(opts,sys.argv) + if not opts.checkOptions(): + raise pmapi.pmUsageErr + manager['pidstat'] = PIDSTAT_METRICS + manager.printer = PidstatReport() + sts = manager.run() + sys.exit(sts) + except pmapi.pmErr as pmerror: + sys.stderr.write('%s: %s\n' % (pmerror.progname,pmerror.message())) + except pmapi.pmUsageErr as usage: + usage.message() + sys.exit(1) + except KeyboardInterrupt: + pass diff --git a/src/pcp/pidstat/test/cpu_process_memory_util_test.py b/src/pcp/pidstat/test/cpu_process_memory_util_test.py new file mode 100644 index 000000000..244a682a8 --- /dev/null +++ b/src/pcp/pidstat/test/cpu_process_memory_util_test.py @@ -0,0 +1,38 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import mock +import unittest +from pcp_pidstat import CpuProcessMemoryUtil + + +class TestCpuProcessMemoryUtil(unittest.TestCase): + + def current_values_side_effect(self, metric): + if metric == 'proc.psinfo.pid': + return {1: 1, 2: 2, 5: 5, 10: 10} + + def test_get_processes(self): + metric_repository = mock.Mock() + cpu_process_memory_util = CpuProcessMemoryUtil(metric_repository) + metric_repository.current_values = mock.Mock(side_effect=self.current_values_side_effect) + + processes_list = cpu_process_memory_util.get_processes(1.34) + + self.assertEquals(len(processes_list),4) + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/cpu_process_priorities_test.py b/src/pcp/pidstat/test/cpu_process_priorities_test.py new file mode 100644 index 000000000..01bda7f2b --- /dev/null +++ b/src/pcp/pidstat/test/cpu_process_priorities_test.py @@ -0,0 +1,38 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import unittest +from mock import Mock +import mock +from pcp_pidstat import CpuProcessPriorities + + +class TestCpuProcessPriorities(unittest.TestCase): + + def current_values_side_effect(self, metric): + if metric == 'proc.psinfo.pid': + return {1: 1, 2: 2, 5: 5, 10: 10} + + def test_get_processes(self): + metric_repository = mock.Mock() + cpu_process_priorities = CpuProcessPriorities(metric_repository) + metric_repository.current_values = mock.Mock(side_effect=self.current_values_side_effect) + + processes_list = cpu_process_priorities.get_processes() + + self.assertEquals(len(processes_list),4) + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/cpu_process_stack_util_test.py b/src/pcp/pidstat/test/cpu_process_stack_util_test.py new file mode 100644 index 000000000..a2f119e1b --- /dev/null +++ b/src/pcp/pidstat/test/cpu_process_stack_util_test.py @@ -0,0 +1,38 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import unittest +from mock import Mock +import mock +from pcp_pidstat import CpuProcessStackUtil + + +class TestCpuProcessStackUtil(unittest.TestCase): + + def current_values_side_effect(self, metric): + if metric == 'proc.psinfo.pid': + return {1: 1, 2: 2, 5: 5, 10: 10} + + def test_get_processes(self): + metric_repository = mock.Mock() + cpu_process_stack_util = CpuProcessStackUtil(metric_repository) + metric_repository.current_values = mock.Mock(side_effect=self.current_values_side_effect) + + processes_list = cpu_process_stack_util.get_processes() + + self.assertEquals(len(processes_list),4) + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/cpu_usage_reporter_test.py b/src/pcp/pidstat/test/cpu_usage_reporter_test.py new file mode 100644 index 000000000..02b9217c3 --- /dev/null +++ b/src/pcp/pidstat/test/cpu_usage_reporter_test.py @@ -0,0 +1,122 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import unittest +from pcp_pidstat import CpuUsageReporter + +class TestCpuUsageReporter(unittest.TestCase): + def setUp(self): + self.options = Mock( + per_processor_usage = False, + show_process_user = None) + + process_1 = Mock(pid = Mock(return_value = 1), + process_name = Mock(return_value = "process_1"), + user_name = Mock(return_value='pcp'), + user_id = Mock(return_value=1000), + user_percent = Mock(return_value=2.43), + system_percent = Mock(return_value=1.24), + guest_percent = Mock(return_value=0.00), + total_percent = Mock(return_value=3.67), + cpu_number = Mock(return_value=1),) + + self.processes = [process_1] + + def test_print_report_without_filtering(self): + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\t2.43\t1.24\t0.0\t3.67\t1\tprocess_1") + + def test_print_report_with_user_name(self): + self.options.show_process_user = 'pcp' + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\tpcp\t1\t2.43\t1.24\t0.0\t3.67\t1\tprocess_1") + + def test_print_report_with_per_processor_usage(self): + self.options.per_processor_usage = True + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\t2.43\t1.24\t0.0\t0.92\t1\tprocess_1") + + def test_print_report_with_user_percent_none(self): + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].user_percent = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\tNone\t1.24\t0.0\t3.67\t1\tprocess_1") + + def test_print_report_with_guest_percent_none(self): + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].guest_percent = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\t2.43\t1.24\tNone\t3.67\t1\tprocess_1") + + def test_print_report_with_system_percent_none(self): + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].system_percent = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\t2.43\tNone\t0.0\t3.67\t1\tprocess_1") + + def test_print_report_with_total_percent_none(self): + cpu_usage = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].total_percent = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuUsageReporter(cpu_usage, process_filter, 1, printer, self.options) + + reporter.print_report(123, 4) + + printer.assert_called_with("123\t1000\t1\t2.43\t1.24\t0.0\tNone\t1\tprocess_1") + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/cpu_usage_test.py b/src/pcp/pidstat/test/cpu_usage_test.py new file mode 100644 index 000000000..b485f8092 --- /dev/null +++ b/src/pcp/pidstat/test/cpu_usage_test.py @@ -0,0 +1,38 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import unittest +from mock import Mock +import mock +from pcp_pidstat import CpuUsage + + +class TestUserCpuUsage(unittest.TestCase): + + def current_values_side_effect(self, metric): + if metric == 'proc.psinfo.pid': + return {1: 1, 2: 2, 5: 5, 10: 10} + + def test_get_processes(self): + metric_repository = mock.Mock() + cpu_usage = CpuUsage(metric_repository) + metric_repository.current_values = mock.Mock(side_effect=self.current_values_side_effect) + + processes_list = cpu_usage.get_processes(1.34) + + self.assertEquals(len(processes_list),4) + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/metric_repository_test.py b/src/pcp/pidstat/test/metric_repository_test.py new file mode 100644 index 000000000..c567043f7 --- /dev/null +++ b/src/pcp/pidstat/test/metric_repository_test.py @@ -0,0 +1,151 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import unittest +from mock import Mock,MagicMock +import mock +from pcp_pidstat import ReportingMetricRepository + +class ReportingMetricRepositoryTest(unittest.TestCase): + + def test_returns_the_current_value_for_a_metric_that_has_instances(self): + utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.current_value('proc.psinfo.utime',111) + + self.assertEquals(c_utime,12345) + + def test_returns_the_current_value_for_a_metric_that_has_no_instances(self): + utime_mock = Mock( + netValues = [('NULL',None,12345)], + netPrevValues = [('NULL',None,12354)] + ) + group = {'kernel.all.cpu.user':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.current_value('kernel.all.cpu.user',None) + + self.assertEquals(c_utime,12345) + + def test_returns_none_if_a_metric_does_not_exist_for_an_instance(self): + utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.current_value('proc.psinfo.time',111) + + self.assertIsNone(c_utime) + + def test_returns_none_if_a_metric_does_not_exist_for_a_metric_that_has_no_instance(self): + utime_mock = Mock( + netValues = [('NULL',None,12345)], + netPrevValues = [('NULL',None,12354)] + ) + group = {'kernel.all.cpu.user':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.current_value('kernel.all.cpu.guest',None) + + self.assertIsNone(c_utime) + + def test_returns_the_previous_value_for_a_metric_that_has_instances(self): + utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.previous_value('proc.psinfo.utime',111) + + self.assertEquals(c_utime,12354) + + def test_returns_the_previous_value_for_a_metric_that_has_no_instances(self): + utime_mock = Mock( + netValues = [('NULL',None,12345)], + netPrevValues = [('NULL',None,12354)] + ) + group = {'kernel.all.cpu.user':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.previous_value('kernel.all.cpu.user',None) + + self.assertEquals(c_utime,12354) + + def test_returns_none_if_a_metric_for_previous_value_does_not_exist_for_an_instance(self): + utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.previous_value('proc.psinfo.time',111) + + self.assertIsNone(c_utime) + + def test_returns_none_if_a_metric_for_previous_value_does_not_exist_for_a_metric_that_has_no_instance(self): + utime_mock = Mock( + netValues = [('NULL',None,12345)], + netPrevValues = [('NULL',None,12354)] + ) + group = {'kernel.all.cpu.user':utime_mock} + m_repo = ReportingMetricRepository(group) + + c_utime = m_repo.previous_value('kernel.all.cpu.guest',None) + + self.assertIsNone(c_utime) + + def test_checks_if_metric_values_are_fetched_only_once_if_not_available(self): + proc_utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':proc_utime_mock} + m_repo = ReportingMetricRepository(group) + fetch_call_count = 0 + + with mock.patch.object(m_repo,'_ReportingMetricRepository__fetch_current_values',return_value={111:12345}) as method: + c_ptime = m_repo.current_value('proc.psinfo.utime',111) + fetch_call_count = method.call_count + + self.assertEquals(fetch_call_count,1) + + def test_checks_if_metric_values_are_not_fetched_if_already_available(self): + proc_utime_mock = Mock( + netValues = [(Mock(inst=111),'dummyprocess',12345)], + netPrevValues = [(Mock(inst=111),'dummyprocess',12354)] + ) + group = {'proc.psinfo.utime':proc_utime_mock} + m_repo = ReportingMetricRepository(group) + m_repo.current_cached_values = {'proc.psinfo.utime':{111:12354}} + fetch_call_count = 0 + + with mock.patch.object(m_repo,'_ReportingMetricRepository__fetch_current_values',return_value={111:12345}) as method: + c_ptime = m_repo.current_value('proc.psinfo.utime',111) + fetch_call_count = method.call_count + + self.assertEquals(fetch_call_count,0) + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/none_handler_printer_decorator_test.py b/src/pcp/pidstat/test/none_handler_printer_decorator_test.py new file mode 100644 index 000000000..4b341a43f --- /dev/null +++ b/src/pcp/pidstat/test/none_handler_printer_decorator_test.py @@ -0,0 +1,40 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import unittest +from mock import Mock +from pcp_pidstat import NoneHandlingPrinterDecorator +class TestNoneHandlingPrinterDecorator(unittest.TestCase): + + def test_print_report_without_none_values(self): + printer = Mock() + printer.Print = Mock() + printer_decorator = NoneHandlingPrinterDecorator(printer) + + printer_decorator.Print("123\t1000\t1\t2.43\t1.24\t0.0\t3.67\t1\tprocess_1") + + printer.Print.assert_called_with("123\t1000\t1\t2.43\t1.24\t0.0\t3.67\t1\tprocess_1") + + def test_print_report_with_none_values(self): + printer = Mock() + printer.Print = Mock() + printer_decorator = NoneHandlingPrinterDecorator(printer) + + printer_decorator.Print("123\t1000\t1\tNone\t1.24\t0.0\tNone\t1\tprocess_1") + + printer.Print.assert_called_with("123\t1000\t1\t?\t1.24\t0.0\t?\t1\tprocess_1") + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/pcp-pidstat-pmlogger-config.txt b/src/pcp/pidstat/test/pcp-pidstat-pmlogger-config.txt new file mode 100644 index 000000000..62daa6610 --- /dev/null +++ b/src/pcp/pidstat/test/pcp-pidstat-pmlogger-config.txt @@ -0,0 +1,43 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +log mandatory on 1 sec { + pmda.uname + hinv.ncpu + proc.psinfo.pid + proc.nprocs + proc.psinfo.utime + proc.psinfo.stime + proc.psinfo.guest_time + proc.psinfo.processor + proc.id.uid + proc.psinfo.cmd + kernel.all.cpu.user + kernel.all.cpu.vuser + kernel.all.cpu.sys + kernel.all.cpu.guest + kernel.all.cpu.nice + kernel.all.cpu.idle + proc.id.uid_nm + proc.psinfo.rt_priority + proc.psinfo.policy + proc.psinfo.minflt + proc.psinfo.maj_flt + proc.psinfo.vsize + proc.psinfo.rss mem.physmem + proc.psinfo.cmin_flt + proc.psinfo.cmaj_flt + proc.memory.vmstack +} diff --git a/src/pcp/pidstat/test/pcp_pidstat.py b/src/pcp/pidstat/test/pcp_pidstat.py new file mode 120000 index 000000000..132817b04 --- /dev/null +++ b/src/pcp/pidstat/test/pcp_pidstat.py @@ -0,0 +1 @@ +../pcp-pidstat.py \ No newline at end of file diff --git a/src/pcp/pidstat/test/process_cpu_usage_test.py b/src/pcp/pidstat/test/process_cpu_usage_test.py new file mode 100644 index 000000000..614083591 --- /dev/null +++ b/src/pcp/pidstat/test/process_cpu_usage_test.py @@ -0,0 +1,217 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import mock +import unittest +from pcp_pidstat import ProcessCpuUsage + +class TestProcessCpuUsage(unittest.TestCase): + def setUp(self): + self.__metric_repository = mock.Mock() + self.__metric_repository.current_value = mock.Mock(side_effect=self.metric_repo_current_value_side_effect) + self.__metric_repository.previous_value = mock.Mock(side_effect=self.metric_repo_previous_value_side_effect) + + def metric_repo_current_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.psinfo.utime' and instance == 1: + return 112233 + if metric_name == 'proc.psinfo.guest_time' and instance == 1: + return 112213 + if metric_name == 'proc.psinfo.stime' and instance == 1: + return 112243 + if metric_name == 'proc.psinfo.pid' and instance == 1: + return 1 + if metric_name == 'proc.psinfo.cmd' and instance == 1: + return "test" + if metric_name == 'proc.psinfo.processor' and instance == 1: + return 0 + if metric_name == 'proc.id.uid' and instance == 1: + return 1 + if metric_name == 'proc.id.uid_nm' and instance == 1: + return "pcp" + if metric_name == 'proc.psinfo.utime' and instance == 2: + return 112233 + if metric_name == 'proc.psinfo.guest_time' and instance == 2: + return 112213 + if metric_name == 'proc.psinfo.stime' and instance == 2: + return 112243 + if metric_name == 'proc.psinfo.pid' and instance == 2: + return 1 + if metric_name == 'proc.psinfo.cmd' and instance == 2: + return "test" + if metric_name == 'proc.psinfo.processor' and instance == 2: + return 0 + if metric_name == 'proc.id.uid' and instance == 2: + return 1 + if metric_name == 'proc.id.uid_nm' and instance == 2: + return "pcp" + return None + + def metric_repo_previous_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.psinfo.utime' and instance == 1: + return 112223 + if metric_name == 'proc.psinfo.guest_time' and instance == 1: + return 112203 + if metric_name == 'proc.psinfo.stime' and instance == 1: + return 112233 + if metric_name == 'proc.psinfo.pid' and instance == 1: + return 1 + if metric_name == 'proc.psinfo.cmd' and instance == 1: + return "test" + if metric_name == 'proc.psinfo.processor' and instance == 1: + return 0 + if metric_name == 'proc.id.uid' and instance == 1: + return 1 + if metric_name == 'proc.id.uid_nm' and instance == 1: + return "pcp" + if metric_name == 'proc.psinfo.utime' and instance == 3: + return 112223 + if metric_name == 'proc.psinfo.guest_time' and instance == 3: + return 112203 + if metric_name == 'proc.psinfo.stime' and instance == 3: + return 112233 + if metric_name == 'proc.psinfo.pid' and instance == 3: + return 1 + if metric_name == 'proc.psinfo.cmd' and instance == 3: + return "test" + if metric_name == 'proc.psinfo.processor' and instance == 3: + return 0 + if metric_name == 'proc.id.uid' and instance == 3: + return 1 + if metric_name == 'proc.id.uid_nm' and instance == 3: + return "pcp" + return None + + def test_user_percent(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + user_percent = process_cpu_usage.user_percent() + + self.assertEquals(user_percent, 0.75) + + def test_user_percent_if_current_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(3,1.34,self.__metric_repository) + + user_percent = process_cpu_usage.user_percent() + + self.assertIsNone(user_percent) + + def test_user_percent_if_previous_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(2,1.34,self.__metric_repository) + + user_percent = process_cpu_usage.user_percent() + + self.assertIsNone(user_percent) + + def test_guest_percent(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + guest_percent = process_cpu_usage.guest_percent() + + self.assertEquals(guest_percent, 0.75) + + def test_guest_percent_if_current_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(3,1.34,self.__metric_repository) + + guest_percent = process_cpu_usage.guest_percent() + + self.assertIsNone(guest_percent) + + def test_guest_percent_if_previous_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(2,1.34,self.__metric_repository) + + guest_percent = process_cpu_usage.guest_percent() + + self.assertIsNone(guest_percent) + + def test_system_percent(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + system_percent = process_cpu_usage.system_percent() + + self.assertEquals(system_percent, 0.75) + + def test_system_percent_if_current_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(3,1.34,self.__metric_repository) + + system_percent = process_cpu_usage.system_percent() + + self.assertIsNone(system_percent, None) + + def test_system_percent_if_previous_value_is_None(self): + process_cpu_usage = ProcessCpuUsage(2,1.34,self.__metric_repository) + + system_percent = process_cpu_usage.system_percent() + + self.assertIsNone(system_percent, None) + + def test_total_percent(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + total_percent = process_cpu_usage.total_percent() + + self.assertEquals(total_percent, 2.25) + + def test_total_percent_if_current_value_None(self): + process_cpu_usage = ProcessCpuUsage(3,1.34,self.__metric_repository) + + total_percent = process_cpu_usage.total_percent() + + self.assertIsNone(total_percent, None) + + def test_total_percent_if_previous_value_None(self): + process_cpu_usage = ProcessCpuUsage(2,1.34,self.__metric_repository) + + total_percent = process_cpu_usage.total_percent() + + self.assertIsNone(total_percent, None) + + def test_pid(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + pid = process_cpu_usage.pid() + + self.assertEqual(pid,1) + + def test_process_name(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + name = process_cpu_usage.process_name() + + self.assertEqual(name,'test') + + def test_cpu_number(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + number = process_cpu_usage.cpu_number() + + self.assertEqual(number,0) + + def test_user_id(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + user_id = process_cpu_usage.user_id() + + self.assertEqual(user_id,1) + + def test_user_name(self): + process_cpu_usage = ProcessCpuUsage(1,1.34,self.__metric_repository) + + user_name = process_cpu_usage.user_name() + + self.assertEqual(user_name,'pcp') + + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/process_filter_test.py b/src/pcp/pidstat/test/process_filter_test.py new file mode 100644 index 000000000..4a7e64bf0 --- /dev/null +++ b/src/pcp/pidstat/test/process_filter_test.py @@ -0,0 +1,109 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import unittest +from pcp_pidstat import ProcessFilter + +class TestProcessFilter(unittest.TestCase): + def setUp(self): + self.options = Mock(process_name = None, + show_process_memory_util = False, + show_process_priority = False, + show_process_stack_util = False, + per_processor_usage = False, + show_process_user = False, + filtered_process_user = None, + pid_filter = None, + pid_list = []) + + self.process_1 = Mock(pid = Mock(return_value = 1), + process_name = Mock(return_value = "process_1"), + user_name = Mock(return_value='pcp'), + vsize = Mock(return_value=136), + priority = Mock(return_value=99), + stack_size = Mock(return_value=123),) + self.process_2 = Mock(pid = Mock(return_value = 2), + process_name = Mock(return_value = "process_two"), + user_name = Mock(return_value='pcp1'), + vsize = Mock(return_value=136), + priority = Mock(return_value=0), + stack_size = Mock(return_value=0),) + self.process_3 = Mock(pid = Mock(return_value = 3), + process_name = Mock(return_value = "proc_3"), + user_name = Mock(return_value='pcp1'), + vsize = Mock(return_value=0), + priority = Mock(return_value=99), + stack_size = Mock(return_value=0),) + self.process_4 = Mock(pid = Mock(return_value = 4), + process_name = Mock(return_value = "a_short_process"), + user_name = Mock(return_value='pcp'), + vsize = Mock(return_value=0), + priority = Mock(return_value=0), + stack_size = Mock(return_value=50),) + + self.processes = [self.process_1, self.process_2, self.process_3, self.process_4] + + def test_filter_processes_for_given_user_name(self): + self.options.filtered_process_user = 'pcp1' + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_2,self.process_3]) + + def test_filter_processes_for_given_process_name(self): + self.options.process_name = 'process' + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_1, self.process_2, self.process_4]) + + def test_filter_processes_for_given_pid_list(self): + self.options.pid_filter = 'ALL' + self.options.pid_list = [1,4] + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_1,self.process_4]) + + def test_filter_processes_for_process_vsize(self): + self.options.show_process_memory_util = True + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_1,self.process_2]) + + def test_filter_processes_for_process_priority(self): + self.options.show_process_priority = True + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_1,self.process_3]) + + def test_filter_processes_for_process_stack_size(self): + self.options.show_process_stack_util = True + processs_filter = ProcessFilter(self.options) + + test_filtered_processes = processs_filter.filter_processes(self.processes) + + self.assertEqual(test_filtered_processes,[self.process_1,self.process_4]) + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/process_memory_util_reporter_test.py b/src/pcp/pidstat/test/process_memory_util_reporter_test.py new file mode 100644 index 000000000..792f24f08 --- /dev/null +++ b/src/pcp/pidstat/test/process_memory_util_reporter_test.py @@ -0,0 +1,85 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import unittest +from pcp_pidstat import CpuProcessMemoryUtilReporter + +class TestProcessMemoryUtilReporter(unittest.TestCase): + def setUp(self): + self.options = Mock( + show_process_user = None) + + process_1 = Mock(pid = Mock(return_value = 1), + process_name = Mock(return_value = "process_1"), + user_name = Mock(return_value='pcp'), + user_id = Mock(return_value=1000), + minflt = Mock(return_value=9.10), + majflt = Mock(return_value=5.34), + vsize = Mock(return_value=100), + rss = Mock(return_value=200), + mem = Mock(return_value=1.23)) + + self.processes = [process_1] + + def test_print_report_without_filtering(self): + process_memory_util = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessMemoryUtilReporter(process_memory_util, process_filter, 1, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\t1000\t1\t9.1\t\t5.34\t\t100\t200\t1.23\tprocess_1") + + def test_print_report_with_min_flt_None(self): + process_memory_util = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].minflt = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessMemoryUtilReporter(process_memory_util, process_filter, 1, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\t1000\t1\tNone\t\t5.34\t\t100\t200\t1.23\tprocess_1") + + def test_print_report_with_maj_flt_None(self): + process_memory_util = Mock() + process_filter = Mock() + printer = Mock() + self.processes[0].majflt = Mock(return_value=None) + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessMemoryUtilReporter(process_memory_util, process_filter, 1, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\t1000\t1\t9.1\t\tNone\t\t100\t200\t1.23\tprocess_1") + + def test_print_report_with_user_name(self): + self.options.show_process_user = 'pcp' + process_memory_util = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessMemoryUtilReporter(process_memory_util, process_filter, 1, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with('123\tpcp\t1\t9.1\t\t5.34\t\t100\t200\t1.23\tprocess_1') + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/process_memoryutil_test.py b/src/pcp/pidstat/test/process_memoryutil_test.py new file mode 100644 index 000000000..4c85737e0 --- /dev/null +++ b/src/pcp/pidstat/test/process_memoryutil_test.py @@ -0,0 +1,162 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import mock +import unittest +from pcp_pidstat import ProcessMemoryUtil + +class TestProcessMemoryUtil(unittest.TestCase): + def setUp(self): + self.__metric_repository = mock.Mock() + self.__metric_repository.current_value = mock.Mock(side_effect=self.metric_repo_current_value_side_effect) + self.__metric_repository.previous_value = mock.Mock(side_effect=self.metric_repo_previous_value_side_effect) + + def metric_repo_current_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.psinfo.vsize' and instance == 1: + return 120084 + if metric_name == 'proc.psinfo.rss' and instance == 1: + return 6272 + if metric_name == 'proc.psinfo.minflt' and instance == 1: + return 14509 + if metric_name == 'proc.psinfo.maj_flt' and instance == 1: + return 54 + if metric_name == 'mem.physmem': + return 3794764 + if metric_name == 'proc.psinfo.cmd' and instance == 1: + return "test" + if metric_name == 'proc.psinfo.processor' and instance == 1: + return 0 + if metric_name == 'proc.id.uid' and instance == 1: + return 1 + if metric_name == 'proc.psinfo.pid' and instance == 1: + return 1 + if metric_name == 'proc.psinfo.vsize' and instance == 2: + return 120084 + if metric_name == 'proc.psinfo.rss' and instance == 2: + return 6272 + if metric_name == 'proc.psinfo.minflt' and instance == 2: + return 14509 + if metric_name == 'proc.psinfo.maj_flt' and instance == 2: + return 54 + return None + + def metric_repo_previous_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.psinfo.cmin_flt' and instance == 1: + return 573930 + if metric_name == 'proc.psinfo.minflt' and instance == 1: + return 14500 + if metric_name == 'proc.psinfo.cmaj_flt' and instance == 1: + return 645 + if metric_name == 'proc.psinfo.maj_flt' and instance == 1: + return 50 + if metric_name == 'proc.psinfo.cmin_flt' and instance == 3: + return 573930 + if metric_name == 'proc.psinfo.minflt' and instance == 3: + return 14500 + if metric_name == 'proc.psinfo.cmaj_flt' and instance == 3: + return 645 + if metric_name == 'proc.psinfo.maj_flt' and instance == 3: + return 50 + return None + + def test_vsize(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + vsize = process_memory_usage.vsize() + + self.assertEquals(vsize, 120084) + + def test_rss(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + rss = process_memory_usage.rss() + + self.assertEquals(rss, 6272) + + def test_mem(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + mem = process_memory_usage.mem() + + self.assertEquals(mem, 0.17) + + def test_min_flt(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + min_flt = process_memory_usage.minflt() + + self.assertEquals(min_flt, 6.72) + + def test_min_flt_if_current_value_is_None(self): + process_memory_usage = ProcessMemoryUtil(3,1.34,self.__metric_repository) + + min_flt = process_memory_usage.minflt() + + self.assertIsNone(min_flt) + + def test_min_flt_if_previous_value_is_None(self): + process_memory_usage = ProcessMemoryUtil(2,1.34,self.__metric_repository) + + min_flt = process_memory_usage.minflt() + + self.assertIsNone(min_flt) + + def test_maj_flt(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + maj_flt = process_memory_usage.majflt() + + self.assertEquals(maj_flt, 2.99) + + def test_maj_flt_if_current_value_is_None(self): + process_memory_usage = ProcessMemoryUtil(3,1.34,self.__metric_repository) + + maj_flt = process_memory_usage.majflt() + + self.assertIsNone(maj_flt) + + + def test_maj_flt_if_previous_value_is_None(self): + process_memory_usage = ProcessMemoryUtil(2,1.34,self.__metric_repository) + + maj_flt = process_memory_usage.majflt() + + self.assertIsNone(maj_flt) + + def test_pid(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + pid = process_memory_usage.pid() + + self.assertEqual(pid,1) + + def test_process_name(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + name = process_memory_usage.process_name() + + self.assertEqual(name,'test') + + + def test_user_id(self): + process_memory_usage = ProcessMemoryUtil(1,1.34,self.__metric_repository) + + user_id = process_memory_usage.user_id() + + self.assertEqual(user_id,1) + + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/process_priority_reporter_test.py b/src/pcp/pidstat/test/process_priority_reporter_test.py new file mode 100644 index 000000000..10225c951 --- /dev/null +++ b/src/pcp/pidstat/test/process_priority_reporter_test.py @@ -0,0 +1,58 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import unittest +from pcp_pidstat import CpuProcessPrioritiesReporter + +class TestProcessPriorityReporter(unittest.TestCase): + def setUp(self): + self.options = Mock( + show_process_user = None) + + process_1 = Mock(pid = Mock(return_value = 1), + process_name = Mock(return_value = "process_1"), + user_name = Mock(return_value='pcp'), + user_id = Mock(return_value=1000), + priority = Mock(return_value=99), + policy = Mock(return_value='FIFO')) + + self.processes = [process_1] + + def test_print_report_without_filtering(self): + process_priority = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessPrioritiesReporter(process_priority, process_filter, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\t1000\t1\t99\tFIFO\tprocess_1") + + def test_print_report_with_user_name(self): + self.options.show_process_user = 'pcp' + process_priority = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessPrioritiesReporter(process_priority, process_filter, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\tpcp\t1\t99\tFIFO\tprocess_1") + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/process_priority_test.py b/src/pcp/pidstat/test/process_priority_test.py new file mode 100644 index 000000000..3536d7690 --- /dev/null +++ b/src/pcp/pidstat/test/process_priority_test.py @@ -0,0 +1,73 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import mock +import unittest +from pcp_pidstat import ProcessPriority + +class TestProcessPriority(unittest.TestCase): + def setUp(self): + self.__metric_repository = mock.Mock() + self.__metric_repository.current_value = mock.Mock(side_effect=self.metric_repo_current_value_side_effect) + + def metric_repo_current_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.psinfo.pid' and instance == 1: + return 1 + if metric_name == 'proc.id.uid' and instance == 1: + return 0 + if metric_name == 'proc.psinfo.rt_priority' and instance == 1: + return 99 + if metric_name == 'proc.psinfo.cmd' and instance == 1: + return "test" + if metric_name == 'proc.psinfo.policy' and instance == 1: + return 1 + + def test_pid(self): + process_priority = ProcessPriority(1,self.__metric_repository) + + pid = process_priority.pid() + + self.assertEqual(pid,1) + + def test_process_name(self): + process_priority = ProcessPriority(1,self.__metric_repository) + + name = process_priority.process_name() + + self.assertEqual(name,'test') + + def test_policy(self): + process_priority = ProcessPriority(1,self.__metric_repository) + + policy = process_priority.policy() + + self.assertEqual(policy,'FIFO') + + def test_user_id(self): + process_priority = ProcessPriority(1,self.__metric_repository) + + user_id = process_priority.user_id() + + self.assertEqual(user_id,0) + + def test_priority(self): + process_priority = ProcessPriority(1,self.__metric_repository) + + priority = process_priority.priority() + + self.assertEqual(priority,99) + +if __name__ == '__main__': + unittest.main() diff --git a/src/pcp/pidstat/test/process_stack_util_reporter_test.py b/src/pcp/pidstat/test/process_stack_util_reporter_test.py new file mode 100644 index 000000000..c46b61873 --- /dev/null +++ b/src/pcp/pidstat/test/process_stack_util_reporter_test.py @@ -0,0 +1,57 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +from mock import Mock +import unittest +from pcp_pidstat import CpuProcessStackUtilReporter + +class TestProcessStackUtilReporter(unittest.TestCase): + def setUp(self): + self.options = Mock( + show_process_user = None) + + process_1 = Mock(pid = Mock(return_value = 1), + process_name = Mock(return_value = "process_1"), + user_name = Mock(return_value='pcp'), + user_id = Mock(return_value=1000), + stack_size = Mock(return_value=136)) + + self.processes = [process_1] + + def test_print_report_without_filtering(self): + process_stack_util = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessStackUtilReporter(process_stack_util, process_filter, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\t1000\t1\t136\tprocess_1") + + def test_print_report_with_user_name(self): + self.options.show_process_user = 'pcp' + process_stack_util = Mock() + process_filter = Mock() + printer = Mock() + process_filter.filter_processes = Mock(return_value=self.processes) + reporter = CpuProcessStackUtilReporter(process_stack_util, process_filter, printer, self.options) + + reporter.print_report(123) + + printer.assert_called_with("123\tpcp\t1\t136\tprocess_1") + +if __name__ == "__main__": + unittest.main() diff --git a/src/pcp/pidstat/test/process_stackutil_test.py b/src/pcp/pidstat/test/process_stackutil_test.py new file mode 100644 index 000000000..2df3d1753 --- /dev/null +++ b/src/pcp/pidstat/test/process_stackutil_test.py @@ -0,0 +1,69 @@ +#!/usr/bin/env pmpython +# +# Copyright (C) 2016 Sitaram Shelke. +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. +# + +import mock +import unittest +from pcp_pidstat import ProcessStackUtil + +class TestProcessStackUtil(unittest.TestCase): + def setUp(self): + self.__metric_repository = mock.Mock() + self.__metric_repository.current_value = mock.Mock(side_effect=self.metric_repo_current_value_side_effect) + + def metric_repo_current_value_side_effect(self, metric_name,instance): + if metric_name == 'proc.memory.vmstack' and instance == 1: + return 136 + if metric_name == 'proc.psinfo.cmd' and instance == 1: + return "test" + if metric_name == 'proc.id.uid' and instance == 1: + return 1 + if metric_name == 'proc.psinfo.pid' and instance == 1: + return 1 + + def test_stack_size(self): + process_stack_usage = ProcessStackUtil(1,self.__metric_repository) + + stack_size = process_stack_usage.stack_size() + + self.assertEquals(stack_size, 136) + + def test_stack_referenced_size(self): + self.skipTest(reason="Implement when suitable metric is found") + + def test_pid(self): + process_stack_usage = ProcessStackUtil(1,self.__metric_repository) + + pid = process_stack_usage.pid() + + self.assertEqual(pid,1) + + def test_process_name(self): + process_stack_usage = ProcessStackUtil(1,self.__metric_repository) + + name = process_stack_usage.process_name() + + self.assertEqual(name,'test') + + + def test_user_id(self): + process_stack_usage = ProcessStackUtil(1,self.__metric_repository) + + user_id = process_stack_usage.user_id() + + self.assertEqual(user_id,1) + + +if __name__ == '__main__': + unittest.main()