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

116 Commits

Author SHA1 Message Date
John Richardson
625a3a39a5 Add dumpsys_period parameter to fps instrument
Add a new parameter to fps instrument to specify the time period between
calls to ``dumpsys SurfaceFlinger --latency`` in seconds when collecting
frame data. A lower value improves the granularity of timings when
recording actions for UX Performance metrics.
2016-07-26 11:30:34 +01:00
Sebastian Goscik
9707aa6237 Pylint fixes
Pylint now checks for trailing new lines, this commit fixes them.
2016-07-21 16:40:26 +01:00
John Richardson
b8d7956d4c Move processing logic in fps instrument to utility file
Processing logic for frame statistics can be moved out of fps instrument
to a new utility file. This will allow result processors to use the same
logic to produce frame statistics on a subsection of the data
produced by the fps instrument.
2016-07-14 13:49:39 +01:00
Sergei Trofimov
1fe037486f file_poller: added error checking and reporting
- Updated poller binary to propery check for errors (e.g. on attempting
  to open a file) and report them to stderr
- Updated the file_poller instrument to collect poller stderr output
  into a log file and to check the log for errors or warnings on
  completion of an iteration.
2016-07-11 13:55:11 +01:00
Sergei Trofimov
5a780e8211 file_poller: fixed validation with Linux devices
- device.is_rooted check was being perfromed inside validate() which
  gets invoked before the device is connected. This worked for most
  Android devices, because connections is a no-op for them, however
  failed for Linux targets. The check is now performed inside
  initialize().
- Added _is_ready() check inside is_rooted to catch similar problems
  quicker in the future.
2016-07-11 13:23:15 +01:00
Sebastian Goscik
dbda128813 file-poller: Improved csv output
All ',' and '\n' will now be stripped from the files contents so it doesn't
effect csv formatting

Also fixed some whitespace
2016-07-11 11:06:57 +01:00
Per Inge Mathisen
12a78ce291 Fix a frequently repeated typo 2016-07-08 10:16:47 +02:00
Sergei Trofimov
afeb726d53 energy_model: only set "ui" runtime parameter for ChromeOS
energy_model instrument generates job specs during the run. One of the
things it does is set "ui" runtime parameter to "off". This parameter
only exists for ChromeOS devices. This commit ensure that the parameter
is not set when running on any other device.
2016-06-21 09:14:12 +01:00
Sebastian Goscik
224b973ace sysfs_extractor & cpufreq: Fixed error when tar.gz file already existed
If the tar.gz already existed on the target device the instruments would
fail. This fix adds the "-f" option to gzip to force it to overwrite the
file.
2016-06-20 10:12:00 +01:00
Sebastian Goscik
2f87e126f0 apk_version: Removed instrument
APK versions are now added as result classifiers:
48259d872b
2016-06-09 13:55:27 +01:00
Sebastian Goscik
7b92f355c8 netstat: Changed exception type & typo fix 2016-06-08 11:13:35 +01:00
Sebastian Goscik
982069be32 servo_power: Added check for device platform.
Now checks to see if the device is running chromeOS.
2016-06-08 11:10:53 +01:00
setrofim
772346507c Merge pull request #144 from ep1cman/servo
servo_power: Added support for chromebook servo boards
2016-05-27 16:16:49 +01:00
Sebastian Goscik
0fc88a84be servo_power: Added support for chromebook servo boards
Servo is a debug board used for Chromium OS test and development. Among other uses, it allows
access to the built in power monitors (if present) of a Chrome OS device. More information on
Servo board can be found in the link bellow:

 https://www.chromium.org/chromium-os/servo

based on: 03ede10739
and: 9a0dc55b55
2016-05-27 16:09:08 +01:00
Sebastian Goscik
c87daa510e Poller: Added an instrument to poll files and output a csv of their values 2016-05-26 16:32:58 +01:00
Sebastian Goscik
8abf39762d hwmon: Fixed sensor naming
Previously the sensor name was just appeneded to the end of the
previous sensors name.

