summaryrefslogtreecommitdiff
path: root/android/scripts/configure-nexus5x-for-benchmarks.sh
blob: d0cae4bd1d06dfdd9d488f0e2bcd029bc4915557 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/bash
CPU_PATH="/sys/devices/system/cpu/cpu"

set_online() {
    local dirpath=$CPU_PATH$1/online
    adb -s $IPADDR shell "echo 1 > $dirpath"
}

set_offline() {
    local dirpath=$CPU_PATH$1/online
    adb -s $IPADDR shell "echo 0 > $dirpath"
}


all_small() {
    set_online 0; set_online 1; set_online 2; set_online 3;
    set_offline 4; set_offline 5;
}

all_big() {
    set_online 4; set_online 5;
    set_offline 0; set_offline 1; set_offline 2; set_offline 3;
}

all_online() {
    set_online 0; set_online 1; set_online 2;
    set_online 3; set_online 4; set_online 5;
}

show_cpu() {
    adb -s $IPADDR shell "cat /sys/devices/system/cpu/cpu*/online"
}


parse() {
    case $1 in
      small)
            all_small
      ;;
      big)
          all_big
      ;;
      default)
      ;;
    esac
}

set -x
echo "configuring Nexus5X on: $IPADDR"
adb -s $IPADDR wait-for-device
adb -s $IPADDR root
adb -s $IPADDR wait-for-device
adb -s $IPADDR shell stop
for n in {0..5}; do
  adb -s $IPADDR shell "echo userspace > /sys/devices/system/cpu/cpu$n/cpufreq/scaling_governor"
  adb -s $IPADDR shell "echo 1000000 > /sys/devices/system/cpu/cpu$n/cpufreq/scaling_min_freq"
  adb -s $IPADDR shell "echo 1000000 > /sys/devices/system/cpu/cpu$n/cpufreq/scaling_max_freq"
done
parse "$@"