Skip to content

Commit a2ae9a3

Browse files
author
Qi Li (leeli4)
committed
fix package reload 0 issue
1 parent 7bec921 commit a2ae9a3

File tree

2 files changed

+48
-25
lines changed

2 files changed

+48
-25
lines changed

collect.sh

Lines changed: 40 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
NS=1000000000
44

5-
PID=$1
5+
6+
SCRIPT_NAME=$1
7+
PID=$(pgrep -f "$SCRIPT_NAME")
68
OUTPUT_FILE=$2
79
DURATION=$3
810
VERBOSE=${4:-0}
@@ -21,9 +23,13 @@ log_verbose() {
2123
}
2224

2325
if [[ $OUTPUT_FILE == *"python3"* ]]; then
24-
PYTHON_SWITCH=1
26+
TYPE=1
27+
elif [[ $OUTPUT_FILE == *"ncs.smp"* ]]; then
28+
TYPE=2
29+
elif [[ $OUTPUT_FILE == *"NcsJVMLauncher"* ]]; then
30+
TYPE=3
2531
else
26-
PYTHON_SWITCH=0
32+
TYPE=4
2733
fi
2834

2935

@@ -36,7 +42,6 @@ mkdir -p "$OUTPUT_DIR"
3642
for (( i=$STARTI;i<=$DURATION;i++ ))
3743
do
3844
SIGNALBACK_FILE="/tmp/signalback/nso_collect_start_signalback_$$_$i"
39-
4045
# Wait for centralized controller signal
4146
if [ ! -z "$SIGNAL_FILE" ]; then
4247
log_verbose "Waiting for start signal..."
@@ -47,7 +52,7 @@ do
4752
Data=$(cat $SIGNAL_FILE 2>/dev/null || echo 12345678999999 )
4853
if [[ $Data -eq $i ]]; then
4954
break
50-
log_verbose "Start signal received. Beginning data collection for PID $PID..."
55+
log_verbose "Start signal received. Beginning data collection for PID $SCRIPT_NAME..."
5156
else
5257
sleep 0.1
5358
fi
@@ -59,27 +64,46 @@ do
5964
else
6065
echo "SIGNAL_FILE Parameter not provided"
6166
fi
62-
67+
6368
#rm -f $SIGNALBACK_FILE
6469
# Tick!
70+
if [[ $TYPE -eq 1 ]]; then
71+
PID=$(pgrep -f "./logs/ncs-python-vm -i $SCRIPT_NAME") #
72+
elif [[ $TYPE -eq 2 ]]; then
73+
PID=$(pgrep -f "\.smp.*-ncs true") #./logs/ncs-python-vm -i
74+
elif [[ $TYPE -eq 3 ]]; then
75+
PID=$(pgrep -f "com.tailf.ncs.NcsJVMLauncher") #./logs/ncs-python-vm -i
76+
else
77+
PID=$(pgrep -f "$SCRIPT_NAME") #./logs/ncs-python-vm -i
78+
fi
79+
80+
#echo $PID" "$SCRIPT_NAME" "$PYTHON_SWITCH" "$OUTPUT_FILE
6581
ALO_TOTAL=$(cat /proc/meminfo | grep 'Committed_AS' | awk -F' ' '{print $2}')
6682
Limit=$(cat /proc/meminfo | grep 'CommitLimit' | awk -F' ' '{print $2}')
67-
6883
TIME=$(date +%T)
69-
70-
log_verbose "Monitoring PID: $PID"
71-
ALO_PID=$(pmap -d $PID | grep "writeable/private" | awk -F' ' '{print $4}' | egrep -o '[0-9.]+' )
72-
PHY=$(cat /proc/$PID/status 2>/dev/null || echo "" | grep VmRSS | awk -F' ' '{print $2}')
73-
74-
if [ ! -z "$ALO_PID" ] && [ ! -z "$PHY" ]; then
75-
echo $TIME" "$PHY" "$ALO_PID" "$ALO_TOTAL" "$Limit >> "$OUTPUT_FILE"
76-
log_verbose "$i second is collected to $OUTPUT_FILE"
84+
if [ ! -z "$PID" ]; then
85+
log_verbose "Monitoring PID: $PID"
86+
ALO_PID=$(pmap -d $PID | grep "writeable/private" | awk -F' ' '{print $4}' | egrep -o '[0-9.]+' )
87+
PHY=$(cat /proc/$PID/status 2>/dev/null | grep VmRSS | awk -F' ' '{print $2}')
88+
#echo $ALO_PID
89+
90+
if [ ! -z "$ALO_PID" ] && [ ! -z "$PHY" ]; then
91+
echo $TIME" "$PHY" "$ALO_PID" "$ALO_TOTAL" "$Limit $PID >> "$OUTPUT_FILE"
92+
log_verbose "$i second is collected to $OUTPUT_FILE"
93+
else
94+
echo $TIME" "0" "0" "$ALO_TOTAL" "$Limit >> "$OUTPUT_FILE"
95+
log_verbose "$i second is collected to $OUTPUT_FILE"
96+
fi
7797
else
78-
echo $TIME" "0" "0" "$ALO_TOTAL" "$Limit >> "$OUTPUT_FILE"
98+
echo $TIME" "0" "0" "$ALO_TOTAL" "$Limit >> "$OUTPUT_FILE"
7999
log_verbose "$i second is collected to $OUTPUT_FILE"
80100
fi
81101
touch $SIGNALBACK_FILE
82102

