1
0
mirror of https://github.com/ARM-software/workload-automation.git synced 2024-10-05 18:31:12 +01:00
Commit Graph

1244 Commits

Author SHA1 Message Date
Marc Bonnici
3a863fa143 doc/requirements: Force sphinx to be an older version.
Readthedocs has updated their default sphinx version to be
incompatible with how our api is generated so force read the docs to use
the latest known working version (1.6.5)
2018-05-29 11:49:39 +01:00
Sergei Trofimov
e548e75017 Add a banner to readme pointing everyone to "next" 2018-05-25 17:27:08 +01:00
Aníbal Limón
1b0799bcc5 wlauto/utils/ssh.py: Fix set terminal window size
Ensure that the terminal window size is set to 500x200, if not long
commands (prompt + command > 80 chars) will fail because the pexpect
search to match the command string in order to get the result and the
command is wrapped to first 80 chars.

For example, when check a file and executes:

...
if [ -f '/sys/kernel/debug/sched_features' ]; then echo 1; else echo 0; fi
...
File
\"/usr/local/lib/python2.7/dist-packages/wlauto/common/linux/device.py\",
line 228, in get_properties
if self.is_file(propfile):
File
\"/usr/local/lib/python2.7/dist-packages/wlauto/common/linux/device.py\",
line 215, in is_file
return boolean(output.split()[-1])  # pylint: disable=maybe-no-member

IndexError(list index out of range)
...

In order to fix this scenario enables checkwinsize in the shell and use
stty to set the new terminal window size.

Signed-off-by: Aníbal Limón <anibal.limon@linaro.org>
2018-04-16 14:16:06 +01:00
Javi Merino
ea22bc062e recentfling: Add the ability to specify the device_name
Not all devices are supported by recentfling, but there is usually a
device that is supported and has a similar screensize.  Let the
recentfling workload specify the device to let us run it on more
devices.
2018-03-29 11:29:32 +01:00
Marc Bonnici
ba6889ea7f android/workload: Move parameter from GameWorkload to ApkWorkload Class
In addition to `GameWorkloads` some benchmarks also download additional
data upon initialisation. Moving this parameter to the `ApkWorkload`
parent class allows all APK based workloads to indicate that their data
should not be cleared prior to running the workload.
2018-02-08 15:02:42 +00:00
Jose Marinho
9a9e8395cf instrumentation/fps: Fix spaces in SurfaceFlinger.
When parsing the SurfaceFlinger list output spaces were used as
separators. Some view names have spaces enclosed.
This would lead to views with spaces in their names not being correctly
detected and as a consequence the fps stats not collected.
2018-02-02 13:52:48 +00:00
Marc Bonnici
0995e57689 instrumentation/fps: Allow measuring of views containing spaces
Ensure the view name is passed in quotes to allow for views containing
spaces.
2018-02-01 12:28:00 +00:00
Marc Bonnici
7c920f953c resource_getters: Add support for matching apks via package name
Allows distinguishing between apks based on the package name specified
in the workload.
2018-01-23 13:08:39 +00:00
Marc Bonnici
e5417e5b7f resource_getters: Change ExtensionAssetGetter to look in local env
Previously `ExtensionAssetGetter` subclassed `DependencyFileGetter`,
 commit 6e7087ee88 changed its
functionality to use a cached location instead of the local resource
location. This commit changes the `ExtensionAssetGetter` to subclass
`EnvironmentDependencyGetter` so it checks the local resource location
again.
2018-01-17 18:32:22 +00:00
Sergei Trofimov
d295b7d92d external/revent: make inlines static
Add "static" qualifier to inline functions. This avoids linking errors
when compiling without -O flags. The "static" forces the inlining as
described here:

