From c86df527b8e638be9b9e3d2d8033b1e2a07096c4 Mon Sep 17 00:00:00 2001 From: navid <navid@mycompany.com> Date: Fri, 3 Jul 2015 12:27:33 +0000 Subject: [PATCH] add memoru usage script git-svn-id: http://svn.eurecom.fr/openair4G/trunk@7685 818b1a75-f10b-46b9-bf7c-635c3b92a50f --- cmake_targets/tools/mem_usage.sh | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 cmake_targets/tools/mem_usage.sh diff --git a/cmake_targets/tools/mem_usage.sh b/cmake_targets/tools/mem_usage.sh new file mode 100755 index 0000000000..4290372f02 --- /dev/null +++ b/cmake_targets/tools/mem_usage.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +pid=$1 +sleep_sec=0.5 + +if [ "$2" != "" ] ; then +sleep_sec=$2 +fi +#declare -r cnt=$sleep_sec +OUTPUT_FILE="/tmp/mem_usage_${pid}_${sleep_sec}.csv" +echo "RSS(KB);PSS(KB);SHARED_CLEAN(KB);SHARED_DIRTY(KB);PRIVATE)KB)" >> $OUTPUT_FILE +echo "Mem usage for PID $pid with observation period of ${sleep_sec}" + +while ps $pid >/dev/null +do + if [ -f /proc/$pid/smaps ]; then + rss=$(awk '/^Rss/ {i = i + $2} END {print i}' /proc/$pid/smaps) + pss=$(awk '/^Pss/ {i = i + $2 + 0.5} END {print i}' /proc/$pid/smaps) + sc=$(awk '/^Shared_Clean/ {i = i + $2} END {print i}' /proc/$pid/smaps) + sd=$(awk '/^Shared_Dirty/ {i = i + $2} END {print i}' /proc/$pid/smaps) + pc=$(awk '/^Private_Clean/ {i = i + $2} END {print i}' /proc/$pid/smaps) + pd=$(awk '/^Private_Dirty/ {i = i + $2} END {print i}' /proc/$pid/smaps) + echo "$cnt;$rss;$pss;$sc;$pc;$pd;" >> $OUTPUT_FILE + fi + + sleep $sleep_sec +done -- GitLab