1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-06 10:51:13 +01:00
Commit Graph

1225 Commits

Author SHA1 Message Date
Sergei Trofimov
8466b77d5b framework/config: fix deserialization
- RebootPolicy: correctly handle being passed another instance of
  RebootPolicy on creation; this a requirement for it to be usable as a
  ConfigurationPoint kind.
- RebootPolicy: move static method to above __init__ (consistency).
- RunConfiguration: handle deserialization of 'device_config' entry.
- RunConfiguration: move static method to above __init__ (consistency).
2018-02-16 13:56:03 +00:00
Sergei Trofimov
1e21bd2ca8 framework/output: save classifiers in Result
Save classifiers at Result as well as Metric level. Reason: when
processing output, one might want to filter complete results, as well as
individual metrics. While it is in theory possible to get the
classifiers for a job by simply extracting the common classifiers
between all metrics, this fails when there are no metrics generated for
a job (note that one might still want to process the output in this
case, e.g. for the artifacts).
2018-02-16 13:56:03 +00:00
Marc Bonnici
c5659d51f1 commands/create: Update agenda sections to use augmentations 2018-02-15 13:42:48 +00:00
Marc Bonnici
4b6297e7ea configuration/plugin_cache: Fix incorrect parmeter name 2018-02-15 13:42:48 +00:00
Marc Bonnici
ed75764445 configuration/plugin_cache: Add target names as allowed plugin configs
Allow setting of device configuration by specifying target name.
2018-02-15 13:42:48 +00:00
Marc Bonnici
52dca17fef target/descriptor: Fix generate target default config
Was previously expecting a dictionary of parameter attributes however the
actual type is a list.
2018-02-15 13:42:48 +00:00
Sergei Trofimov
2158dd047e workloads/hackbench: fix target_binary
Set target_binary as a class, rather than instance, attribute. This
happens only only once per run, and setting it as instance attribute the
first time, makes it unavailable for subsequent instances of the same
workload.
2018-02-15 10:14:40 +00:00
Marc Bonnici
9efb95f4ff setup.py: Add work around for installing pandas
For some reason the automatic install of pandas will fail compilation
due to an issue with numpy. A workaround for this issue is to specify
numpy in `setup_requires` as mentioned in https://github.com/numpy/numpy/issues/2434
2018-02-14 19:20:13 +00:00
Marc Bonnici
4703dc616a framework/agenda: Remove unused code 2018-02-14 17:03:21 +00:00
Marc Bonnici
ad5fd0076c configuration/core: Add missing parameter alias for workload_parmeters 2018-02-14 17:03:21 +00:00
Sergei Trofimov
3dbba732f0 workloads/hackbench: fixes
- Only install/uninstall the executable once per run
- Add results file as a raw artifact
2018-02-14 11:48:07 +00:00
Sergei Trofimov
ea64630f57 workloads/rt-app: fix
Change "pull_file" to "pull" when exacting results. "pull_file" was WA2
API which somehow got missed.
2018-02-14 11:46:30 +00:00
Sergei Trofimov
2a712cd3bb workloads: add hackbench
Add hackbench kernel scheduler benchmark, which is part of the Linux
rt-tests suite. See:

	https://git.kernel.org/pub/scm/linux/kernel/git/clrkwllms/rt-tests.git/tree/src/hackbench/hackbench.8
2018-02-14 11:13:05 +00:00
Sergei Trofimov
b1b379982c framework/output: fix job status
After loading (or attempting to load) job output, update the status from
the state, as that will be more accurate.
2018-02-14 11:13:05 +00:00
Sergei Trofimov
c87d016025 framework/output: handle missing/corrupt result files.
Do not explode if a result file for a job is missing when loading a
RunOutput. Specify job status as "UNKNOWN" and add the exception from
attempting to load the file to the events.
2018-02-14 11:13:05 +00:00
scott
d616d30ee1 Geekbench: Updating result processing to handle GB5 files 2018-02-14 09:29:56 +00:00
Marc Bonnici
0543982f29 framework/host: Generate default config.yaml upon first init 2018-02-14 09:13:04 +00:00
Marc Bonnici
dfce5ca7ba configuration/default: Update to use augmentation terminology 2018-02-14 09:13:04 +00:00
Marc Bonnici
73416d40c2 configuration/core: Remove unused RTParam code 2018-02-14 09:13:04 +00:00
Marc Bonnici
1ec1bd14a5 configuration/core: Remove unnecessary config point
`Augmentations` configuration point should be used instead of `output_processors`
entry which is already specified elsewhere.
2018-02-14 09:13:04 +00:00
Marc Bonnici
965f8e2218 configuration/core: Make generic_android default device 2018-02-14 09:13:04 +00:00
Marc Bonnici
d7f28da71e configuration/core: Add missing description to doc string 2018-02-14 09:13:04 +00:00
Sergei Trofimov
b33defbfea framework/workload: fix "no matching package" error
Fix an issue introduced by commit 42fb3eb

	framework/workload: make "no matching package" message more useful