https://gcc.gnu.org/onlinedocs/gcc/Inline.html
2017-12-04 11:17:24 +00:00
Sergei Trofimov
e33245ac72 external/revent: replace bzero with memset
Replace calls to bzero with equivalent calls to memset, as bzero is
deprecated and may not be supported by all tool chains.
2017-11-30 17:52:54 +00:00
Yingshiuan Pan
57a8e62be9 util/android, get_apk_versions: try to find 'aapt' in $PATH as well
Some Linux distro provide android build-tools in packages, we should also try
to find 'aapt' in $PATH if it cannot be found in $ANDROID_HOME.
2017-11-28 09:14:50 +00:00
Sergei Trofimov
7ce1044eff trace-cmd: Update armeabi binary to LSB version.
The armeabi version of trac-cmd binary was erroniously built as
MSB which pervented it from being used.
2017-11-06 16:24:57 +00:00
setrofim
5a70ab8534 Merge pull request #513 from jimboatarm/androbench_update
Androbench: Updating Versions
2017-10-11 15:36:08 +01:00
scott
486c0c6887 Androbench: Updating Versions
Updating the workload to work with version 5.0 of the Androbench application.
2017-10-11 15:22:22 +01:00
setrofim
9e498a911e Merge pull request #486 from setrofim/master
applaunch: do not attempt to uninstall uiauto apk
2017-09-21 17:15:35 +01:00
Sergei Trofimov
3d80e4ef34 applaunch: do not attempt to uninstall uiauto apk
applaunch  users the UI automation of the guest workload to detect
launch completion. However, the guest's automaiton apk is pushed to the
target and loaded via DexLoader; it is never actually installed;
therefore, it should not be uninstalled when running guest's teardown.
2017-09-21 16:53:13 +01:00
setrofim
713fcc44d9 Merge pull request #485 from setrofim/master
gmail: add missing import
2017-09-21 15:26:28 +01:00
Sergei Trofimov
39bc8eae20 gmail: add missing import 2017-09-21 15:25:58 +01:00
setrofim
adf13feb81 Merge pull request #477 from setrofim/master
utils/ipython: handle nbconvert import
2017-09-14 08:37:52 +01:00
Sergei Trofimov
b312bf317d utils/ipython: handle nbconvert import
nbconvert has been split into a separate package and is installed as a
dependency for Jupyter rather than IPython. Add a proper import guard
to prevent issues for those that don't need ipython_converter
functionality, and set the appropriate error message for those that do.
2017-09-14 08:35:41 +01:00
setrofim
d8a5d2fa37 Merge pull request #475 from setrofim/master
utils/ssh: fix telnet connection
2017-09-13 11:25:03 +01:00
Sergei Trofimov
a3d042e054 utils/ssh: fix telnet connection
This fixes the ability to connect over telnet rather than SSH which was
broken by commit 51db53d9

	 ssh: Back-port ssh_get_shell from devlib
2017-09-13 11:22:29 +01:00
setrofim
afe3c16908 Merge pull request #472 from bjackman/config-example-update
config_example: Update comment on available devices
2017-09-05 15:33:56 +01:00
setrofim
5eee03c689 Merge pull request #473 from bjackman/ipynb-exporter-tweaks
Ipynb exporter tweaks
2017-09-05 15:33:25 +01:00
Brendan Jackman
6266edad6f ipython: Add support for IPython 5
This does not seem to require any change beyond incrementing the
recognised version number.
2017-09-05 14:55:59 +01:00
Brendan Jackman
64426601fe ipynb_exporter: Use file_path to allow '~' in path parameters 2017-09-05 14:55:58 +01:00
Brendan Jackman
cea39a6193 utils/types: Add file_path type
This can be used to allow extension parameters that are paths to use
'~' to refer to the home directory.
2017-09-05 14:55:56 +01:00
Brendan Jackman
c952b2f0d4 config_example: Update comment on available devices 2017-09-05 12:23:37 +01:00
setrofim
ea05022f5f Merge pull request #471 from setrofim/master
spec2000: fix cpumask for genric
2017-08-22 15:40:22 +01:00
Sergei Trofimov
cdc7c96cdf spec2000: fix cpumask for generic
spec2000 expects binaries to be optimised for particular cores and uses
Device's core_names to figure out which cores the benchmark should run
on.

There is one special case, which is "generic", which is not optimised
for a particular uarch. cpumask for this was resolved the same way,
failing the lookup, resulting in the invalid mask 0x0.

