summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorLines
2021-02-18pelt: Set minimum penalty to 1, improve cache layoutDaniel Friesel-11/+19
2021-02-18pelt: add tail substateDaniel Friesel-3/+5
2021-02-18pelt: cache changepoint detection resultsDaniel Friesel-5/+65
2021-02-18refactor model generation from Analytic/PTAModel into ModelAttribute classDaniel Friesel-702/+600
Iteration over states/transitions and model attributes is no longer hardcoded into most model generation code. This should make support for decision trees and sub-states much easier.
2021-02-15pelt: Fix stretch != 1 supportDaniel Friesel-2/+4
2021-02-15loader: energytrace: add timestamps to support dataDaniel Friesel-1/+6
2021-02-15debug outputDaniel Friesel-8/+15
2021-02-15Limit PELT via --with-substates=name_filter=state_or_transition_nameDaniel Friesel-12/+13
2021-02-15needs_refinement: short traces cannot be reliably refinedDaniel Friesel-1/+3
2021-02-12PELT: use variable penalty for benchmark repetationsDaniel Friesel-40/+64
Previously, the first measurement of each by_param entry determined its penalty, and all subsequenc measurements in it were analyzed with this penalty. This lead to some of them coming up with a different number of sub-states and being ignored. Now, all by_param entries are passed to the kneedle / plateau algorithm, and each gets its own penalty. In most cases, this leads to all entries rporting the same number of sub-states, so far less need to be ignored.
2021-02-12Add support data (e.g. power traces) for transitions too. Fixes plots and PELT.Daniel Friesel-1/+1
2021-01-20greedy drift compensation: Handle left corner case as well. Oops.Daniel Friesel-2/+11
2021-01-19additional debugging outputDaniel Friesel-1/+16
2021-01-19fix off-by-one in graph-based drift compensationDaniel Friesel-1/+1
the bug manifested whenever a "transition end" node was chosen
2021-01-19sort keys before bisectDaniel Friesel-1/+1
2021-01-19greedy drift compensation: handle edge casesDaniel Friesel-2/+8
2021-01-19drift compensation: use PILT min_dist=1Daniel Friesel-1/+1
2021-01-19greedy drift compensation: consider transition start vs end when syncingDaniel Friesel-46/+38
2021-01-18re-add greedy drift compensation heuristicDaniel Friesel-3/+86
2021-01-18drift compensation: a candidate may refer to transition start or endDaniel Friesel-39/+69
There's still a major bug somewhere, right now results are sub-par
2021-01-18energytrace drift compensation: allow arbitrarily long skipsDaniel Friesel-29/+33
2021-01-18energytrace drift compensation: stretch datapointsDaniel Friesel-1/+3
2021-01-18drift_compensation_grpah: handle node skips at the tailDaniel Friesel-0/+9
2021-01-18refactor graph-based drift compensation into a separate functionDaniel Friesel-1/+12
2021-01-18Fix a typoDaniel Friesel-1/+1
2021-01-18EnergyTrace loader: show offline_index in debug and error outputDaniel Friesel-8/+23
2021-01-15pelt: add stretch parameterDaniel Friesel-0/+20
2021-01-15pelt: Fix Dynp supportDaniel Friesel-1/+5
2021-01-14add anoter todo entryDaniel Friesel-0/+3
2021-01-14energytrace drift compensation: handle arbitrarily long detection failuresDaniel Friesel-19/+6
2021-01-14energytrace drift compensation: partially handle lack of candidatesDaniel Friesel-2/+4
2021-01-14energytrace drift compensation: Handle undetected transitionsDaniel Friesel-5/+76
2021-01-14EnergyTrace drift compensation: optimize via shortest pathsDaniel Friesel-72/+88
Right now performance is worse than the previous greedy approach as the dijkstra variant does not take into account that a transition may be missing from the set of detected changepoints (i.e., it assumes that the set of detected changepoints contains the transition timestamp, which is not always the case). This will be fixed in the next commit by adding nodes for the expected transition timestamp (with a slightly higher weight to ensure there are no proper nodes in the vicinity) -- or something similar.
2021-01-13improve html/markdown export detail levelDaniel Friesel-1/+63
2021-01-13pelt: Allow overrides via environment variablesDaniel Friesel-4/+23
2021-01-13EnergyTrace loader: remove bogus tail sync data as wellDaniel Friesel-7/+14
2021-01-12add a TODO entrDaniel Friesel-1/+4
2021-01-12add z-score based outlier detection and optional removalDaniel Friesel-2/+56
Note that outliers are removed from both training and evaluation data
2021-01-12plotter: print notice when exporting plotsDaniel Friesel-0/+3
2021-01-12analyze-archive: print param dependence for transition durationsDaniel Friesel-1/+7
2021-01-11evaluate E = P*t model. Seems slightly better in some casesDaniel Friesel-1/+30
TODO: Fix send duration model generation for cc1200, should improve eval
2021-01-11analyze-archive: show transition energy via power * durationDaniel Friesel-0/+21
2021-01-08bin/analyze-archive, tests: use transition power, not energyDaniel Friesel-51/+191
2021-01-08work around missing W_mean_delta_prev in first energytrace+barcode transitionDaniel Friesel-0/+5
2021-01-08model transition power, not energyDaniel Friesel-21/+54
in contrast to duration/energy, duration/power are independent
2021-01-08gracefully handle zbar unavailabilityDaniel Friesel-1/+8
2020-12-16loader: fix off-by-one in energytrace++ state changesDaniel Friesel-1/+2
2020-12-15add proof of concept for EnergyTrace++ based drift compensationDaniel Friesel-4/+61
2020-12-15support benchmarks with EnergyTrace++Daniel Friesel-3/+11
2020-12-15dataprocessor: export drift compensation dataDaniel Friesel-0/+14