• Home
  • Raw
  • Download

Lines Matching +full:- +full:n

14     "This tutorial aims to show how to **configure** a **test environment** using\n",
33 "import logging\n",
34 "from conf import LisaLogging\n",
46 "# Execute this cell to enabled devlib debugging statements\n",
58 "# Other python modules required by this notebook\n",
59 "import json\n",
60 "import time\n",
89 "\u001b[01;34m../../tools\u001b[00m\r\n",
90 "├── \u001b[01;34marm64\u001b[00m\r\n",
91 "│   ├── \u001b[01;32mperf\u001b[00m\r\n",
92 "│   ├── \u001b[01;32mrt-app\u001b[00m\r\n",
93 "│   ├── \u001b[01;32mtaskset\u001b[00m\r\n",
94 "│   └── \u001b[01;32mtrace-cmd\u001b[00m\r\n",
95 "├── \u001b[01;34marmeabi\u001b[00m\r\n",
96 "│   ├── \u001b[01;32mbusybox\u001b[00m\r\n",
97 "│   ├── \u001b[01;32mdaemonize\u001b[00m\r\n",
98 "│   ├── htop\r\n",
99 "│   ├── htop.armv7\r\n",
100 "│   ├── \u001b[01;32mperf\u001b[00m\r\n",
101 "│   ├── \u001b[01;32mrt-app\u001b[00m\r\n",
102 "│   ├── \u001b[01;32msysbench\u001b[00m\r\n",
103 "│   ├── \u001b[01;32mtaskset\u001b[00m\r\n",
104 "│   ├── \u001b[01;31mterminfo.tar.bz2\u001b[00m\r\n",
105 "│   └── \u001b[01;32mtrace-cmd\u001b[00m\r\n",
106 "├── LICENSE.busybox\r\n",
107 "├── LICENSE.perf\r\n",
108 "├── LICENSE.rt-app\r\n",
109 "├── LICENSE.taskset\r\n",
110 "├── LICENSE.trace-cmd\r\n",
111 "├── \u001b[01;32mplots.py\u001b[00m\r\n",
112 "├── \u001b[01;32mreport.py\u001b[00m\r\n",
113 "├── report.pyc\r\n",
114 "├── \u001b[01;34mscripts\u001b[00m\r\n",
115 "│   ├── \u001b[01;32mcgroup_run_into.sh\u001b[00m\r\n",
116 "│   ├── \u001b[01;32mcgroup_tasks_move.sh\u001b[00m\r\n",
117 "│   ├── \u001b[01;32mcpuidle_sampling.sh\u001b[00m\r\n",
118 "│   ├── \u001b[01;32modroid_sampler.py\u001b[00m\r\n",
119 "│   ├── \u001b[01;32modroid_sampler.sh\u001b[00m\r\n",
120 "│   ├── \u001b[01;32mtrace_frequencies.sh\u001b[00m\r\n",
121 "│   └── \u001b[01;32mtraceview_extract.awk\u001b[00m\r\n",
122 "├── \u001b[01;34mx86\u001b[00m\r\n",
123 "│   ├── \u001b[01;32mbusybox\u001b[00m\r\n",
124 "│   └── \u001b[01;32mchrt\u001b[00m\r\n",
125 "└── \u001b[01;34mx86_64\u001b[00m\r\n",
126 " ├── \u001b[01;32mbusybox\u001b[00m\r\n",
127 " ├── \u001b[01;32mchrt\u001b[00m\r\n",
128 " ├── \u001b[01;32mperf\u001b[00m\r\n",
129 " ├── \u001b[01;32mrt-app\u001b[00m\r\n",
130 " ├── \u001b[01;32mtaskset\u001b[00m\r\n",
131 " ├── \u001b[01;32mtrace-cmd\u001b[00m\r\n",
132 " └── \u001b[01;32mwlg\u001b[00m\r\n",
133 "\r\n",
134 "5 directories, 38 files\r\n"
139 "# Custom scrips must be deployed under $LISA_HOME/tools\n",
154 "#!/bin/bash\r\n",
155 "\r\n",
156 "# CPU to monitor\r\n",
157 "CPU=${1:-0}\r\n",
158 "# Sampling time\r\n",
159 "SLEEP=${2:-1}\r\n",
160 "# Samples to collect\r\n",
161 "COUNT=${3:-3}\r\n",
162 "\r\n",
163 "# Enter CPU's sysfs\r\n",
164 "cd /sys/devices/system/cpu\r\n",
165 "\r\n",
166 "# Initial C-State residencies counter\r\n",
167 "ISC=$(find cpu0/cpuidle -name \"state*\" | wc -l)\r\n",
168 "for I in $(seq 0 $((ISC-1))); do\r\n",
169 "\tLCS[$I]=`cat cpu$CPU/cpuidle/state$I/usage`\r\n",
170 "done\r\n",
171 "\r\n",
172 "# Dump header\r\n",
173 "printf \"#%13s \" \"Time\"\r\n",
174 "for I in $(seq 0 $((ISC-1))); do\r\n",
175 " printf \"%14s \" \"idle$I\"\r\n",
176 "done\r\n",
177 "echo\r\n",
178 "\r\n",
179 "# Sampling loop\r\n",
180 "for I in $(seq $COUNT); do\r\n",
181 "\r\n",
182 "\tsleep $SLEEP\r\n",
183 "\r\n",
184 "\t# Dump CPU C-State residencies\r\n",
185 "\tnow=$(date +%s)\r\n",
186 "\tprintf \"%14d \" $now\r\n",
187 "\tfor I in $(seq 0 $((ISC-1))); do\r\n",
188 "\t\tU=`cat cpu$CPU/cpuidle/state$I/usage`\r\n",
189 "\t\tCCS=$(($U - ${LCS[$I]}))\r\n",
190 "\t\tprintf \"%14d \" $CCS\r\n",
191 "\t\tLCS[$I]=$U\r\n",
192 "\tdone\r\n",
193 "\techo\r\n",
194 "\r\n",
195 "\r\n",
196 "done\r\n",
197 "\r\n",
198 "# vim: ts=2\r\n"
203 "# This is the (not so fancy) script we want to deploy\n",
225 "04:34:06 INFO : Devlib provided modules are found under:\n",
226 "04:34:06 INFO : $LISA_HOME/libs/devlib/devlib/module/\n"
233 " thermal.py\r\n",
234 " vexpress.py\r\n",
235 " cooling.py\r\n",
236 " android.py\r\n",
237 " biglittle.py\r\n",
238 " cpuidle.py\r\n",
239 " hotplug.py\r\n",
240 " cpufreq.py\r\n",
241 " hwmon.py\r\n",
242 " cgroups.py\r\n"
247 "# You can have a look at the devlib supported modules by lising the\n",
248 "devlib_modules_folder = 'libs/devlib/devlib/module/'\n",
249 "\n",
250 "logging.info(\"Devlib provided modules are found under:\")\n",
251 "logging.info(\" $LISA_HOME/{}\".format(devlib_modules_folder))\n",
252 …"!cd ../../ ; find {devlib_modules_folder} -name \"*.py\" | sed 's|libs/devlib/devlib/module/| |…
270 "# Setup a target configuration\n",
271 "conf = {\n",
272 "\n",
273 " # Define the kind of target platform to use for the experiments\n",
274 " \"platform\" : 'linux', # platform type, valid other options are:\n",
275 " # android - access via ADB\n",
276 " # linux - access via SSH\n",
277 " # host - direct access\n",
278 " \n",
279 " # Preload settings for a specific target\n",
280 " \"board\" : 'juno', # board type, valid options are:\n",
281 " # - juno - JUNO Development Board\n",
282 " # - tc2 - TC2 Development Board\n",
283 "\n",
284 " # Login credentials\n",
285 " \"host\" : \"192.168.0.1\",\n",
286 " \"username\" : \"root\",\n",
287 " \"password\" : \"\",\n",
288 "\n",
289 " # Custom tools to deploy on target, they must be placed under:\n",
290 " # $LISA_HOME/tools/(ARCH|scripts)\n",
291 " \"tools\" : [ \"cpuidle_sampling.sh\" ],\n",
292 "\n",
293 " # FTrace configuration\n",
294 " \"ftrace\" : {\n",
295 " \"events\" : [\n",
296 " \"cpu_idle\",\n",
297 " \"sched_switch\",\n",
298 " ],\n",
299 " \"buffsize\" : 10240,\n",
300 " },\n",
301 " \n",
302 " # Where results are collected\n",
303 " \"results_dir\" : \"TestEnvExample\",\n",
304 " \n",
305 " # Devlib module required (or not required)\n",
306 " 'modules' : [ \"cpufreq\", \"cgroups\" ],\n",
307 " #\"exclude_modules\" : [ \"hwmon\" ],\n",
308 " \n",
309 " # Local installation path used for kernel/dtb installation on target\n",
310 " # The specified path MUST be accessible from the board, e.g.\n",
311 " # - JUNO/TC2: it can be the mount path of the VMESD disk image\n",
312 " # - Other board: it can be a TFTP server path used by the board bootloader\n",
313 " \"tftp\" : {\n",
314 " \"folder\" : \"/var/lib/tftpboot\",\n",
315 " \"kernel\" : \"kern.bin\",\n",
316 " \"dtb\" : \"dtb.bin\",\n",
317 " },\n",
318 "\n",
334 "04:34:08 INFO : Target - Using base path: /home/derkling/Code/lisa\n",
335 "04:34:08 INFO : Target - Loading custom (inline) target configuration\n",
336- Target configuration {'username': 'root', 'platform': 'linux', 'host': '192.168.0.1', 'ftrace': …
337 …"04:34:08 INFO : Target - Devlib modules to load: ['bl', 'cpufreq', 'cgroups', 'hwmon'…
338 "04:34:08 INFO : Target - Connecting linux target:\n",
339 "04:34:08 INFO : Target - username : root\n",
340 "04:34:08 INFO : Target - host : 192.168.0.1\n",
341 "04:34:08 INFO : Target - password : \n",
342 "04:34:08 DEBUG : Target - Setup LINUX target...\n",
343 "04:34:08 DEBUG : Installing module vexpress-u-boot\n",
344 "04:34:08 DEBUG : Installing module vexpress-dtr\n",
345 "04:34:08 DEBUG : Installing module vexpress-vemsd\n",
346 "04:34:08 DEBUG : Logging in root@192.168.0.1\n",
347 "04:34:09 DEBUG : id\n",
348 "04:34:09 DEBUG : if [ -e '/root/devlib-target/bin' ]; then echo 1; else echo 0; fi\n",
349 "04:34:10 DEBUG : ls -1 /root/devlib-target/bin\n",
350 "04:34:10 DEBUG : cat /proc/cpuinfo\n",
351 "04:34:10 DEBUG : sudo -- sh -c 'dmidecode -s system-version'\n",
352 "04:34:11 DEBUG : Installing module bl\n",
353 "04:34:11 DEBUG : /root/devlib-target/bin/busybox uname -m\n",
354 … "04:34:11 DEBUG : if [ -e '/sys/devices/system/cpu/cpufreq' ]; then echo 1; else echo 0; fi\n",
355 "04:34:12 DEBUG : Installing module cpufreq\n",
356 "04:34:12 DEBUG : zcat /proc/config.gz\n",
357 "04:34:12 DEBUG : Installing module cgroups\n",
358 "04:34:12 DEBUG : mount\n",
359 "04:34:12 DEBUG : cgroup_root already mounted at /sys/fs/cgroup\n",
360 "04:34:13 DEBUG : /root/devlib-target/bin/busybox cat /proc/cgroups\n",
361 …['cpuset', 'cpu', 'schedtune', 'memory', 'devices', 'freezer', 'perf_event', 'hugetlb', 'pids']\n",
362 "04:34:13 DEBUG : Init cpuset controller...\n",
363 "04:34:13 DEBUG : /root/devlib-target/bin/busybox grep cpuset /proc/cgroups\n",
364 "04:34:13 DEBUG : mount\n",
365 "04:34:14 DEBUG : Controller cpuset mounted under: /sys/fs/cgroup/devlib_cpuset\n",
366 "04:34:14 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_cpuset\n",
367 …"04:34:14 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_cpuset ] || mkdir -p /sys/fs/cgroup…
368 "04:34:14 DEBUG : Controller cpuset enabled\n",
369 "04:34:14 DEBUG : Init cpu controller...\n",
370 "04:34:14 DEBUG : /root/devlib-target/bin/busybox grep cpu /proc/cgroups\n",
371 "04:34:15 DEBUG : mount\n",
372 "04:34:15 DEBUG : Controller cpu mounted under: /sys/fs/cgroup/devlib_cpu\n",
373 "04:34:15 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_cpu\n",
374 …"04:34:15 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_cpu ] || mkdir -p /sys/fs/cgroup/de…
375 "04:34:15 DEBUG : Controller cpu enabled\n",
376 "04:34:15 DEBUG : Init schedtune controller...\n",
377 "04:34:15 DEBUG : /root/devlib-target/bin/busybox grep schedtune /proc/cgroups\n",
378 "04:34:16 DEBUG : mount\n",
379 "04:34:16 DEBUG : Controller schedtune mounted under: /sys/fs/cgroup/devlib_schedtune\n",
380 "04:34:16 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_schedtune\n",
381 …"04:34:16 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_schedtune ] || mkdir -p /sys/fs/cgr…
382 "04:34:17 DEBUG : Controller schedtune enabled\n",
383 "04:34:17 DEBUG : Init memory controller...\n",
384 "04:34:17 DEBUG : /root/devlib-target/bin/busybox grep memory /proc/cgroups\n",
385 "04:34:17 DEBUG : mount\n",
386 "04:34:17 DEBUG : Controller memory mounted under: /sys/fs/cgroup/devlib_memory\n",
387 "04:34:17 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_memory\n",
388 …"04:34:18 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_memory ] || mkdir -p /sys/fs/cgroup…
389 "04:34:18 DEBUG : Controller memory enabled\n",
390 "04:34:18 DEBUG : Init devices controller...\n",
391 "04:34:18 DEBUG : /root/devlib-target/bin/busybox grep devices /proc/cgroups\n",
392 "04:34:18 DEBUG : mount\n",
393 "04:34:19 DEBUG : Controller devices mounted under: /sys/fs/cgroup/devlib_devices\n",
394 "04:34:19 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_devices\n",
395 …"04:34:19 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_devices ] || mkdir -p /sys/fs/cgrou…
396 "04:34:19 DEBUG : Controller devices enabled\n",
397 "04:34:19 DEBUG : Init freezer controller...\n",
398 "04:34:19 DEBUG : /root/devlib-target/bin/busybox grep freezer /proc/cgroups\n",
399 "04:34:20 DEBUG : mount\n",
400 "04:34:20 DEBUG : Controller freezer mounted under: /sys/fs/cgroup/devlib_freezer\n",
401 "04:34:20 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_freezer\n",
402 …"04:34:20 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_freezer ] || mkdir -p /sys/fs/cgrou…
403 "04:34:20 DEBUG : Controller freezer enabled\n",
404 "04:34:20 DEBUG : Init perf_event controller...\n",
405 "04:34:20 DEBUG : /root/devlib-target/bin/busybox grep perf_event /proc/cgroups\n",
406 "04:34:21 DEBUG : mount\n",
407 "04:34:21 DEBUG : Controller perf_event mounted under: /sys/fs/cgroup/devlib_perf_event\n",
408 "04:34:21 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_perf_event\n",
409 …"04:34:21 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_perf_event ] || mkdir -p /sys/fs/cg…
410 "04:34:22 DEBUG : Controller perf_event enabled\n",
411 "04:34:22 DEBUG : Init hugetlb controller...\n",
412 "04:34:22 DEBUG : /root/devlib-target/bin/busybox grep hugetlb /proc/cgroups\n",
413 "04:34:22 DEBUG : mount\n",
414 "04:34:22 DEBUG : Controller hugetlb mounted under: /sys/fs/cgroup/devlib_hugetlb\n",
415 "04:34:22 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_hugetlb\n",
416 …"04:34:22 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_hugetlb ] || mkdir -p /sys/fs/cgrou…
417 "04:34:23 DEBUG : Controller hugetlb enabled\n",
418 "04:34:23 DEBUG : Init pids controller...\n",
419 "04:34:23 DEBUG : /root/devlib-target/bin/busybox grep pids /proc/cgroups\n",
420 "04:34:23 DEBUG : mount\n",
421 "04:34:24 DEBUG : Controller pids mounted under: /sys/fs/cgroup/devlib_pids\n",
422 "04:34:24 DEBUG : Creating cgroup /sys/fs/cgroup/devlib_pids\n",
423 …"04:34:24 DEBUG : sudo -- sh -c '[ -d /sys/fs/cgroup/devlib_pids ] || mkdir -p /sys/fs/cgroup/d…
424 "04:34:24 DEBUG : Controller pids enabled\n",
425 "04:34:24 DEBUG : if [ -e '/sys/class/hwmon' ]; then echo 1; else echo 0; fi\n",
426 "04:34:24 DEBUG : Installing module hwmon\n",
427 "04:34:25 DEBUG : ls -1 /sys/class/hwmon\n",
428 … "04:34:25 DEBUG : if [ -e '/sys/class/hwmon/hwmon0/name' ]; then echo 1; else echo 0; fi\n",
429 "04:34:25 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon0/name'\\'''\n",
430 "04:34:26 DEBUG : ls -1 /sys/class/hwmon/hwmon0/\n",
431 "04:34:26 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon0/curr1_label'\\'''\n",
432 … "04:34:27 DEBUG : if [ -e '/sys/class/hwmon/hwmon1/name' ]; then echo 1; else echo 0; fi\n",
433 "04:34:27 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon1/name'\\'''\n",
434 "04:34:27 DEBUG : ls -1 /sys/class/hwmon/hwmon1/\n",
435 "04:34:28 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon1/curr1_label'\\'''\n",
436 … "04:34:28 DEBUG : if [ -e '/sys/class/hwmon/hwmon10/name' ]; then echo 1; else echo 0; fi\n",
437 "04:34:29 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon10/name'\\'''\n",
438 "04:34:29 DEBUG : ls -1 /sys/class/hwmon/hwmon10/\n",
439 "04:34:29 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon10/power1_label'\\'''\n",
440 … "04:34:30 DEBUG : if [ -e '/sys/class/hwmon/hwmon11/name' ]; then echo 1; else echo 0; fi\n",
441 "04:34:30 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon11/name'\\'''\n",
442 "04:34:31 DEBUG : ls -1 /sys/class/hwmon/hwmon11/\n",
443 "04:34:31 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon11/power1_label'\\'''\n",
444 … "04:34:32 DEBUG : if [ -e '/sys/class/hwmon/hwmon12/name' ]; then echo 1; else echo 0; fi\n",
445 "04:34:32 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon12/name'\\'''\n",
446 "04:34:32 DEBUG : ls -1 /sys/class/hwmon/hwmon12/\n",
447 "04:34:33 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon12/energy1_label'\\'''\n",
448 … "04:34:33 DEBUG : if [ -e '/sys/class/hwmon/hwmon13/name' ]; then echo 1; else echo 0; fi\n",
449 "04:34:34 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/name'\\'''\n",
450 "04:34:34 DEBUG : ls -1 /sys/class/hwmon/hwmon13/\n",
451 "04:34:34 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_label'\\'''\n",
452 … "04:34:35 DEBUG : if [ -e '/sys/class/hwmon/hwmon14/name' ]; then echo 1; else echo 0; fi\n",
453 "04:34:35 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/name'\\'''\n",
454 "04:34:36 DEBUG : ls -1 /sys/class/hwmon/hwmon14/\n",
455 "04:34:36 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_label'\\'''\n",
456 … "04:34:37 DEBUG : if [ -e '/sys/class/hwmon/hwmon15/name' ]; then echo 1; else echo 0; fi\n",
457 "04:34:37 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon15/name'\\'''\n",
458 "04:34:37 DEBUG : ls -1 /sys/class/hwmon/hwmon15/\n",
459 "04:34:38 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon15/energy1_label'\\'''\n",
460 … "04:34:38 DEBUG : if [ -e '/sys/class/hwmon/hwmon16/name' ]; then echo 1; else echo 0; fi\n",
461 "04:34:39 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/name'\\'''\n",
462 "04:34:39 DEBUG : ls -1 /sys/class/hwmon/hwmon16/\n",
463 "04:34:39 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in0_label'\\'''\n",
464 "04:34:40 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in1_label'\\'''\n",
465 "04:34:40 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in2_label'\\'''\n",
466 "04:34:41 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in3_label'\\'''\n",
467 "04:34:41 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in4_label'\\'''\n",
468 "04:34:42 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in5_label'\\'''\n",
469 "04:34:42 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/in6_label'\\'''\n",
470 "04:34:42 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/temp1_label'\\'''\n",
471 "04:34:43 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon16/temp2_label'\\'''\n",
472 … "04:34:43 DEBUG : if [ -e '/sys/class/hwmon/hwmon2/name' ]; then echo 1; else echo 0; fi\n",
473 "04:34:44 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon2/name'\\'''\n",
474 "04:34:44 DEBUG : ls -1 /sys/class/hwmon/hwmon2/\n",
475 "04:34:44 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon2/curr1_label'\\'''\n",
476 … "04:34:45 DEBUG : if [ -e '/sys/class/hwmon/hwmon3/name' ]; then echo 1; else echo 0; fi\n",
477 "04:34:45 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon3/name'\\'''\n",
478 "04:34:46 DEBUG : ls -1 /sys/class/hwmon/hwmon3/\n",
479 "04:34:46 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon3/curr1_label'\\'''\n",
480 … "04:34:47 DEBUG : if [ -e '/sys/class/hwmon/hwmon4/name' ]; then echo 1; else echo 0; fi\n",
481 "04:34:47 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon4/name'\\'''\n",
482 "04:34:47 DEBUG : ls -1 /sys/class/hwmon/hwmon4/\n",
483 "04:34:48 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon4/in1_label'\\'''\n",
484 … "04:34:48 DEBUG : if [ -e '/sys/class/hwmon/hwmon5/name' ]; then echo 1; else echo 0; fi\n",
485 "04:34:49 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon5/name'\\'''\n",
486 "04:34:49 DEBUG : ls -1 /sys/class/hwmon/hwmon5/\n",
487 "04:34:49 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon5/in1_label'\\'''\n",
488 … "04:34:50 DEBUG : if [ -e '/sys/class/hwmon/hwmon6/name' ]; then echo 1; else echo 0; fi\n",
489 "04:34:50 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon6/name'\\'''\n",
490 "04:34:51 DEBUG : ls -1 /sys/class/hwmon/hwmon6/\n",
491 "04:34:51 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon6/in1_label'\\'''\n",
492 … "04:34:52 DEBUG : if [ -e '/sys/class/hwmon/hwmon7/name' ]; then echo 1; else echo 0; fi\n",
493 "04:34:52 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon7/name'\\'''\n",
494 "04:34:52 DEBUG : ls -1 /sys/class/hwmon/hwmon7/\n",
495 "04:34:53 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon7/in1_label'\\'''\n",
496 … "04:34:53 DEBUG : if [ -e '/sys/class/hwmon/hwmon8/name' ]; then echo 1; else echo 0; fi\n",
497 "04:34:54 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon8/name'\\'''\n",
498 "04:34:54 DEBUG : ls -1 /sys/class/hwmon/hwmon8/\n",
499 "04:34:54 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon8/power1_label'\\'''\n",
500 … "04:34:55 DEBUG : if [ -e '/sys/class/hwmon/hwmon9/name' ]; then echo 1; else echo 0; fi\n",
501 "04:34:55 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon9/name'\\'''\n",
502 "04:34:56 DEBUG : ls -1 /sys/class/hwmon/hwmon9/\n",
503 "04:34:56 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon9/power1_label'\\'''\n",
504 "04:34:56 DEBUG : Target - Checking target connection...\n",
505 "04:34:56 DEBUG : Target - Target info:\n",
506 "04:34:56 DEBUG : Target - ABI: arm64\n",
507 …"04:34:56 DEBUG : Target - CPUs: CpuInfo(['A53', 'A57', 'A57', 'A53', 'A53', 'A53'…
508 "04:34:56 DEBUG : Target - Clusters: [0, 1, 1, 0, 0, 0]\n",
509 "04:34:57 DEBUG : sudo -- sh -c 'mount -o remount,rw /'\n",
510 "04:34:57 INFO : Target - Initializing target workdir:\n",
511 "04:34:57 INFO : Target - /root/devlib-target\n",
512 "04:34:57 DEBUG : mkdir -p /root/devlib-target\n",
513 "04:34:57 DEBUG : mkdir -p /root/devlib-target/bin\n",
514 … : /usr/bin/scp -r /home/derkling/Code/lisa/libs/devlib/devlib/bin/arm64/busybox root@192.168.…
515 "04:34:58 DEBUG : chmod a+x /root/devlib-target/bin/busybox\n",
516 … : /usr/bin/scp -r /home/derkling/Code/lisa/libs/devlib/devlib/bin/scripts/shutils root@192.168…
517 "04:34:58 DEBUG : chmod a+x /root/devlib-target/bin/shutils\n",
518 …/usr/bin/scp -r /home/derkling/Code/lisa/tools/scripts/cpuidle_sampling.sh root@192.168.0.1:/roo…
519 "04:34:59 DEBUG : chmod a+x /root/devlib-target/bin/cpuidle_sampling.sh\n",
520 … DEBUG : /usr/bin/scp -r /home/derkling/Code/lisa/tools/arm64/trace-cmd root@192.168.0.1:/root…
521 "04:34:59 DEBUG : chmod a+x /root/devlib-target/bin/trace-cmd\n",
522 "04:35:00 DEBUG : Target - Check for module [bl]...\n",
523 "04:35:00 DEBUG : Target - Check for module [cpufreq]...\n",
524 "04:35:00 DEBUG : Target - Check for module [cgroups]...\n",
525 "04:35:00 DEBUG : Target - Check for module [hwmon]...\n",
526 "04:35:00 INFO : Target - Topology:\n",
527 "04:35:00 INFO : Target - [[0, 3, 4, 5], [1, 2]]\n",
528 "04:35:00 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/online'\\'''\n",
529 … "04:35:00 DEBUG : cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies\n",
530 "04:35:01 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/online'\\'''\n",
531 … "04:35:01 DEBUG : cat /sys/devices/system/cpu/cpu1/cpufreq/scaling_available_frequencies\n",
532 …5:01 DEBUG : Platform - Trying to load default EM from /home/derkling/Code/lisa/libs/util…
533 "04:35:01 INFO : Platform - Loading default EM:\n",
534 …"04:35:01 INFO : Platform - /home/derkling/Code/lisa/libs/utils/platforms/juno.json\n
535 "04:35:01 DEBUG : loading JSON...\n",
536 "04:35:01 DEBUG : Loaded JSON configuration:\n",
537 …: 616}}, u'little': {u'cluster': {u'nrg_max': 57}, u'cpu': {u'cap_max': 447, u'nrg_max': 93}}}}\n",
538 "04:35:01 DEBUG : Platform - Platform descriptor initialized\n",
539 …0000], 'little': [450000, 575000, 700000, 775000, 850000]}, 'topology': [[0, 3, 4, 5], [1, 2]]}\n",
540 … : /usr/bin/scp -r /home/derkling/Code/lisa/libs/devlib/devlib/bin/arm64/trace-cmd root@192.168.…
541 "04:35:02 DEBUG : chmod a+x /root/devlib-target/bin/trace-cmd\n",
542 "04:35:02 DEBUG : cat /sys/kernel/debug/tracing/available_events\n",
543 "04:35:02 INFO : FTrace - Enabled tracepoints:\n",
544 "04:35:02 INFO : FTrace - cpu_idle\n",
545 "04:35:02 INFO : FTrace - sched_switch\n",
546 "04:35:02 DEBUG : EnergyMeter - using default energy meter for [juno]\n",
547 "04:35:02 INFO : EnergyMeter - Scanning for HWMON channels, may take some time...\n",
548 "04:35:02 DEBUG : Discovering available HWMON sensors...\n",
549 "04:35:02 DEBUG : \tAdding sensor v2m_juno_amp/curr1\n",
550 "04:35:02 DEBUG : \tAdding sensor v2m_juno_amp/curr1\n",
551 "04:35:02 DEBUG : \tAdding sensor v2m_juno_power/power1\n",
552 "04:35:02 DEBUG : \tAdding sensor v2m_juno_power/power1\n",
553 "04:35:02 DEBUG : \tAdding sensor v2m_juno_energy/energy1\n",
554 "04:35:02 DEBUG : \tAdding sensor v2m_juno_energy/energy1\n",
555 "04:35:02 DEBUG : \tAdding sensor v2m_juno_energy/energy1\n",
556 "04:35:02 DEBUG : \tAdding sensor v2m_juno_energy/energy1\n",
557 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/temp1\n",
558 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/temp2\n",
559 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in0\n",
560 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in1\n",
561 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in2\n",
562 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in3\n",
563 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in4\n",
564 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in5\n",
565 "04:35:02 DEBUG : \tAdding sensor scpi_sensors/in6\n",
566 "04:35:02 DEBUG : \tAdding sensor v2m_juno_amp/curr1\n",
567 "04:35:02 DEBUG : \tAdding sensor v2m_juno_amp/curr1\n",
568 "04:35:02 DEBUG : \tAdding sensor v2m_juno_volt/in1\n",
569 "04:35:02 DEBUG : \tAdding sensor v2m_juno_volt/in1\n",
570 "04:35:02 DEBUG : \tAdding sensor v2m_juno_volt/in1\n",
571 "04:35:02 DEBUG : \tAdding sensor v2m_juno_volt/in1\n",
572 "04:35:02 DEBUG : \tAdding sensor v2m_juno_power/power1\n",
573 "04:35:02 DEBUG : \tAdding sensor v2m_juno_power/power1\n",
574 …"04:35:02 DEBUG : EnergyMeter - Enabling channels {'kinds': ['energy'], 'sites': ['a53', 'a5…
575 "04:35:02 INFO : EnergyMeter - Channels selected for energy sampling:\n",
576 "04:35:02 INFO : EnergyMeter - a57_energy\n",
577 "04:35:03 INFO : EnergyMeter - a53_energy\n",
578 "04:35:03 DEBUG : No RT-App workloads, skipping calibration\n",
579 "04:35:03 WARNING : TestEnv - Wipe previous contents of the results folder:\n",
580 "04:35:03 WARNING : TestEnv - /home/derkling/Code/lisa/results/TestEnvExample\n",
581 "04:35:03 INFO : TestEnv - Set results folder to:\n",
582 "04:35:03 INFO : TestEnv - /home/derkling/Code/lisa/results/TestEnvExample\n",
583 "04:35:03 INFO : TestEnv - Experiment results available also in:\n",
584 "04:35:03 INFO : TestEnv - /home/derkling/Code/lisa/results_latest\n"
589 "from env import TestEnv\n",
590 "\n",
591 "# Initialize a test environment using the provided configuration\n",
606 "The initialization of the test environment pre-initialize some useful<br>\n",
607 "environment variables which are available to write test cases.\n",
608 "\n",
623 "{\n",
624 " \"username\": \"root\", \n",
625 " \"ftrace\": {\n",
626 " \"buffsize\": 10240, \n",
627 " \"events\": [\n",
628 " \"cpu_idle\", \n",
629 " \"sched_switch\"\n",
630 " ]\n",
631 " }, \n",
632 " \"host\": \"192.168.0.1\", \n",
633 " \"password\": \"\", \n",
634 " \"tools\": [\n",
635 " \"cpuidle_sampling.sh\", \n",
636 " \"trace-cmd\"\n",
637 " ], \n",
638 " \"modules\": [\n",
639 " \"cpufreq\", \n",
640 " \"cgroups\"\n",
641 " ], \n",
642 " \"results_dir\": \"TestEnvExample\", \n",
643 " \"platform\": \"linux\", \n",
644 " \"board\": \"juno\", \n",
645 " \"__features__\": [], \n",
646 " \"tftp\": {\n",
647 " \"kernel\": \"kern.bin\", \n",
648 " \"folder\": \"/var/lib/tftpboot\", \n",
649 " \"dtb\": \"dtb.bin\"\n",
650 " }\n",
651 "}\n"
656 "# The complete configuration of the target we have configured\n",
671 "None\n",
672 "None\n"
677 "# Last configured kernel and DTB image\n",
678 "print te.kernel\n",
693 "192.168.0.1\n",
694 "None\n"
699 "# The IP and MAC address of the target\n",
700 "print te.ip\n",
715 "{\n",
716 " \"nrg_model\": {\n",
717 " \"big\": {\n",
718 " \"cluster\": {\n",
719 " \"nrg_max\": 64\n",
720 " }, \n",
721 " \"cpu\": {\n",
722 " \"cap_max\": 1024, \n",
723 " \"nrg_max\": 616\n",
724 " }\n",
725 " }, \n",
726 " \"little\": {\n",
727 " \"cluster\": {\n",
728 " \"nrg_max\": 57\n",
729 " }, \n",
730 " \"cpu\": {\n",
731 " \"cap_max\": 447, \n",
732 " \"nrg_max\": 93\n",
733 " }\n",
734 " }\n",
735 " }, \n",
736 " \"clusters\": {\n",
737 " \"big\": [\n",
738 " 1, \n",
739 " 2\n",
740 " ], \n",
741 " \"little\": [\n",
742 " 0, \n",
743 " 3, \n",
744 " 4, \n",
745 " 5\n",
746 " ]\n",
747 " }, \n",
748 " \"cpus_count\": 6, \n",
749 " \"freqs\": {\n",
750 " \"big\": [\n",
751 " 450000, \n",
752 " 625000, \n",
753 " 800000, \n",
754 " 950000, \n",
755 " 1100000\n",
756 " ], \n",
757 " \"little\": [\n",
758 " 450000, \n",
759 " 575000, \n",
760 " 700000, \n",
761 " 775000, \n",
762 " 850000\n",
763 " ]\n",
764 " }, \n",
765 " \"topology\": [\n",
766 " [\n",
767 " 0, \n",
768 " 3, \n",
769 " 4, \n",
770 " 5\n",
771 " ], \n",
772 " [\n",
773 " 1, \n",
774 " 2\n",
775 " ]\n",
776 " ]\n",
777 "}\n"
782 "# A full platform descriptor\n",
805 "# A pre-created folder to host the tests results generated using this\n",
806 "# test environment, notice that the suite could add additional information\n",
807 "# in this folder, like for example a copy of the target configuration\n",
808 "# and other target specific collected information\n",
831 "# The working directory on the target\n",
846 "Some methods are also exposed to test developers which could be used to easy\n",
847 "the creation of tests.\n",
848 "\n",
864 "04:27:32 DEBUG : No RT-App workloads, skipping calibration\n"
869 "# Calibrate RT-App (if required) and get the most updated calibration value\n",
884 "04:27:32 DEBUG : Platform - Dump platform descriptor in [/tmp/platform.json]\n"
890 "({'clusters': {'big': [1, 2], 'little': [0, 3, 4, 5]},\n",
891 " 'cpus_count': 6,\n",
892 " 'freqs': {'big': [450000, 625000, 800000, 950000, 1100000],\n",
893 " 'little': [450000, 575000, 700000, 775000, 850000]},\n",
894 " 'nrg_model': {u'big': {u'cluster': {u'nrg_max': 64},\n",
895 " u'cpu': {u'cap_max': 1024, u'nrg_max': 616}},\n",
896 " u'little': {u'cluster': {u'nrg_max': 57},\n",
897 " u'cpu': {u'cap_max': 447, u'nrg_max': 93}}},\n",
898 " 'topology': [[0, 3, 4, 5], [1, 2]]},\n",
908 "# Generate a JSON file with the complete platform description\n",
921 "# Force a reboot of the target (and wait specified [s] before reconnect)\n",
933 "# Resolve a MAC address into an IP address\n",
948 "04:27:33 INFO : TFTP - Deploy /etc/group into /var/lib/tftpboot/group\n"
953 "# Copy the specified file into the TFTP server folder defined by configuration\n",
968 "total 12\r\n",
969 "drwxrwxrwx 2 root nogroup 4096 Feb 22 17:34 .\r\n",
970 "drwxr-xr-x 79 root root 4096 Feb 26 15:17 ..\r\n",
971 "-rw-r--r-- 1 derkling derkling 1168 Mar 2 16:27 group\r\n"
976 "!ls -la /var/lib/tftpboot"
990 "A special TestEnv attribute is <b>target</b>, which represents a <b>devlib instance</b>.\n",
991 "Using the target attribute we can access to the full set of devlib provided\n",
1013 "04:27:34 DEBUG : echo -n 'Hello Test Environment'\n"
1028 "# Run a command on the target\n",
1029 "te.target.execute(\"echo -n 'Hello Test Environment'\", as_root=False)"
1043 "04:27:34 INFO : Spawn a task which will run for a while...\n",
1044 "04:27:35 DEBUG : sudo -- sh -c 'sh -c \"sleep 10\" 1>/dev/null 2>/dev/null &'\n"
1049 "# Spawn a command in background on the target\n",
1050 "logging.info(\"Spawn a task which will run for a while...\")\n",
1065 "04:27:35 DEBUG : ps\n"
1072 " PID TTY TIME CMD\n",
1073 " 6097 pts/0 00:00:00 sh\n",
1074 " 6270 pts/0 00:00:00 sleep\n",
1075 " 6271 pts/0 00:00:00 ps\n"
1080 "output = te.target.execute(\"ps\")\n",
1081 "print '\\n'.join(output.splitlines())"
1088 "Notice that _the Shell PID is always the same_ for all commands we execute.<br>\n",
1110 "04:28:18 DEBUG : if [ -e '/root/devlib-target/bin' ]; then echo 1; else echo 0; fi\n",
1111 "04:28:18 DEBUG : ls -1 /root/devlib-target/bin\n"
1118 "/root/devlib-target/bin/cpuidle_sampling.sh\n"
1123 "my_script = te.target.get_installed(\"cpuidle_sampling.sh\")\n",
1138 "04:28:19 DEBUG : sudo -- sh -c '/root/devlib-target/bin/cpuidle_sampling.sh'\n"
1144 "['# Time idle0 idle1 idle2 ',\n",
1145 " ' 1456934283 0 11 19 ',\n",
1146 " ' 1456934284 0 5 17 ',\n",
1156 "output = te.target.execute(my_script, as_root=True)\n",
1164 …put is returned as a **list of lines**. This provides a useful base for post-processing the output…
1176 "# We can also use \"notebook embedded\" scripts\n",
1177 "# my_script = \" \\\n",
1178 "# for I in $(seq 3); do \\\n",
1179 "# grep '' /sys/devices/system/cpu/cpu*/cpufreq/stats/time_in_stats | \\\n",
1180 "# sed -e 's|/sys/devices/system/cpu/cpu||' -e 's|/cpufreq/scaling_governor:| |' \\\n",
1181 "# sleep 1 \\\n",
1182 "# done \\\n",
1215 "ABI : arm64\n",
1216 "big Core Family : A57\n",
1217 "LITTLE Core Family : A53\n",
1218 "CPU's Clusters IDs : [0, 1, 1, 0, 0, 0]\n",
1219 "CPUs type : ['A53', 'A57', 'A57', 'A53', 'A53', 'A53']\n"
1224 "# Acces to many target specific information\n",
1225 "print \"ABI : \", te.target.abi\n",
1226 "print \"big Core Family : \", te.target.big_core\n",
1227 "print \"LITTLE Core Family : \", te.target.little_core\n",
1228 "print \"CPU's Clusters IDs : \", te.target.core_clusters\n",
1243 "04:35:03 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/online'\\'''\n",
1244 …"04:35:03 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu1/cpufreq/scaling_cur_freq…
1251 "big CPUs IDs : [1, 2]\n",
1252 "LITTLE CPUs IDs : [0, 3, 4, 5]\n",
1260 "04:35:04 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/online'\\'''\n",
1261 …"04:35:04 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu1/cpufreq/scaling_governor…
1268 "\n",
1269 "big CPUs governor : performance\n"
1274 "# Access to big.LITTLE specific information\n",
1275 "print \"big CPUs IDs : \", te.target.bl.bigs\n",
1276 "print \"LITTLE CPUs IDs : \", te.target.bl.littles\n",
1277 "print \"big CPUs freqs : {}\".format(te.target.bl.get_bigs_frequency())\n",
1299 … "04:36:33 DEBUG : sudo -- sh -c '/root/devlib-target/bin/shutils cpufreq_get_all_governors'\n"
1305 "{'0': 'performance',\n",
1306 " '1': 'performance',\n",
1307 " '2': 'performance',\n",
1308 " '3': 'performance',\n",
1309 " '4': 'performance',\n",
1319 "# You can use autocompletion to have a look at the supported method for a\n",
1320 "# specific module\n",
1335 …"04:39:00 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_availabl…
1350 "# Get goverors available for CPU0\n",
1365 …"04:40:04 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_availabl…
1366 …"04:40:04 DEBUG : sudo -- sh -c 'echo ondemand > '\\''/sys/devices/system/cpu/cpu0/cpufreq/scal…
1367 …"04:40:05 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1368 …"04:40:05 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1369 "04:40:06 DEBUG : ls -1 /sys/devices/system/cpu/cpu0/cpufreq/ondemand\n"
1374 "# Set the \"ondemand\" governor\n",
1389 …"04:40:29 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1390 …"04:40:29 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1391 …"04:40:30 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_…
1392 …"04:40:30 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/io_is_b…
1393 …"04:40:31 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/powersa…
1394 …"04:40:31 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1395 …"04:40:31 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1396 …"04:40:32 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1397 …"04:40:32 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_thre…
1403 "{'ignore_nice_load': '0',\n",
1404 " 'io_is_busy': '0',\n",
1405 " 'powersave_bias': '0',\n",
1406 " 'sampling_down_factor': '1',\n",
1407 " 'sampling_rate': '1200000',\n",
1408 " 'sampling_rate_min': '24000',\n",
1418 "# Check governor tunables\n",
1433 …"04:41:46 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1434 …"04:41:46 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1435 …"04:41:47 DEBUG : sudo -- sh -c 'echo 2000000 > '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondem…
1436 …"04:41:47 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1437 …"04:41:47 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1438 …"04:41:48 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor…
1439 …"04:41:48 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/ignore_…
1440 …"04:41:49 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/io_is_b…
1441 …"04:41:49 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/powersa…
1442 …"04:41:49 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1443 …"04:41:50 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1444 …"04:41:50 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/samplin…
1445 …"04:41:51 DEBUG : sudo -- sh -c 'cat '\\''/sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_thre…
1451 "{'ignore_nice_load': '0',\n",
1452 " 'io_is_busy': '0',\n",
1453 " 'powersave_bias': '0',\n",
1454 " 'sampling_down_factor': '1',\n",
1455 " 'sampling_rate': '2000000',\n",
1456 " 'sampling_rate_min': '24000',\n",
1466 "# Update governor tunables\n",
1467 "te.target.cpufreq.set_governor_tunables(0, sampling_rate=2000000)\n",
1489 "04:51:18 INFO : CGroup - Available controllers:\n",
1490 "04:51:18 DEBUG : /root/devlib-target/bin/busybox cat /proc/cgroups\n"
1497 "cpuset (hierarchy id: 1) has 2 cgroups\n",
1498 "cpu (hierarchy id: 2) has 1 cgroups\n",
1499 "schedtune (hierarchy id: 3) has 1 cgroups\n",
1500 "memory (hierarchy id: 4) has 1 cgroups\n",
1501 "devices (hierarchy id: 5) has 1 cgroups\n",
1502 "freezer (hierarchy id: 6) has 1 cgroups\n",
1503 "perf_event (hierarchy id: 7) has 1 cgroups\n",
1504 "hugetlb (hierarchy id: 8) has 1 cgroups\n",
1505 "pids (hierarchy id: 9) has 1 cgroups\n"
1510 "logging.info('%14s - Available controllers:', 'CGroup')\n",
1511 "ssys = target.cgroups.list_subsystems()\n",
1512 "for (n,h,g,e) in ssys:\n",
1513 " print '{:10} (hierarchy id: {:d}) has {} cgroups'.format(n, h, g)"
1524 "# Get a reference to the CPUSet controller\n",
1539 "04:51:42 DEBUG : Listing groups for cpuset controller\n",
1540 … "04:51:43 DEBUG : /root/devlib-target/bin/busybox find /sys/fs/cgroup/devlib_cpuset -type d\n",
1541 "04:51:43 DEBUG : Populate cpuset cgroup: /\n",
1542 "04:51:43 DEBUG : Populate cpuset cgroup: /LITTLE\n"
1549 "Existing CGropups:\n",
1550 " /\n",
1551 " /LITTLE\n"
1556 "# Get the list of current configured CGroups for that controller\n",
1557 "cgroups = cpuset.list_all()\n",
1558 "print 'Existing CGropups:'\n",
1559 "for cg in cgroups:\n",
1574 "04:45:15 DEBUG : Reading cpuset attributes from:\n",
1575 "04:45:15 DEBUG : /sys/fs/cgroup/devlib_cpuset/LITTLE\n",
1576 …"04:45:15 DEBUG : /root/devlib-target/bin/shutils cgroups_get_attributes /sys/fs/cgroup/devlib_…
1582 "{'cpu_exclusive': '0',\n",
1583 " 'cpus': '',\n",
1584 " 'effective_cpus': '',\n",
1585 " 'effective_mems': '',\n",
1586 " 'mem_exclusive': '0',\n",
1587 " 'mem_hardwall': '0',\n",
1588 " 'memory_migrate': '0',\n",
1589 " 'memory_pressure': '0',\n",
1590 " 'memory_spread_page': '0',\n",
1591 " 'memory_spread_slab': '0',\n",
1592 " 'mems': '',\n",
1593 " 'sched_load_balance': '1',\n",
1594 " 'sched_relax_domain_level': '-1'}"
1603 "# Create a LITTLE partition and check which tunables we have\n",
1604 "cpuset_littles = cpuset.cgroup('/LITTLE')\n",
1619 …04:47:33 DEBUG : Set attribute [/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.cpus] to: 0,3-5\"\n",
1620 …"04:47:33 DEBUG : sudo -- sh -c 'echo 0,3-5 > '\\''/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.c…
1621 …"04:47:33 DEBUG : sudo -- sh -c 'cat '\\''/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.cpus'\\'''…
1622 … "04:47:34 DEBUG : Set attribute [/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.mems] to: 0\"\n",
1623 …"04:47:34 DEBUG : sudo -- sh -c 'echo 0 > '\\''/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.mems'…
1624 …"04:47:34 DEBUG : sudo -- sh -c 'cat '\\''/sys/fs/cgroup/devlib_cpuset/LITTLE/cpuset.mems'\\'''…
1629 "# Setup CPUs and MEMORY nodes for the LITTLE partition\n",
1644 "04:52:55 DEBUG : Reading cpuset attributes from:\n",
1645 "04:52:55 DEBUG : /sys/fs/cgroup/devlib_cpuset\n",
1646 …"04:52:55 DEBUG : /root/devlib-target/bin/shutils cgroups_get_attributes /sys/fs/cgroup/devlib_…
1647 "04:52:55 DEBUG : Reading cpuset attributes from:\n",
1648 "04:52:55 DEBUG : /sys/fs/cgroup/devlib_cpuset/LITTLE\n",
1649 …"04:52:55 DEBUG : /root/devlib-target/bin/shutils cgroups_get_attributes /sys/fs/cgroup/devlib_…
1656 "cpuset:/ cpus: 0-5\n",
1657 "cpuset:/LITTLE cpus: 0,3-5\n"
1662 "# Dump the configuraiton of each controller\n",
1663 "for cgname in cgroups:\n",
1664 " cgroup = cpuset.cgroup(cgname)\n",
1665 " attrs = cgroup.get()\n",
1666 " cpus = attrs['cpus']\n",
1678 "# Methods exists to move tasks in/out and in between groups\n",
1701 "03:02:39 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_input'\\'''\n",
1702 "03:02:39 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_input'\\'''\n",
1703 …99975}, 'a57': {'total': 15.980763000000024, 'last': 2052.693486, 'delta': 13.449973000000227}}\n",
1704 …al': 0, 'last': 1335.646094, 'delta': 0}, 'a57': {'total': 0, 'last': 2052.693486, 'delta': 0}}\n",
1705 "03:02:40 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_input'\\'''\n",
1706 "03:02:40 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_input'\\'''\n",
1707 …0182}, 'a57': {'total': 0.49970399999983783, 'last': 2053.19319, 'delta': 0.49970399999983783}}\n",
1708 "03:02:40 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_input'\\'''\n",
1709 "03:02:41 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_input'\\'''\n",
1710 …002574}, 'a57': {'total': 0.9984340000000884, 'last': 2053.69192, 'delta': 0.4987300000002506}}\n",
1711 "03:02:43 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_input'\\'''\n",
1712 "03:02:44 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_input'\\'''\n",
1713 …99516}, 'a57': {'total': 1.9705329999997048, 'last': 2054.664019, 'delta': 0.9720989999996164}}\n",
1714 "03:02:44 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon13/energy1_input'\\'''\n",
1715 "03:02:45 DEBUG : sudo -- sh -c 'cat '\\''/sys/class/hwmon/hwmon14/energy1_input'\\'''\n",
1716 …998962}, 'a57': {'total': 2.4585919999999533, 'last': 2055.152078, 'delta': 0.4880590000002485}}\n"
1723 "First read: {\n",
1724 " \"a53\": {\n",
1725 " \"total\": 0.7240460000000439, \n",
1726 " \"last\": 1336.37014, \n",
1727 " \"delta\": 0.35342100000002574\n",
1728 " }, \n",
1729 " \"a57\": {\n",
1730 " \"total\": 0.9984340000000884, \n",
1731 " \"last\": 2053.69192, \n",
1732 " \"delta\": 0.4987300000002506\n",
1733 " }\n",
1734 "}\n",
1735 "Second read: {\n",
1736 " \"a53\": {\n",
1737 " \"total\": 1.4408379999999852, \n",
1738 " \"last\": 1337.086932, \n",
1739 " \"delta\": 0.19358299999998962\n",
1740 " }, \n",
1741 " \"a57\": {\n",
1742 " \"total\": 2.4585919999999533, \n",
1743 " \"last\": 2055.152078, \n",
1744 " \"delta\": 0.4880590000002485\n",
1745 " }\n",
1746 "}\n"
1751 "# Reset and sample energy counters\n",
1752 "te.emeter.reset()\n",
1753 "\n",
1754 "# Sleep some time\n",
1755 "time.sleep(2)\n",
1756 "\n",
1757 "# Sample energy consumption since last reset\n",
1758 "nrg = te.emeter.sample()\n",
1759 "nrg = json.dumps(te.emeter.sample(), indent=4)\n",
1760 "print \"First read: \", nrg\n",
1761 "\n",
1762 "# Sleep some more time\n",
1763 "time.sleep(2)\n",
1764 "\n",
1765 "# Sample again\n",
1766 "nrg = te.emeter.sample()\n",
1767 "nrg = json.dumps(te.emeter.sample(), indent=4)\n",
1789 … : /usr/bin/scp -r /home/derkling/Code/lisa/libs/devlib/devlib/bin/arm64/trace-cmd root@192.168.…
1790 "02:59:44 DEBUG : chmod a+x /root/devlib-target/bin/trace-cmd\n",
1791 "02:59:44 DEBUG : cat /sys/kernel/debug/tracing/available_events\n",
1792 "02:59:44 INFO : FTrace - Enabled tracepoints:\n",
1793 "02:59:44 INFO : FTrace - cpu_idle\n",
1794 "02:59:44 INFO : FTrace - cpu_capacity\n",
1795 "02:59:44 INFO : FTrace - cpu_frequency\n",
1796 "02:59:44 INFO : FTrace - sched_switch\n"
1801 "# Configure a specific set of events to trace\n",
1802 "te.ftrace_conf(\n",
1803 … \n",
1804 … \n",
1805 … \n",
1806 " \"cpu_capacity\",\n",
1807 " \"cpu_frequency\",\n",
1808 " \"sched_switch\",\n",
1809 … \n",
1810 … \n",
1811 " }\n",
1826 …"02:59:45 DEBUG : sudo -- sh -c 'echo 10240 > '\\''/sys/kernel/debug/tracing/buffer_size_kb'\\'…
1827 … "02:59:45 DEBUG : sudo -- sh -c 'cat '\\''/sys/kernel/debug/tracing/buffer_size_kb'\\'''\n",
1828 "02:59:45 DEBUG : sudo -- sh -c '/root/devlib-target/bin/trace-cmd reset'\n",
1829 …:46 DEBUG : sudo -- sh -c '/root/devlib-target/bin/trace-cmd start -e cpu_idle -e cpu_capacity
1830 …"02:59:48 DEBUG : sudo -- sh -c 'echo TRACE_MARKER_START > '\\''/sys/kernel/debug/tracing/trace…
1831 "02:59:48 DEBUG : Trace CPUFreq frequencies\n",
1832 …"02:59:48 DEBUG : sudo -- sh -c '/root/devlib-target/bin/shutils cpufreq_trace_all_frequencies'…
1833 "02:59:48 DEBUG : uname -a\n",
1834 "02:59:49 DEBUG : Trace CPUFreq frequencies\n",
1835 …"02:59:49 DEBUG : sudo -- sh -c '/root/devlib-target/bin/shutils cpufreq_trace_all_frequencies'…
1836 …"02:59:49 DEBUG : sudo -- sh -c 'echo TRACE_MARKER_STOP > '\\''/sys/kernel/debug/tracing/trace_…
1837 "02:59:49 DEBUG : sudo -- sh -c '/root/devlib-target/bin/trace-cmd stop'\n"
1842 "# Start/Stop a FTrace session\n",
1843 "te.ftrace.start()\n",
1844 "te.target.execute(\"uname -a\")\n",
1859 …"02:59:50 DEBUG : sudo -- sh -c '/root/devlib-target/bin/trace-cmd extract -o /root/devlib-targ…
1860 …BUG : /usr/bin/scp -r root@192.168.0.1:/root/devlib-target/trace.dat /home/derkling/Code/lisa/…
1865 "# Collect and visualize the trace\n",
1866 "trace_file = os.path.join(te.res_dir, 'trace.dat')\n",
1867 "te.ftrace.get_trace(trace_file)\n",
1884 "mimetype": "text/x-python",