-
Add Batch Mode. Run all of your suites' BMs with the results-per-suite saved automatically. (example)
-
Bugfix: score error/confidence was being calculated incorrectly for ops/sec
-
You can now configure the {warmup,measurement} {iterations,durations} in the GUI
-
JMH JSON output
- Fix performance issue
- Replace spaces with underscores in parameter names (jmh-visualizer doesn't like spaces)
- Retain full precision of stats
-
JMH Text output
- Rename
Runs
toCnt
in text output to match JMH - Order results by BM first, and then params
- Rename
-
CSV output
- Retain full precision of stats
- Order results by BM first, and then params
-
JMH likeness
- Simplify how engine records stats for better performance
- The
Runs
column in results now shows iterations just like JMH (as opposed to total executions)
-
Filenames
- Add new field
.resultFilenameWithoutExt
toGuiOptions
so that you can customise filenames - By default, when compiled with
fastOptJS
we now inject"fastopt"
into result filenames
- Add new field
-
API
-
You can now (optionally) specify your own
GuiOptions
when starting the BM GUI -
Allow configuration of result columns and formats via a new option in
GuiOptions
calledbmResultFormats
Eg. this will swap around the default of
T/op
andops/sec
, so thatops/sec
:- is first in the table
- is what appears in the graph
- is the primary stat in JMH Text, JMH JSON, and CSV output
GuiOptions.default.copy( bmResultFormats = ctx => Vector( BmResultFormat.chooseOpsPerTime(ctx), BmResultFormat.chooseTimePerOp(ctx)))
-
Add
GuiParams.combineN
for N in 2 ~ 22 -
Add
GuiParams.tupleN
for N in 2 ~ 22 -
Deprecate
GuiParams.two
in favour ofGuiParams.combine2
-
Big refactor. Most of it is internal, but it does change a few things affecting public API:
MenuComp
=>GuiBuilder
MenuComp.routerCfg
=>GuiBuilder.router
MenuComp.LayoutCfg
=>LayoutConfig
MenuComp.UrlFrag
=>UrlFrag
-
Remove code deprecated in v0.2.0
-
find . -type f -name '*.scala' -exec perl -pi -e '
s/\bGuiParams.two\( *Iso[ .]+?id.*?, *(.+)\)/GuiParams.tuple2(\1)/;
s/\bGuiParams.two\((.+?) *, *(.+)\)/GuiParams.combine2(\1)(\2)/;
s/\bMenuComp.routerCfg\b/GuiBuilder.router/g;
s/\bMenuComp.LayoutCfg\b/LayoutConfig/g;
s/\bMenuComp.UrlFrag\b/UrlFrag/g;
s/\bMenuComp\b/GuiBuilder/g;
' {} +