598950ae0725020e19512b4f7c98cb4d48840f6a |
|
16-Jun-2017 |
Patrick Bellasi <patrick.bellasi@arm.com> |
energy/hwmon: fixup channels reference In this patch: 4c12acc3 energy/hwmon: Improve default channel_map we update the way channels map are used by the energy class. However, that patch also introduced a miss reference in a code path which is triggered only in case of error. Let's fix it to properly propagate the exception generated in that path. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
3af8406e9768d5fbdb3ff03be3c16b29cc3e26e6 |
|
05-Jun-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
libs/utils/energy: Fix df indexing numpy.arange() was being used to index the energy-measurements df. This method has some issues where the 'stop' value may or may not be included in the returned set, i.e: arange(0.8, 1.0, 0.1) could return [0.8, 0.9, 1.0] BUT arange(0.7, 1.0, 0.1) could return [0.7, 0.8, 0.9] (not tested for these values but it is the problem being encountered) This could thus create n indexes for n-1 values, which would cause an exception. numpy.linspace() is more predictible than arange(), as the 'stop' value can explicitly be included or excluded (excluded by default). This commit introduces linspace().
/external/lisa/libs/utils/energy.py
|
96e916b72d3259a08d92e3ffe6a58a07e3592f32 |
|
11-May-2017 |
Patrick Bellasi <derkling@gmail.com> |
Merge pull request #395 from bjackman/monsoon energy: Add Monsoon Power Monitor Support
|
02e01b615611b11ddd214376851380ffdd20ceb1 |
|
10-May-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy: Add Monsoon Power Monitor support
/external/lisa/libs/utils/energy.py
|
b10386975eda77413b87c69b59bf4f461ba95da2 |
|
10-May-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy: Factor out base class for CONTINUOUS devlib instrument Most of the logic for the ARM Energy Probe is generic to all devlib energy instruments using CONTINUOUS mode. Factor it into a base class; a subsequent commit will use this base class to add support for another instrument.
/external/lisa/libs/utils/energy.py
|
4c12acc36ac64f4fb91e6553c6951d56ebb533a5 |
|
26-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/hwmon: Improve default channel_map This changes the selection of hwmon channels so that: - If a channel_map is provided explicitly, all the named hwmon sites are required to exist, or an error is raised. - Otherwise, if we have big.LITTLE information about the platform, and hwmon reports the presence of channels with names matching the names we have for the big.LITTLE cores, then we use those hwmon sites for the "big" and "LITTLE" channels. - If neither of the above criteria are met, we enable all available hwmon energy channels. We can probably factor this into a common base class with the AEP, but I'll leave that for later when I can test it.
/external/lisa/libs/utils/energy.py
|
9c4950d634fd5680b7980ba8b4b7a5d3565ade4b |
|
26-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/hwmon: Simplify channel/site/kind configuration - The only kind of measurement we support is energy, so hard-code that and remove the 'kinds' field from the conf['conf'] entry. - Remove the 'sites' field from the conf['conf'] entry, instead just use the values of the channel_map. The channel_map values are already required to be subset of conf['conf']['sites'], and sites not listed in the channel_map are not returned in output.
/external/lisa/libs/utils/energy.py
|
e1b6f9bd0bd7f94d0ed0ca333de8b81a46d4ba6c |
|
25-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/hwmon: Use 'site' instead of 'label' The current code string-manipulates the 'label' attribute of channel objects to extract the site name. Instead just use the 'site' field. Also rename the 'label' variables to 'site' for accuracy.
/external/lisa/libs/utils/energy.py
|
1598aab48b61772626db214ff8f2dfd5a49587bb |
|
19-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy: Add data_frame field to EnergyReport This (optionally) directly exposes the sample data. It remains to document this part of the API and implement it for the ACME meter.
/external/lisa/libs/utils/energy.py
|
e0358aeac0dd15cff0cb819236383a12fb782a7e |
|
26-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/AEP: Don't require channel_map The ARM Energy Probe can only measure one channel at a time, and the `labels` param just sets the key that's used to identify this sole channel in the output. So if we don't get a channel_map arg, just leave `labels` None and use whatever devlib calls it by default.
/external/lisa/libs/utils/energy.py
|
e9b39785235fbfebfe34e064fcae721053941232 |
|
26-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/AEP: remove unused code
/external/lisa/libs/utils/energy.py
|
0dfdce0c840de92f1af63b94b727176b89a7a47f |
|
20-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/AEP: Raise RuntimeError if no data collected This previously caused a division by zero error. That maths code has now been removed, so no data results in a report of 0 energy. Bring back the error and make it more helpful.
/external/lisa/libs/utils/energy.py
|
8a1a0131e6057bb6fbfd8b561d589ad13b1d8332 |
|
20-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/AEP: remove check for self._aep is None This cannot arise
/external/lisa/libs/utils/energy.py
|
e7d8487e7517cef69c1317e3edb58709cec34bf7 |
|
19-Apr-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
energy/AEP: Use pandas to simplify reading energy data Instead of using devlib's MeasurementsCsv directly, just read the CSV file into a DataFrame and use that. The format of the CSV is specified by the devlib API so this should be generic. This loses the extra information that is currently stored in the EnergyCounter object, however that object is not currently exposed by the API and is undocumented. So let's remove it. When we need that information again, we can get it from pandas much more easily. Remove the use of `time`, as it assumes that the energy meter can be started and stopped instantaneously, this is not trustworthy.
/external/lisa/libs/utils/energy.py
|
9519e7b330b502564fd4ce0d361559c38d03a6c5 |
|
24-Apr-2017 |
Juri Lelli <juri.lelli@arm.com> |
libs/utils/energy: Fix error reporting for missing hwmon channel For some platforms (e.g., JunoR2) channel labels in the energy report might differ from channel names, and this raises a runtime error (even if energy is correctly reported). Fix it by always use channel labels. Fixes: a41a48dfabb7 ('libs/utils/energy: Slightly improve error for missing hwmon channel') Signed-off-by: Juri Lelli <juri.lelli@arm.com>
/external/lisa/libs/utils/energy.py
|
a41a48dfabb7a3b699d6dbdb5b9ba000cfbc8282 |
|
21-Mar-2017 |
Brendan Jackman <brendan.jackman@arm.com> |
libs/utils/energy: Slightly improve error for missing hwmon channel
/external/lisa/libs/utils/energy.py
|
c4c3fa1dd08bb604aa7a06905b8dce05b1088acf |
|
30-Jan-2017 |
Ionela Voinescu <ionela.voinescu@arm.com> |
utils/energy.py: call superclass init with res_dir For the ACME energy probe the init funtion call of the superclass did not specify the results directory so the sample file would go by default to /tmp/, where it might be overwritten if two tests are ran at the same time, where the channels used have the same channel descriptors. For safety, pass the res_dir to the init call and have the output file stored there before being moved to the specified output folder. Signed-off-by: Ionela Voinescu <ionela.voinescu@arm.com>
/external/lisa/libs/utils/energy.py
|
185476a4b146ebf73fabe7bbaa5a46a369ba2ce2 |
|
25-Jan-2017 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: do not requires a "conf" entry for iio-capture's defaults Make optional the "conf" section for iio-capture emeters setup in case the defaults are to be used. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
cbae4bb727d9c8277db6318746386f4874e8043f |
|
25-Jan-2017 |
Juri Lelli <juri.lelli@arm.com> |
libs/utils/energy: fix initialization of ACME ACME energy meter supports multiple channels and initialization of such channels uses a map that associates a channel id with a human understandable name. The current code translate this information to a fixed length array and this causes a problem if devices ids are not contiguous or if not all devices are in use, e.g. "channel_map" : { "Device1" : 1, # iio:device1 } Keep the map association as is by using a dictionary instead of an array.
/external/lisa/libs/utils/energy.py
|
e49241fa42a7e95a3e19ab9f61bc7869a47e5c63 |
|
03-Nov-2016 |
Zhifei Yang <zhifei.yang@arm.com> |
Remove juno/juno2 distinction All Juno boards now have the same hwmon setup, so we don't need the juno/juno2 distinction any more.
/external/lisa/libs/utils/energy.py
|
c278c2343c7f25083a80cb164b6bdc761d50050b |
|
22-Nov-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs: use a more configurable logging strategy This is a big re-factoring which update all the logging statements to make use of a more sane and consistent configuration: - each module uses the same logger configuration but refers to a custom logger which has the same name of the module, this should allows a fine grained configuration of the loglevels for each module. - a new libs/utils/conf.py::LisaLogging class allows to load the configuration and customize the root logger level. - loggers are configured using a single logfile (logging.conf) which is provided by default in the LISA's root folder. Each logger can be configured to specify: - loglevel: INFO by default for all modules - output channels: console and logfile (lisa.log by default) for all modules - string format: the same by default for all modules If logging.conf does not specify a specific configuration for a logger, than the default logger configuration applies, which is the one defined by the "root" logger. Notebooks and LisaTest are required to call at least one time the LisaLogging::setup() method to properly intialize logging. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
88b722cb1714cd0c03791f7195c65a9a81d1e64d |
|
22-Sep-2016 |
Patrick Bellasi <derkling@gmail.com> |
libs/utils/energy: remove default hikey energy meters The HiKey boards do not have embedded energy counters, thus an external device is required. However, in case energy measurements are not required and the host is not configured to support AEP devices, then the initialization of the default energy meter fails complaining about the missing of the "caiman" tool. This failure can generate an exception in the TestEnv initialization. This patch remove the default energy meter for all these devices which requires external dependencies. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
f11bd8427e359e454dad50059ddde01d5902cbd2 |
|
16-Sep-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: show measured energy only in report() for AEP This is to make AEP meters consistent with the other energy meters. Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
767f0083b9ede32a3915fd275d349f8042e2cf56 |
|
16-Sep-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: show energy meters report in debug mode only Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
a85fa5c5c92b933b0603dfb4be73ad9e5f32b02a |
|
12-Aug-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: adapt AEP energy meter to the generic API Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
80ab3c5c3e53d68460b587c16f8711c6db16724c |
|
11-Aug-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: adapt ACME energy meter to the generic API Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
c71d17ef4041a9dc47c6a94bd42cd8f8f6841318 |
|
12-Aug-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: make energy meters API more generic Currently available energy meters provide different formats for the results, which makes the API not generic. This makes the HWMon energy meters return results with similar format as the ACME. A new attribute is introduced in the configuration dictionary called "channel_map" that allows to map a user-defined label to the energy meter-specific channel name. For example, in case of HWMon channel names are the strings specified as "sites". This way, when using the report() method, the user knows what is the label she should use to measuree energy from a given channel and allows compatibility of the code when using a different type of energy meter, by just changing the channel mapping. Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
66db41f52cad493ad30ae6de314ab39b0d15db6e |
|
12-Aug-2016 |
Michele Di Giorgio <michele.digiorgio@arm.com> |
libs/utils/energy: cosmetics for Energy Meters Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com>
/external/lisa/libs/utils/energy.py
|
6bfc3ba409b7e1a68ad6fc416a4978e2f161c335 |
|
08-Aug-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: add support for remote IIO energy probing Using the https://github.com/BayLibre/iio-capture utility to capture energy using the iio infrastructure. Suggested-by: Neil Armstrong (Renesas) <narmstrong+renesas@baylibre.com> Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
7b56cef545b03a60c2a9ff63f651663be2107974 |
|
03-May-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: AEP: add multi-channel support The ARM EnergyProbe (AEP) allows to monitor up to 3 channels but the current integration in LISA allows to sample only one channel. This patch removes that limitation and it allows to sample and report energy for all the available channels which have been configured by the user. A new EnergyCounter named tuple is used to keep track of the power and energy values computed for each channel. Moreover, the collected CSV file containing all the collected samples is saved in the results folder, named "samples.csv". This file can be used for example to plot and/or post process the collected energy values. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
704a24e2eff9bbe9abe564d96579561542fe7001 |
|
03-May-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: add support for user-defined configurations The configuration of an energy meter can requires the specification of a custom set of parameters. For example, using the ARM EnergyProbe (AEP) we may want to specify the values of a shunt resistor or which channels to use. This patch allows to specify an energy meter configuration, for example: "emeter" : { "instrument" : "aep", "conf" : { 'labels' : ['LITTLE', 'BIG'], 'resistor_values' : [0.099, 0.033], 'device_entry' : '/dev/ttyACM0', } Which configures two channels with different shunt values. If an "emeter" configuration section is not specified by the user, the default one is used, when hardcoded for the specifed board. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
664950ca6e87f88b879d8a455aced4adadca32c1 |
|
03-May-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: add support to specify a results folder Some energy probes can collect data, e.g. power samples, which are than usually used to compute the energy consumption. Collected power samples can be useful for example to plot the power consumption over time. This patch adds the required support to specify a results folder and emeter can use to collect samples data. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
16a0fc43287eb6ca4c40808482d935868e0490ca |
|
27-Apr-2016 |
Chris Redpath <chris.redpath@arm.com> |
lisa: Add support for new Hwmon node names with 'mainline' driver The names of the nodes for energy have changed - they are no longer of the form 'a53_energy' for the CPU clusters, but are now called 'BOARD_LITTLE_ENERGY'. Likewise, all the other sensor names are different but we don't monitor those in lisa. In order to support those, add a new device named juno2. Once both types are no longer in circulation, the names can be changed. Signed-off-by: Chris Redpath <chris.redpath@arm.com>
/external/lisa/libs/utils/energy.py
|
b90fc0fe2a857cbb343cc6a987cdce7306dba48c |
|
26-Feb-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: cosmetics Reports selected energy meters in a more readable way. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
87267394f63aad602a201701399787a9c0e5d796 |
|
17-Jan-2016 |
Dietmar Eggemann <dietmar.eggemann@arm.com> |
libs/utils/energy.py: Initial integration of AEP Energy Meter: This patch integrates the initial version of the ARM Energy Probe AEP Energy Meter class. The AEP delivers sample voltage, power and current values (10Khz). The AEP Energy Meter uses only the power sample values and calculates the energy value by multiplying the average power value with the time difference value between the call of the reset() and the report() method. Current limitations: - The AEP Energy Meter class is tailored to measure DIE energy on the Hikey board for now. - It implements only the reset() and report()(sample()) method (e.g. used by the eas rfc test: tests/eas/rfc.py). - It uses only AEP channel 1 (hardcoded). - It uses a hardcoded value for shunt resistor (33 mOhm). - It uses 'LITTLE' channel tag to let the existing tooling work with the Hikey board even though we actually measure DIE energy. The AEP Energy Meter operates on top of the devlib EnergyProbeInstrument which itself uses the caiman binary to operate the AEP. The EnergyProbeInstrument figures out if the caiman binary is not installed and issues an appropriate error message in this case on the host. This patch bases on an initial version by Leo Yan <leo.yan@linaro.org>. Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
/external/lisa/libs/utils/energy.py
|
e118f51827be7c36b5fa35e1d7142403a75eac34 |
|
18-Jan-2016 |
Dietmar Eggemann <dietmar.eggemann@arm.com> |
libs/utils/energy.py: Streamline self.readings calc in HWMon::sample() Tested with JUNO target. Signed-off-by: Dietmar Eggemann <dietmar.eggemann@arm.com>
/external/lisa/libs/utils/energy.py
|
b1e13e2bf8a625545fbad5ba14b04f25a2bb678e |
|
22-Jan-2016 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: report the start of HWMON scanning The scanning of HWMON channels performed by the devlib library could take some time during which we do not see any progress in the console. This patch adds an INFO statement to notice the user that a scanning is in progress. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
d95e98d88a6cf4347853427dc4ef6fd0222a3881 |
|
04-Dec-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
Add proper copyright headers to all the contributed sources Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
fcc87757294018cc86dfb96266fab66b972b6732 |
|
26-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: fix energy meter initialization If a board is not defined we cannot load the proper energy meter. This patch just return a None emter which will disable energy collection. Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
846d46aedc9b7ddb8a5e04b97c551e621429fec0 |
|
13-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: report clusters energy as a report output Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
0a7e0fdc8b0f8bcfaa1f14f27cfa89748db6df14 |
|
13-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: make energy report filename an optional parameter Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
e8355c2a1074e92a80c4c7eb2a9c7851819e4476 |
|
06-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: fix access to target object Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
f7dddcef4a841420a63fec452c7e64359ec473bf |
|
06-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: gracefully return with a warning in case HWMON is not loaded Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|
16d94fb008126d4c1957c07ee1a8138ea1d12e43 |
|
05-Nov-2015 |
Patrick Bellasi <patrick.bellasi@arm.com> |
libs/utils/energy: add energy meter factory class Signed-off-by: Patrick Bellasi <patrick.bellasi@arm.com>
/external/lisa/libs/utils/energy.py
|