Now the hwmon name is added as a classifier of the metric.
If the hwmon sensor has a label, the metric will use this for its name,
if it does not then the sensors kind and ID will be used e.g. temp3
2016-05-10 09:27:42 +01:00
Sebastian Goscik
87cbce4244 hwmon: Added allowed values to sensors parameter
Previously the sensor name was just appeneded to the end of the
previous sensors name.
2016-05-10 09:27:42 +01:00
Sergei Trofimov
d581f1f329 sysfile_getter/cpufreq: fix taball name
Commit 724f6e590e changed sysfile_getter
behavior to first tar up copied files and then gzip them. Tarball name
needs to be updated to not include '.gz' extension.
2016-05-06 13:51:09 +01:00
Sebastian Goscik
68043f2a52 Merge pull request #138 from mcgeagh/fps-allviews
fps: Can now process multiple 'view' attributes
2016-04-14 13:57:28 +01:00
Michael McGeagh
95bbce77a2 fps: Can now process multiple 'view' attributes 2016-04-14 13:12:39 +01:00
Sergei Trofimov
82e4998092 Deprecating apk_version instrument. 2016-04-14 11:33:54 +01:00
Michael McGeagh
68714e0e55 fps: Only check for crashed content if crash_check is true. 2016-04-11 12:01:12 +01:00
Sebastian Goscik
724f6e590e SysfsExtractor: Now performs tar and gzip separately
On some devices there were permissions issues when trying to tar and gzip
the temp-fs in one command. These two steps are now done separately.
2016-04-07 10:29:13 +01:00
Sergei Trofimov
391b0b01fc pylint/pep8 fixes
- android/workload: emoved an extra bank line between methods
- trace_cmd: define member attribute inside __init__
- adb_shell: ignore pylint warning about too many branches in this case
2016-04-05 11:36:39 +01:00
Sergei Trofimov
107e8414bb trace-cmd: set a minimum bound on trace pull timeout
The timeout for the pulling the trace file after the run is being set
based on the time for which the trace was collected. For workloads with
short execution time, but large number of events, the resulting timeout
might be too short. To deal with this, do not let the timout be shorter
than 1 minute.
2016-03-24 16:49:42 +00:00
Sebastian Goscik
15ced50640 daq: Fixed channel merging
Fixed channel merging when setting merge to True.
Channel merges done by setting a mapping manually were not affected by this bug.
2016-03-21 11:15:30 +00:00
Sebastian Goscik
79554a2dbc freq_sweep: Improved documentation
- Added explanation that this instrument does not taskset workloads
 - Fixed formatting issue with the agenda example
2016-03-09 16:37:15 +00:00
Sebastian Goscik
20cd6a9c18 daq: Added check for duplicate channel labels
The daq instrument will no longer accept duplicate channel names.
This caused issues where files sent from the daq sever were being
overwritten.
2016-03-07 13:21:40 +00:00
setrofim
120f0ff94f Merge pull request #78 from ep1cman/binary_install
BaseLinuxDevice: Tidied up the way binaries are handled
2016-01-19 10:52:54 +00:00
Sebastian Goscik
7c35c604f4 BaseLinuxDevice: Tidied up the way binaries are handled
Added:
get_binary_path: Checks binary_directory for the wanted binary, if
                 if its not there, it will use which to find a
                 system one. returns the full path

install_if_needed: will install a binary only if it is not present.

Changes:
 - Busybox is now deployed to non-rooted devices
 - is_installed has now been removed as the new functions supersede it
 - binaries will now always be installed to `binaries_directory` and
   not system folders.
 - updated workloads to use these new functions
   - rt-app and sysbench might still need work
2016-01-19 10:45:09 +00:00
Sergei Trofimov
c11cc7d0d2 trace-cmd: do not error on missing host-side trace-cmd when report_on_target is set
When report_on_target option is set, binary trace will be "reported"
into a text version on the target device. This removes the need for
trace-cmd to be installed on the host, in which case that should not be
reported as an error.
2016-01-18 11:53:06 +00:00
Sergei Trofimov
c105e8357c juno_energy: add metrics to results and "strict" parameter
- Summary metrics are now calculated from the contents of energy.csv and
  added to the overall results.