103+
ALO_PID=""
104+
PHY=""
105+
unset PID
106+
83107

84108
done
85109

plot.sh

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,37 +95,36 @@ do
9595

9696
# Collect ncs.smp or beam.smp NSO process
9797
if [ ! -z "$NCS_PID" ]; then
98-
COLLECT_PIDS=$(pgrep -f ".*collect.sh.* $NCS_PID")
98+
COLLECT_PIDS=$(pgrep -f '.*collect.sh.*ncs.smp')
9999
if [ -z "$COLLECT_PIDS" ]; then
100100
echo "New ncs.smp process PID $NCS_PID: ncs.smp. Start Collection"
101101
counter=$((counter+1))
102-
bash collect.sh $NCS_PID "data/ncs.smp/mem_ncs.smp.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
102+
bash collect.sh ncs.smp "data/ncs.smp/mem_ncs.smp.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
103103
fi
104104
fi
105105

106106
# Collect NcsJVMLauncher process
107107
if [ ! -z "$JVM_PID" ]; then
108-
COLLECT_PIDS=$(pgrep -f ".*collect.sh.* $JVM_PID")
108+
COLLECT_PIDS=$(pgrep -f ".*collect.sh.*NcsJVMLauncher")
109109
if [ -z "$COLLECT_PIDS" ]; then
110110
echo "New JVM process PID $JVM_PID: NcsJVMLauncher. Start Collection"
111111
counter=$((counter+1))
112-
bash collect.sh $JVM_PID "data/NcsJVMLauncher/mem_NcsJVMLauncher.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
112+
bash collect.sh NcsJVMLauncher "data/NcsJVMLauncher/mem_NcsJVMLauncher.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
113113
fi
114114
fi
115115

116116
# Collect Python processes
117117
if [ ! -z "$PYTHON_PIDS" ]; then
118118
for pid in $PYTHON_PIDS; do
119-
COLLECT_PIDS=$(pgrep -f ".*collect.sh.* $pid")
119+
PYTHON_SCRIPT=$(ps -p $pid -o command | tail -n 1 | awk -F' ' '{print $9}')
120+
SCRIPT_NAME=$(basename "$PYTHON_SCRIPT" .py 2>/dev/null || echo "python_$pid")
121+
COLLECT_PIDS=$(pgrep -f ".*collect.sh.* $SCRIPT_NAME")
120122
if [ -z "$COLLECT_PIDS" ]; then
121-
PYTHON_SCRIPT=$(ps -p $pid -o command | tail -n 1 | awk -F' ' '{print $9}')
122-
SCRIPT_NAME=$(basename "$PYTHON_SCRIPT" .py 2>/dev/null || echo "python_$pid")
123123
if [ ! -z "$PYTHON_SCRIPT" ]; then
124124
echo "New Python process PID $pid: $SCRIPT_NAME. Start Collection"
125125
counter=$((counter+1))
126-
bash collect.sh $pid "data/python3/mem_$SCRIPT_NAME.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
126+
bash collect.sh "$SCRIPT_NAME" "data/python3/mem_$SCRIPT_NAME.log" $DURATION $VERBOSE "$SIGNAL_FILE" $i &
127127
fi
128-
129128
fi
130129
done
131130
fi

0 commit comments

Comments
 (0)