@@ -105,9 +105,51 @@ phases:
105
105
echo "*.model tokenizer files found in /data/local/tmp/minibench/"
106
106
fi
107
107
108
- - echo "Collect device state before running "
108
+ - echo "Collect Device Telemetry - CPU Scaling Configuration "
109
109
- |
110
- adb -s $DEVICEFARM_DEVICE_UDID shell 'cat /sys/devices/system/cpu/cpu*/cpufreq/stats/time_in_state /sys/devices/system/cpu/cpu*/cpufreq/stats/trans_table' > $DEVICEFARM_LOG_DIR/state_before.txt
110
+ adb -s $DEVICEFARM_DEVICE_UDID shell '
111
+ for core_path in /sys/devices/system/cpu/cpu*/cpufreq; do
112
+ if [ -d "$core_path" ]; then
113
+ core_name=$(basename $(dirname $core_path))
114
+ governor=$(cat $core_path/scaling_governor 2>/dev/null || echo "N/A")
115
+ min_freq=$(cat $core_path/scaling_min_freq 2>/dev/null || echo "N/A")
116
+ max_freq=$(cat $core_path/scaling_max_freq 2>/dev/null || echo "N/A")
117
+ echo "$core_name | governor=$governor | min_freq=$min_freq | max_freq=$max_freq"
118
+ fi
119
+ done
120
+ ' > $DEVICEFARM_LOG_DIR/telemetry_cpu_scaling_config.txt
121
+
122
+ - echo "Collect Device Telemetry - Thermal Status"
123
+ - |
124
+ adb -s $DEVICEFARM_DEVICE_UDID shell dumpsys thermalservice > $DEVICEFARM_LOG_DIR/telemetry_thermal_status.txt
125
+
126
+ - echo "Collect Device Telemetry - CPU Frequency Statistics (pre-benchmark)"
127
+ - |
128
+ adb -s $DEVICEFARM_DEVICE_UDID shell '
129
+ for core in /sys/devices/system/cpu/cpu*/cpufreq/stats; do
130
+ if [ -d "$core" ]; then
131
+ core_name=$(basename $(dirname $(dirname $core)))
132
+ echo "=== $core_name ==="
133
+ echo "--- time_in_state ---"
134
+ cat $core/time_in_state 2>/dev/null
135
+ echo "--- trans_table ---"
136
+ cat $core/trans_table 2>/dev/null
137
+ echo "--- total_trans ---"
138
+ cat $core/total_trans 2>/dev/null
139
+ echo ""
140
+ fi
141
+ done
142
+ ' > $DEVICEFARM_LOG_DIR/telemetry_cpu_freq_stats_pre.txt
143
+
144
+ - echo "Collect Device Telemetry - Battery (pre-benchmark)"
145
+ - |
146
+ adb -s $DEVICEFARM_DEVICE_UDID shell '
147
+ dumpsys battery
148
+ ' > $DEVICEFARM_LOG_DIR/telemetry_battery_info_pre.txt
149
+
150
+ echo "Reset Battery Stats (pre-benchmark)"
151
+ adb -s $DEVICEFARM_DEVICE_UDID shell 'dumpsys batterystats --reset'
152
+ adb -s $DEVICEFARM_DEVICE_UDID shell 'dumpsys batterystats --enable full-wake-history'
111
153
112
154
- echo "Run benchmark"
113
155
- |
@@ -132,10 +174,37 @@ phases:
132
174
adb -s $DEVICEFARM_DEVICE_UDID shell am start -W -n org.pytorch.minibench/.BenchmarkActivity \
133
175
--es "model_dir" "/data/local/tmp/minibench"
134
176
fi
135
-
136
- - echo "Collect device state after running"
177
+
178
+ - echo "Collect Device Telemetry - CPU Frequency Statistics (post-benchmark)"
179
+ - |
180
+ adb -s $DEVICEFARM_DEVICE_UDID shell '
181
+ for core in /sys/devices/system/cpu/cpu*/cpufreq/stats; do
182
+ if [ -d "$core" ]; then
183
+ core_name=$(basename $(dirname $(dirname $core)))
184
+ echo "=== $core_name ==="
185
+ echo "--- time_in_state ---"
186
+ cat $core/time_in_state 2>/dev/null
187
+ echo "--- trans_table ---"
188
+ cat $core/trans_table 2>/dev/null
189
+ echo "--- total_trans ---"
190
+ cat $core/total_trans 2>/dev/null
191
+ echo ""
192
+ fi
193
+ done
194
+ ' > $DEVICEFARM_LOG_DIR/telemetry_cpu_freq_stats_post.txt
195
+
196
+ - echo "Collect Device Telemetry - Battery (post-benchmark)"
137
197
- |
138
- adb -s $DEVICEFARM_DEVICE_UDID shell 'cat /sys/devices/system/cpu/cpu*/cpufreq/stats/time_in_state /sys/devices/system/cpu/cpu*/cpufreq/stats/trans_table' > $DEVICEFARM_LOG_DIR/state_after.txt
198
+ adb -s $DEVICEFARM_DEVICE_UDID shell '
199
+ echo "=== POST-BENCHMARK BATTERY INFO ==="
200
+ dumpsys battery
201
+ echo ""
202
+ echo "=== APP BATTERY STATS (org.pytorch.minibench) ==="
203
+ dumpsys batterystats --charged org.pytorch.minibench
204
+ echo ""
205
+ echo "=== POWER CONSUMPTION SUMMARY ==="
206
+ dumpsys batterystats --charged | grep -E "(org.pytorch.minibench|Estimated power use|Time on battery|Total running time)"
207
+ ' > $DEVICEFARM_LOG_DIR/telemetry_battery_post.txt
139
208
140
209
post_test:
141
210
commands:
0 commit comments