To fix this, "generic" is now handled by specifying the mask for all
available CPUs.
2017-08-22 15:38:27 +01:00
setrofim
2f683e59d2 Merge pull request #465 from marcbonnici/FPS_Fix
Fps fix
2017-08-17 11:00:02 +01:00
setrofim
6915de98f1 Merge pull request #468 from marcbonnici/documentation
README: Update documentation link to ReadTheDocs
2017-08-16 17:09:57 +01:00
Marc Bonnici
27fd2a81d3 README: Update documentation link to ReadTheDocs 2017-08-16 16:41:57 +01:00
setrofim
a1c19b55b8 Merge pull request #467 from marcbonnici/documentation
Documentation Update
2017-08-16 16:35:07 +01:00
Marc Bonnici
890f4309d4 Documentation: Adds a requirement.txt
In order to build the test documentation the python package `nose` is
required therefore this commit adds a requirements.txt to ensure the
package is available when building the documentation on RTD.
2017-08-16 16:24:38 +01:00
Marc Bonnici
c8cb153f8e Documentation: Fixes missing links to Invocation label 2017-08-16 16:24:38 +01:00
Marc Bonnici
10c1f64216 Documentation/build_instrumentation: Cleanup 2017-08-16 16:24:38 +01:00
Marc Bonnici
f194ef281b Documentation/Builds: Delete previously generated docs
As the Makefile is no longer responsible for calling the extension and
instrumentation documentation ensure any previously generated
documentation is deleted from the respective build file.
2017-08-16 16:24:38 +01:00
Marc Bonnici
4d607b46c5 Documentation/Makefile: Removed additional calls to doc generation
The documentation build process is now automatically called during the
sphinx build therefore the addtional calls from the Makefile have been
removed.
2017-08-16 16:24:38 +01:00
Marc Bonnici
cdd0834447 Documentation: Modified conf.py to allow building on ReadTheDocs
This commit now automatically calls the extension and
instrumentation documention generator and calls Sphinx-api tool
to allow documention generation on ReadTheDocs.
2017-08-16 16:24:38 +01:00
Marc Bonnici
4c0d3f8d20 Bootstrap: Fixes not using newly created config files
If the $WA_USER_DIRECTORY folder is not present on the users
system it is automatically created and a default config.py file
created. Previously this newly created file would not be loaded into
WA causing it to crash.
2017-08-16 16:24:38 +01:00
Marc Bonnici
8dcf1ba6a5 Bootstrap: Make sure that _env_root is an absolute path
If the environment variable $WA_USER_DIRECTORY is not set `_env_root`
is automatically generated from the path expansion of `~`. In some cases
if a home directory is not avaliable for the user this may result in an empty
string. This commit ensure that '_env_root' is still an absolute path
using the current working directory.
2017-08-16 16:24:13 +01:00
Marc Bonnici
081358769d Workload/Manual: Update "view" parameter description 2017-08-15 10:34:37 +01:00
Marc Bonnici
10a614ff04 Workload/Manual: Adds package parameter to workload
Adds the `package` parameter to allow the workload to be used
with the gfxinfo method of collecting data for the FPS instrument.
2017-08-15 10:34:37 +01:00
Marc Bonnici
58a8ea9051 Instrumentation/FPS: Fixes attribute checking
Previously only the requirements for using SurfaceFlinger were checked,
regardless of the FPS method being used.
This commit now only ensure that a `View` attribute is present when
using SurfaceFlinge and a `package` name is available if using gfxinfo
otherwise falling back to SurfaceFlinger.
2017-08-15 10:22:59 +01:00
marcbonnici
335fff2a6f Merge pull request #464 from sdpenguin/master
revent.py: Fix handling of zero-event files
2017-08-11 17:43:06 +01:00
Waleed El-Geresy
cd0863d7fa revent.py: Fix handling of zero-event files
Previously the try clause worked to catch StopIteration exceptions correctly,
however upon catching the exception, another statment which set self._duration
to (last.time - first.time) was being run regardless, which defeated the point
of the try clause.

This has been fixed by introducing an else clause to contain said statement.
2017-08-11 16:58:44 +01:00
marcbonnici
5cd9bc756c Merge pull request #462 from setrofim/master
revent: fix playback timing
2017-08-10 09:44:00 +01:00
Sergei Trofimov
362e93c4cb revent: fix playback timing
This fixes an issue introduced by commit 5965956

	revent: fix off-by-one in replay

This moved the updating of the current event to the beginning of the
body of the loop, after the check of the while loop to prevent attempting
to assign past the end of array. The problem is that one the conditions
in the check relies on the event being updated, so it need to happen
before that part of the loop condition check.

This move event update back to the end of the loop body, but it moves
the array bounds check from the while loop condition into the body, just
before the update but after the counter is incremented. This should
satisfy both, the counter being bounds checked before it is used, and
the event being updated to the next one to be played before the timing
check in the loop condition.
2017-08-09 17:50:54 +01:00