PackageHandler was incorrectly passing self.name into the error message
instead of self.owner.name.
2018-02-12 11:45:03 +00:00
Sergei Trofimov
42fb3eb148 framework/workload: make "no matching package" message more useful
Make the error message reported when no matching Android app package
could be found more useful by including the workload name, and, if
applicable, sought version.
2018-02-09 17:45:04 +00:00
Sergei Trofimov
0d225dc128 workloads/exoplayer: add view
Add view for the workload, so that SurfaceFlinger frame data can be
collected for it.
2018-02-09 12:30:51 +00:00
scott
6e946a53dd Updating Geekbench workload to support the latest versions of both the standard and corporate application 2018-02-09 12:17:27 +00:00
Marc Bonnici
efc7dc9326 commands/create: Remove global section of generated agenda
Move the iterations parameter into `config`so the `global` section
can be removed.
2018-02-08 18:01:56 +00:00
Sergei Trofimov
ff5e5821d0 workloads/exoplayer: handle no orig rotation
Do not attempt to reset rotation in teardown if target did not specify
it before workload execution.
2018-02-08 15:01:03 +00:00
Marc Bonnici
fbf1bbb1cf workloads/exoplayer: Update supported versions
Adds '2.5' and '2.6' to the supported versions of the workload.
2018-02-08 14:58:39 +00:00
Marc Bonnici
5f1145a41f workloads/exoplayer: Prepend file format to downloaded filepath
Always prepend the format for the file into the downloaded filepath to
ensure matching is correctly performed. Previously the ogg file did not
specify this causing it to be re-downloaded for each run.
2018-02-08 14:58:39 +00:00
Marc Bonnici
22a2ccf7d6 target/logcatpoller: Make capitalisation consistent 2018-02-07 10:01:12 +00:00
Marc Bonnici
728057dbba target/androidassistant: Fix Logcat poller creation
Threads cannot be restarted therfore we need to create a new polling
thread for each time the poller is started.
2018-02-07 10:01:12 +00:00
Marc Bonnici
07cd770288 framework/plugin_cache: Fix missing assistant parameters 2018-02-07 10:01:12 +00:00
Marc Bonnici
9941b9a92a commands/show: Add missing assistant parameters and RT param note. 2018-02-07 10:01:12 +00:00
Marc Bonnici
9eca168c55 commands/show: Remove individual headings from output 2018-02-07 10:01:12 +00:00
Marc Bonnici
36309a4cf2 target/assistant: Fix logcat poller
Rename the `start` method to `run` as this is what is what is called
by the threading module's `start` method, otherwise this causes the
polling to be done in the main thread blocking execution.
2018-02-07 10:01:12 +00:00
Sergei Trofimov
c5df74eb56 framework/config: load plugins from extra packages
Add support for loading plugins from packages that register themselves
with WA by writing their names into $WA_USER_DIRECTORY/packages.

This is functionality that existed in WA2 and was omitted in WA3 until
now.
2018-02-06 17:30:49 +00:00
Sergei Trofimov
58c4ae609c framework/output_processor: fix get_output_processor()
Output processor names are converted to identifiers when they are
loaded. Ensure the same thing happens when looking up installed output
processors with get_output_processor().
2018-02-06 09:49:58 +00:00
Marc Bonnici
019e5da79e workloads/thechase: Port workload to WA3
Updated default view to run on Android N
2018-02-01 14:27:45 +00:00
Marc Bonnici
ed77855949 instruments/trace-cmd: Only insert trace markers if enabled
Check to see if the instrument is enabled before adding start and stop
trace markers.
2018-02-01 14:26:08 +00:00
Marc Bonnici
9a556721b6 Augmentations: Allow configuring of augmentations per workload
Add support for enabling and disabling of augmentations (instruments and
output processors) on a per workload basis.
2018-02-01 14:26:08 +00:00
Marc Bonnici
557d62ce86 framework/configuration: Fix disabling of augmentations
Previously disabling of augmentaions via using the `--disable`
flag or by using the "~" notation in agendas was ignored.
2018-02-01 14:26:08 +00:00
Marc Bonnici
d9a7e1c475 utils/types: Add add method to toggle_set
Allows adding of elements that will respect the state of an existing
element in the toggle set.
2018-02-01 14:26:08 +00:00
Marc Bonnici
2699bceba3 workloads/googleslides: Fix unable to locate image on chromebook 2018-01-31 19:16:51 +00:00
Marc Bonnici
cba773b5e6 workloads/gmail: Fix to use passed working directory parameter
In devlib the default working directory has changed causing the workload
to look in the wrong directory, now the workload should use the passed
working directory and extract the relevant name from there.
2018-01-31 19:16:51 +00:00
Marc Bonnici
e5ed64d8d5 trace_cmd: Rename trace-cmd to trace_cmd
Both the instrument and utility functions were called `trace-cmd.py`.
`"-"`'s are not valid python identifiers therefore when trying to import
the `trace-cmd` module this causes an error.
2018-01-25 16:28:51 +00:00
Sergei Trofimov
902c3c6ace instruments/poller: add ftrace marker support
- Add an option to the poller binary insert a marker into ftrace that
  aligns with the first output entry. The option is exposed as an
  instrument parameter.
- If this parameter is set, the resulting .csv will be post-processed to
  update the timestamps to align with trace-cmd output.
- Change poller artifact names to use - instead of _ to be consistent
  with trace-cmd artifact naming.
2018-01-25 10:50:02 +00:00
Sergei Trofimov
1fe899fd7c Promote pandas to a mandatory dependency.
Pandas is already widely used in WA and devlib for fast numerical table
manipulation in various instruments and output processors. Up to this
point, it has been an optional dependency.

Over the last couple of years, the package has become very wide spread,
and is available in repos for virtually every major distro. There is now
little reason not to require it as a mandatory dependency.
2018-01-25 10:50:02 +00:00
Sergei Trofimov
dae4d9a934 framework/execution: add context to job signals
Pass the execution context to job execution signal callbacks.
2018-01-25 10:50:02 +00:00
Sergei Trofimov
a2c113e0f9 framework/signal: log on connect/disconnect
Add debug level logging for connect() and disconnect() functions.
2018-01-25 10:50:02 +00:00