aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-29daq: fix resistor_values parameters listdaq-fix-resistor_valuesVincent Guittot
resistor_values is an array of float and not int as the shunt resistors are most of the time lower than 1 Ohm. With kind=list_of_ints, all resistor values are rounded to 0. Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
2018-03-28Add arm energy probe instrumentVincent Guittot
Arm Energy Probe with arm_probe has been recently added in devlib's instrument. Add the arm_energy_probe in the WA list of Energy measurement instruments Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
2018-03-28Add meta directory to get_instruments functionVincent Guittot
energy instruments might need to save platform specific configurations in order to help to reproduce the use case. Such configuration should be saved in __meta directory. Add the directory path as a parameter of get_instruments() to save such informations Suggested-by: setrofim@gmail.com Signed-off-by: Vincent Guittot <vincent.guittot@linaro.org>
2018-03-26workloads/dhrystone: Fix crash if workload did not completeMarc Bonnici
Only try to process output from the workload if it is available.
2018-03-22fw/config: better error when merging augsSergei Trofimov
If one or more entries for augmentations in configuration contains an invalid value, raise ConfigError with the entry name.
2018-03-22fw/config: better message on config setting errorSergei Trofimov
Catch exceptions raised when attempting to set value of a config point, and re-raise as ConfigError with name associated with the value in the config file.
2018-03-22utils/types: toggle_set: TypeError on stringSergei Trofimov
Strings are iterable, so can be used to instantiate sets (resulting in a set of chars). This is never what we want for toggle_set's though, and may result in difficult-to-interpret errors when parsing configuration, so raise a TypeError if attempting to create a toggle_set with a string.
2018-03-21workloads/geekbench: Fix formattingMarc Bonnici
Add missing newline to description in order to display correctly in the show command and remove extra spaces.
2018-03-21utils/doc: Adds support for showing aliases when formatting parametersMarc Bonnici
Now displays all available local and global aliases when generating the rst for a parameter.
2018-03-20framework/workload: Refactor apk resolutionMarc Bonnici
Now allows a `prefer_host_package` parameter to be set to control whether a package located on the host system (`True`) or on the target (`False`) should be favoured during resolution.
2018-03-20framework/workload: Return path of pulled apkMarc Bonnici
`pull_apk` now returns the path to the apk it pulled from the device so WA can keep track of it and avoid conflicts with other apks present on the host.
2018-03-20instruments/DAQBackend: Add global aliasesMarc Bonnici
2018-03-20wa/framework: Add support for converting WA2 configuration to WA3 styleMarc Bonnici
Upon initilisation WA3 will now also check if a WA3 config file exisits, rather than just the exsistance of the config directory. If a `config.yaml` file is not found WA will look for a WA2 config.py file and convert it to the new format, otherwise a default config file will be generated.
2018-03-20utils/misc: Fix missing importMarc Bonnici
2018-03-20framework/workload: Add 'cleanup_assets' to global aliasesMarc Bonnici
Allow specifying whether to clean up deployed assets as a global config option as in WA2.
2018-03-20framework/configuration: Refactor code into seperate methodMarc Bonnici
2018-03-19fw/execution: record UI state on errorSergei Trofimov
Record UI state if an error occurs during setup, run, and output processing stages (for other stages, the UI state is unlikely to be relevant as they typically would not include UI manipulation).
2018-03-19fw/execution: add record_ui_state() to contextSergei Trofimov
Add a method to record UI state (take a screen shot, and, for Android devices, dump the UI tree structure) to ExecutionContext.
2018-03-19fw/job: only finalize if initializedSergei Trofimov
Only run finalize() for a job if initialize has succeed. finalize() should be able to assume that initialize() has succeed, without needing to check that that file have been created, variables set, etc.
2018-03-16fw/job: add workload to INFO loggingSergei Trofimov
Add workload label to the INFO-level log messages produced by the job.
2018-03-16framework/output: add list_workloads to RunOutputSergei Trofimov
Add a convenience method to list which workloads (as per their label) were involved in a run.
2018-03-16commands/show: Adds support for showing global settingsMarc Bonnici
2018-03-16workloads/gmail: Fix attaching filesMarc Bonnici
Ensure the workload uses the passed working directory for attaching images instead of a hard coded name and allow for finding of the attach button by description as well as name.
2018-03-15workloads: add hwuitestSergei Trofimov
Port automation for hwuitest (Android's libhwui microbenchmark) from WA2.
2018-03-15fw/workload: Fix installed apk infoSascha Bischoff
Fix an issue where AndroidWorkload.pull_apk would sometimes get the wrong package if the desired package name is a substring of another package name. Rather than using a regex to match the package name, use the new get_package_info method to match the name exactly.
2018-03-15workloads/antutu: Fix location of AndroidManifest.xmlMarc Bonnici
2018-03-15workloads/antutu: Allow for unsupported testsMarc Bonnici
Not all benchmarks are available on all phones and will report "Not supported" To allow for this update the regexes and if not a valid score set any unsupported results to 'NaN'
2018-03-14workloads/exoplayer: Fix splitting of format in incorrect locationMarc Bonnici
Split the desired format outside of for loop as this may not be executed.
2018-03-13Speedometer: Adding in the missing build filesscott
2018-03-13Androbench: Adding missing build filesscott
2018-03-13Antutu: Adding the missing build filesscott
2018-03-12workloads: add jankbenchSergei Trofimov
Add automation for Google's jankbench workload.
2018-03-12output_processors: add sqlite processorSergei Trofimov
This is WA2 sqlite result processor ported to WA3 output processor API. It is schema-compatible with the WA2 version (in fact, there are *no* schema changes). Note: There is a medium-term goal of adding a more generic SQL database exporter with a more complete schema sitting on top of something like sqlalchemy to make it agnostic of DBMS implementations. At point, this will likely be deprecated.
2018-03-09extras: Update README & reflowSascha Bischoff
Update README to contain information about the Dockerfile and re-wrapped to 80 characters.
2018-03-09Docker: Add a Dockerfile for running WASascha Bischoff
With this commit we add a Dockerfile which can be used to create a Docker image for running WA and devlib. Users are able to use this image in a Docker container to run workloads on devices, without requiring WA on their host systems. Please be aware that udev rules must still be correctly setup on the host. NOTE: This Dockerfile will accept the Android SDK licenses automatically.
2018-03-09commands/record: Add checking for android targetsMarc Bonnici
Update the 'package' argument description to specify it is for android packages and add error checking to ensure that if specified, the target supports android.
2018-03-09commands/record: Make recording of run stage optionalMarc Bonnici
Change the recording of the run stage during workload recording mode to be optional as the user may want to use the command to re-record a specific stage of a workload without affecting the workload recording.
2018-03-08workloads/templerun2: Add missing package nameMarc Bonnici
2018-03-08fw/execution: fix Exception on abortSergei Trofimov
Hitting CTRL-C will abort execution of the current job, but will still trigger run finalization, and possibly, post-processing and teardown of the current job. If an exception is raised during this post-process/teardown, the previous exception state (for the KeybardInterrupt) will be clobbered. That means that, after the new exception has been handled, WA would attempt to execute the next job, rather than go to finalization of the run. To avoid this, set a flag in the context upon catching KeybardInterrupt, and check this flag before attempting to execute the next job in the queue.
2018-03-08fw/execution: change how error events get addedSergei Trofimov
Rather than relying on a custom Logger with a context to add events when they are logged, have the runner register hooks for corresponding signals that do that. The issue with the previous approach is that the event ended up being added too late -- after the current job was already cleared, so all events were added at run level. With the new approach, the event will be added when it is first logged, while there is still a current job being set. There will be no duplication for Exceptions being re-raised and handled at different levels because log_error() will ensure that each Exception is logged only once.
2018-03-08workloads/rt-app: only initialize onceSergei Trofimov
Only initialize/finalize once per run to avoid reinstalling the binary and recreating the working directory needlessly.
2018-03-08wa: export target descriptor APISergei Trofimov
- Add exports for target descriptor API. - Arrange exports alphabetically
2018-03-08fw/target/descriptor: add usability functionsSergei Trofimov
- Add SimpleTargetDescriptor that simply returns a global list of target descriptions. - Add create_target_description function to populate that list with a description crated from the specified components. - Add add_description_for_target helper function to create a description for the specified target class, and specified components. For components that are not explicitly specified, attempt to guess sensible defaults based on the target class' bases.
2018-03-08fw/target/descriptor: fixesSergei Trofimov
- fix TargetDescription._set to set lists rather than dicts for params to be consistent with how params are set after creation (should probably get rid of this entirely...) - fix the comment describing the structure of TARGETS
2018-03-08framework/output: output fixesSergei Trofimov
- Get events from the result - Correctly handle pending jobs
2018-03-08fw/execution: abort and unresponsive target handlingSergei Trofimov
Make sure KeyboardInterrupt's and unresponsive target errors are caught and handled at appropriate points in the execution.
2018-03-08fw: fix error loggingSergei Trofimov
- Keep track of logged exceptions inside log_error itself. - signal: log the exception, if there is one in the finally clause of the signal wrapper; this will ensure that the error will be logged closer to the command that originated. - entrypoint: use log.log_error for top-level error logging, rather than the entrypoint logger directly; this will ensure that errors are not repeated unnecessarily. - Log CTRL-C message at zeroth indent level to make it easier to see in the non-verbose output where it occurred.
2018-03-08fw/execution: Handle unresponsive targetsSergei Trofimov
If a target error occurs, check whether the target is unresponsive. If it is, attempt to hard reset it if possible, or gracefully terminate execution if not.
2018-03-08fw/target/manager: Add verify_target_responsive()Sergei Trofimov
Add a method to check that the target is still responsive, and cache the value so that the target does not need to be repeatedly probed during various stages of wrapping up execution.
2018-03-08wa: fix exception exportsSergei Trofimov