summaryrefslogtreecommitdiffstats
path: root/doc
Commit message (Collapse)AuthorAgeFilesLines
* Updated ER-diagram and <area> title attribute.jasplin2010-04-301-0/+0
|
* Added save/load feature for index configs.jasplin2010-04-091-0/+0
| | | | | | It is now possible to save, load, and delete a performance index configuration (i.e. all the settings in the 'Index' section in the BM web app).
* Performance index - new approach.jasplin2010-03-261-0/+0
| | | | | | | | | | | | | | | | | | | | | This patch constitutes a slightly different and also simpler approach to computing the performance index. The hierarchical index structure is gone for now, and the index is computed essentially like this: 1: Specify a base timestamp BT. 2: Specify a set of evaluation timestamps ET. 3: Specify a window size for median smoothing. 4: Specify a set of filters to effectively narrow down the set of result histories that may contribute to the index (there are currently five separate filters: metric, platform, host, branch, and test case. Zero or more values may be specified for each one). 5: Evaluate the index at a given evaluation timestamp ET(i) by taking the arithmetic mean of the differences between the values at ET(i) and BT for the individual result histories. Both values are median-smoothed using a right-aligned window.
* Moved timestamp from snapshot to result.jasplin2010-03-191-0/+0
| | | | | | | | | | | | | | | | | | | | This patch moves the timestamp attribute from the snapshot table to the result table. This is done for two purposes: 1) Retrieving a pure result history (not including the SHA-1 values) becomes quicker, since a join is avoided (simply fetch all (timestamp, value) pairs matching a given BM context). 2) It constitutes the first of two steps towards supporting multiple result recordings per (SHA-1, BM context) combination (the other step will be to remove the current uniqueness constraint on that combination!). The (future) use case is to improve statistical confidence by e.g. taking the median value of the set of values for a certain (SHA-1, BM context) combination as the representative value for the combination.
* Performance index - initial version.jasplin2010-03-151-0/+0
|
* Performance index support: Reintroduced multiple index trees + implemented ↵jasplin2010-03-051-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | more commands. It turned out that we need to keep a time series of index trees for the performance index after all: There will be one base index tree (at timestamp -1, i.e. older than any result), and one index tree for the timestamps where the current index tree was changed (i.e. essentially one or more result histories and/or sub-indexes added or removed). The index is evaluated on the basis of the closest index tree earlier than the requested evaluation time. This ensures that the correct history constants are used. (The history constants in turn ensure continuity of the index values upon adding or removing result histories and/or sub-indexes). The following bmclient commands are implemented so far: - index set base - sets the index base from an XML file - index get tree - lists a certain index tree as XML - index get names - lists the available index names - index get values - evaluates an index at a set of timestamps; dumps the result to stdout - index get plot - same, except the result is plotted in an image - get result - verifies a result ID in the XML file
* Partial implementation of performance index support.jasplin2010-02-251-0/+0
| | | | | The performance index support does not work yet. It remains to implement the functions in indextree.cpp.
* Include result ID in history output.jasplin2010-02-232-4/+10
| | | | | | | | The output from the 'get history' command now includes the result IDs (i.e. the primary keys in the database). These IDs will be used to identify baseline results in the XML structure that represents the performance index hierarchy.
* Restructured the database schema.jasplin2010-02-033-204/+52
| | | | | | | | | | | | | | | | The most important change of this patch is a restructring of the database schema in order to better support current and future use cases. In particular, the 'result' table has been reduced in size (which is important since this table is the one that will grow on a regular basis), and a 'bmcontext' table has been introduced as an extra structural level that is expected to make certain queries faster than they would have otherwise been (due to reduced need for complex join expressions etc.).
* Obsoleted SHA-1 option in time ranges.jasplin2010-01-262-51/+22
| | | | | | | | | Time ranges are now specified using either Unix timestamps or 'first' or 'last'. The option of specifying a SHA-1 value was considered not to be particularly useful in practice. This option has therefore been obsoleted to simplify the code.
* Add support for negative result values.jasplin2010-01-132-120/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds support for negative result values to BM (thus allowing all real values). A typical use case for negative values is a benchmark that measures the difference between two implementations of the same problem/task. In order to support negative values, the formula for computing the relative difference between v1 and v2 has been changed from (a - b) / (b + 1) (or (a - b) / (a + 1) ) to (a == b) ? 0 : ((a - b) / max(|a|, |b|)) Note that adding 1 in the first formula was necessarry to allow for zero values. This is no longer needed. Note also that the new formula doesn't allow direct selection of the normalization base (i.e. the denominator), but rather automatically choosing the one with the largest magnitude. This is assumed not to be a problem, and also has the interesting property that the absolute value of the expression is bounded by 2. This patch also renames the term "current change" to "last difference".
* Added benchmark filters for 'get rankedbenchmarks' request.jasplin2009-12-222-6/+14
| | | | | | | | | The 'get rankedbenchmarks' request now considers only benchmarks matching a certain filter. E.g. specifying 'Graphics*' as the test case filter and '*' for the test function and data tag filters, ensures that only benchmarks with test cases beginning with "Graphics" will be processed.
* Improved interactive context selection.jasplin2009-12-223-1/+107
| | | | | | | | | | | | | | | | | | | | | | The context part of the configuration of a benchmark summary page may be interactively manipulated using HTML <select> menus for the individual components (metric, platform, host, and branch). This patch both speeds up the interactive selection and fixes a bug that caused the selection from going haywire (due to improper handling of asynchronous communication). This patch also involves a small visibility change: Rather than just hiding the non-matching options in each menu, all available values are now shown, but only the matching ones are selectable (i.e. enabled.). WARNING: Manipulating the disabled attribute of an <option> element doesn't seem to be supported by all web browsers.
* Obsoleted 'iterations' and added DB indexes.jasplin2009-12-143-34/+19
| | | | | | | | | | | | | | | | | | The most important change of this commit is that the 'iterations' component of the result value is gone. Now the result value represented by just the final real-valued result, rather than two integer components: (accumulated) result and number of iterations. NOTE: The old file format is still accepted, and when an iterations component is present, the result component will be divided by this one. The other significant change of this commit is that indexes are added to the database scheme to speed up queries. This only affects the 'initdb' command-line option, though.
* Updated online documentation.jasplin2009-12-041-5/+4
|
* Compare against branch 2 ++.jasplin2009-12-031-2/+2
| | | | | | | | | | | | | Branch 1 is now compared against branch 2 instead of vice versa. This seems to be more intuitive: Branch 1 is your main focus, and you want to check how it compares against another branch (100% corresponds to the latest result in branch 2, so -5% means that branch 1 is 5% better than branch 2 and so on). This patch also includes a few cosmetic changes, like swapping the sides for vertical labels in the plot (percentages are now shown on the right hand side).
* Added 'curr timestamp' to 'get history*' request.jasplin2009-12-011-7/+20
| | | | | | | | | Passing the current timestamp as an argument to the 'get history*' requests makes it possible to use the current time of the web browser as the observation time instead of the current time of the bmclient host. In general this makes more sense. (Pass -1 to use the local time of the bmclient host anyway).
* Improved support for 'details' pages.jasplin2009-11-302-7/+214
| | | | | | | | | | | | | | | | | | | | | | This change improves the support for 'details' pages in several ways: - The page is generated on the server side (i.e. by bmclient) instead of in the browser. - The page is refered to by a stand-alone URL that can be opened to regenerate the page. - The plot (showing the history graph(s)) and table is shown in the same page. - The plot is generated directly as a PNG image by Qt graphics view instead of by the HTML <canvas> tag. - When comparing two branches, the history graphs for both branches appear in the same plot for easy comparison. (The time scale may be shared or not!) Moreover, the history values for both branches are shown next to each other in two tables.
* Added support for zero valued results.jasplin2009-11-171-15/+28
| | | | | | | | This patch removes the assumption that benchmark results are always positive. Some metrics, like the 'events' metric, may produce zero valued results. To support zero values, the ratio between two results r1 and r2 is expressed as (r1 + 1) / (r2 + 1) instead of just r1 / r2.
* Added new request types.jasplin2009-10-292-73/+542
| | | | | | | | | This commit essentially adds the following request types: - get rankedbenchmarks - get rankedbenchmarks2 - get stats Plus a lot of other (minor) modifications.
* Minor stuff.jasplin2009-10-151-1/+1
|
* Updates to doc ++.jasplin2009-10-156-12/+235
|
* Renamed files and directories.jasplin2009-10-102-27/+27
|
* Lot's of changes.jasplin2009-10-052-36/+143
|
* Implemented file comparison.jasplin2009-09-251-6/+72
| | | | #Please enter the commit message for your changes. Lines starting
* Added file.jasplin2009-09-111-0/+1392
|
* Implemented 'Trend' column.jasplin2009-09-091-9/+27
|
* Initial (and partial) implementation of the web interface.jasplin2009-09-081-15/+128
|
* Removed 'get trend' command and instead added size & tolerance to the 'get ↵jasplin2009-08-312-63/+40
| | | | | | | history' command. Adding size and tolerance to the 'get history' command effectively eliminates the need for a 'get trend' command (for now).
* Updates.jasplin2009-08-282-4/+4
|
* Implemented extraction of git values from given git dir.jasplin2009-08-282-4/+4
|
* Renamed API so that all commands/requests are either 'put ...' or 'get ...'.jasplin2009-08-283-195/+121
|
* Refactorings and updates.jasplin2009-08-271-28/+81
|
* Change 'add -results' command to auto-insert missing values.jasplin2009-08-263-243/+10
| | | | | | | | When adding new results to the database, any missing values (such as test case, host etc.) should be automatically inserted. This also eliminates the need for the commands/requests for explicitly adding benchmarks, metrics, platforms, hosts, and branches.
* Minor stuff + added separate doc for client program.jasplin2009-08-262-10/+431
|
* Compacted description into a table.jasplin2009-08-251-242/+326
|
* Added overall architecture and use cases.jasplin2009-08-251-0/+4021
|
* Implemented more commands.jasplin2009-08-192-2/+2
| | | | | | The following commands are now implemented: add <all> list -snapshots
* Converted protocol to simpler XML structure.jasplin2009-08-171-521/+264
|
* Updates.jasplin2009-08-172-166/+167
|
* Updates.jasplin2009-08-132-65/+150
|
* Updates.jasplin2009-08-132-20/+63
|
* Updates.jasplin2009-08-132-83/+214
|
* Added misc notes.jasplin2009-08-121-0/+91
|
* Allowed for independent existence of branches and platforms.jasplin2009-08-121-0/+0
|
* Made a few simplifications.jasplin2009-08-121-85/+57
|
* Added some more description.jasplin2009-08-121-0/+21
|
* Replaced the current protocol spec with a more detailed one.jasplin2009-08-122-230/+541
|
* Updated documentation.jasplin2009-08-112-0/+230
| | | | In particular, a tentative protocol specification (bmcp.txt) has been added.
* Added timestamp.jasplin2009-08-072-0/+0
|