Raw data output
Petr Stefan
ptr.stef at gmail.com
Tue Jun 28 11:19:54 UTC 2016
Hi.
> Depending on the scenario I need to benchmark, I choose the benchmark mode.
> I would find it very limiting to be restricted to one, by some additional
> tooling.
>
> Maybe you want to share some benchmarks and discuss about that?
We are developing a tool, that collects benchmarking data, processes
them and saves them depending on version (like git commit). Then you can
specify some SPL formula (if you're interested, look at papers here
http://d3s.mff.cuni.cz/research/development_awareness/#performance-testing)
and evaluate it on top of the data. Typical use case is that you don't
want your code to slow down, so your formula will reflect this
requirement and our tool will find regressions in your code between
commits. This is too big piece of code (and probably little
out-of-topic) to nicely fit into JMH, so we want to get raw data out of
JMH and process them ourselves.
> Just for the record: I am not the author of JMH, that is Aleksey Shipilev.
> I am a humble user, just as you.
Sure, thanks for your opinion. We're looking forward to hear some
comments from author, too.
> In my opinion, the current JSON contains lots of different data, so I would be tempted
> to say it is actually meant to include "everything". Extending it in a compatible
> way should be possible.
>
> My personal preference would be to have an output which contains every peace of gathered
> information, so I can archive it and get back later and extract more things as I need it.
>
> Maybe you can show an example JSON output that you currently get from the existing
> output and make a proposal what additional values should be included?
> It is easier to discuss some data output or format with some examples.
It's a big question how to represent the raw data. If you print all the
values one by one into current JSON file, you'll get huge amount of
numbers per iteration (like tens of thousands). In our patch we're
printing the values as pairs of value and quantity, which seems to be
more space saving. Also, our JSON format has no preatty indentation,
which adds a lot of spaces per line. However we don't want custom binary
format, because it's hard to check it by hand.
> For Aleksey beeing able to accept your patches you need to sign the Oracle Contributor
> Agreement. Take a look at http://openjdk.java.net/contribute/
I think we could deal with the author when necessary. Thanks for mentioning.
Cheers,
Petr
More information about the jmh-dev
mailing list