- Added a new "strict" parameter. If this is set to False, the device
  check during validation is omitted.
2016-01-07 11:09:00 +00:00
Sergei Trofimov
62a0fd70de daq: fixed typo 2015-12-15 09:54:21 +00:00
setrofim
57b31149f1 Merge pull request #68 from ep1cman/daq_fix
daq: Fixed bug where an exception would be raised if merge_channles=False
2015-12-15 09:43:23 +00:00
Sebastian Goscik
09390e7ffb daq: Fixed bug where an exception would be raised if merge_channles=False 2015-12-15 09:39:28 +00:00
Sergei Trofimov
bb37c31fed perf: added support for per-cpu statistics
per-cpu statistics now get added as metrics to the results (with
a classifier used to identify the cpu).
2015-12-11 14:01:04 +00:00
Sebastian Goscik
bef8fb40ef Updated pylint for v1.5.1
Fixed WA for the latest version of pylint (1.5.1)
2015-12-09 16:52:39 +00:00
setrofim
e5c6ef5368 Merge pull request #62 from ep1cman/trace-cmd-target-extract
trace-cmd: Added ability to generate reports on target device
2015-12-02 09:58:44 +00:00
Sebastian Goscik
a697c47c49 trace-cmd: Added ability to generate reports on target device 2015-12-02 09:53:43 +00:00
setrofim
1b31d8ef6f Merge pull request #53 from ep1cman/systrace
Added systrace instrument
2015-11-27 09:54:57 +00:00
Sebastian Goscik
b3a9512f44 Added systrace instrument
Added an instrument to uses systrace.py from the android SDK.
 Generates a fancy HTML report (only works in Google chrome).
2015-11-27 09:53:59 +00:00
Sergei Trofimov
8261c1d5b5 freqsweap: fix: was erroneously merging runtime_params into workload_params 2015-11-19 14:11:23 +00:00
setrofim
1d12e6a8b0 Merge pull request #57 from ep1cman/freqsweep
Freqsweep: Added the ability to specify workload/runtime parameters
2015-11-18 11:29:39 +00:00
Sebastian Goscik
2957d63e2f Freqsweep: Added the ability to specify workload/runtime parameters
E.g:
  sweeps:
    - cluster: a15
      runtime_params:
        a15_cores: 1
2015-11-18 11:27:35 +00:00
Sebastian Goscik
2063f48cf0 streamline: cleaned up and added Linux support
- The streamline instrument can now run on linux clients
  because it no longer relies on adb port forwarding
- Updated description.
- Cleaned up code
- Now check for streamline not caiman
- Gatord is now only run once instead of restarted every
  job
2015-11-16 17:27:17 +00:00
setrofim
f43daacd41 Merge pull request #52 from ep1cman/freqsweep
Added freqsweep instrument
2015-11-13 15:19:52 +00:00
Sebastian Goscik
3b41f69762 Added freqsweep instrument
Added an instrument to sweep workloads across all available frequenices
2015-11-13 15:16:54 +00:00
Sebastian Goscik
6492b95edd Added ability to merge DAQ channels
If the parameter merge_channels is set to true (false by default).
 DAQ channels that have consecutive letters on the end of their names
 will be summed together. E.g: A7, A15a, A15b becomes A7, A15

 You can also  manually specify a channel mapping by setting
 merge_channels to a dict. .
2015-11-13 10:56:50 +00:00
Sergei Trofimov
0003993173 daq: updated workload labeling in daq_power.csv
Workload labels, rather than names, are now used in the "workload"
column.
2015-10-01 12:05:53 +01:00
Sergei Trofimov
a6feb65b34 daq: adding gpio_sync option.
When enabled, this wil cause the instrument to insert a marker into
ftrace, while at the same time setting a GPIO pin high.

For this to work, GPIO sysfs interface must be be enabed in the kernel
and the specified pin must be exported.
2015-09-25 15:03:16 +01:00