Sample time with "inverted" histogram?
Aleksey Shipilev
aleksey.shipilev at oracle.com
Mon Jan 11 12:54:23 UTC 2016
Hi Chris,
On 11/27/2015 07:08 PM, Chris Vest wrote:
> I sometimes find myself wishing the sample time benchmark mode had an “inverse” histogram, because I find that this makes it easier to spot when response times are modal.
>
> To demonstrate what I mean, the current histogram output looks like this: (numbers are fictive)
> Samples, N = 3184
> mean = 2.531 ±(99.9%) 0.014 us/op
> min = 0.119 us/op
> p( 0.0000) = 0.119 us/op
> p(50.0000) = 2.420 us/op
> p(90.0000) = 2.644 us/op
> p(95.0000) = 2.816 us/op
> p(99.0000) = 4.408 us/op
> p(99.9000) = 13.152 us/op
> p(99.9900) = 36.901 us/op
> p(99.9990) = 254.240 us/op
> p(99.9999) = 260.864 us/op
> max = 260.864 us/op
>
> And I would like a configuration option that would make it look more like this: (numbers even more fictive)
> Samples, N = 3184
> mean = 2.531 ±(99.9%) 0.014 us/op
> min = 0.119 us/op
> us/op = samples added in increment
> 1 = 1081
> 2 = 194
> 4 = 959
> 8 = 357
> 16 = 3
> 32 = 3
> 64 = 118
> 128 = 410
> 256 = 58
> 512 = 1
> This way, I can more easily see that the numbers in my made-up
> example fall into 2 or 3 groups. When I have needed something like
> this, I have thus far reached for HdrHistogram and its
> LogarithmicIterator, and the
> HistogramIterationValue.getCountAddedInThisIterationStep method.
It might be worthwhile to explore. JMH's SampleBuffer is recording the
HDR data, so those histogram values are available. Therefore it is a
question of presentation: maybe print the histogram alongside with
quantiles?
Thanks,
-Aleksey
More information about the jmh-dev
mailing list