Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- launchPowerSpy() {
- PS2MAC=$1
- RATE=$2
- OUTPUT_FILE=$3
- ~/powerspy.py/powerspy.py -i $RATE $PS2MAC 1> $OUTPUT_FILE 2> err-$OUTPUT_FILE &
- PID=$!
- sleep 10
- if ps -p $PID > /dev/null
- then
- echo $PID
- else
- echo $(launchPowerSpy $PS2MAC $RATE $OUTPUT_FILE)
- fi
- }
- killPowerSpy() {
- PID=$1
- kill -s INT $PID
- sleep 10
- }
- IP=$1
- USER=$2
- PASS=$3
- PS2MAC=$4
- #disable c-states
- for ((i=0; i < 8; i++))
- do
- for ((j=1;j<6;j++))
- do
- sshpass -p$PASS ssh $USER@$IP "echo 1 | sudo tee /sys/devices/system/cpu/cpu$i/cpuidle/state$j/disable"
- done
- done
- for ((z=0;z<3;z++))
- do
- PSPID=$(launchPowerSpy $PS2MAC "1" "acpower_nocstates_0.$z.txt")
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; sudo ./joulesCpu > raplenergy_nocstates_0.$z.txt & sleep 600; sudo killall joulesCpu"
- killPowerSpy $PSPID
- for u in 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
- do
- util=$(echo "scale=2;$u/100.0" | bc)
- PSPID=$(launchPowerSpy $PS2MAC "1" "acpower_nocstates_$u.$z.txt")
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; sudo ./joulesCpu > raplenergy_nocstates_$u.$z.txt" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 0 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 1 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 2 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 3 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 4 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 5 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 6 $util 10" &
- sshpass -p$PASS ssh $USER@$IP "cd ~/journal-revision; java -cp stress-0.0.1-jar-with-dependencies.jar stress.Stress 7 $util 10"
- sshpass -p$PASS ssh $USER@$IP "sudo killall joulesCpu"
- killPowerSpy $PSPID
- done
- done
- #re-enable c-states
- for ((i=0; i < 8; i++))
- do
- for ((j=1;j<6;j++))
- do
- sshpass -p$PASS ssh $USER@$IP "echo 0 | sudo tee /sys/devices/system/cpu/cpu$i/cpuidle/state$j/disable"
- done
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement