Closed clansley closed 8 years ago
Ignore me - I see it does not actually use HDR_histogram for calculating the corrected value :) But instead takes the start time as the time it should have started (on that thread) rather than the actual start time - which appears to be better than if it had used hdrhistograms recordValueWithExpectedInterval.
IIRC, a corrected histogram injects additional values between the higher observed value and the expected interval. So it makes sense that the p100 of the uncorrected histogram should be the same as the p100 in the corrected version. I've played with HDRHistogram in java and it does appear to behave as I expect, but wrk2 sometimes produces corrected p100s much higher than the uncorrected version.
Final few lines of the corrected version: 2306.047 1.000000 691130114 447392431.11 2306.047 1.000000 691130114 536870912.00 2306.047 1.000000 691130114 596523251.36 2306.047 1.000000 691130114 671088630.00 2308.095 1.000000 691130115 766958458.78 2308.095 1.000000 691130115 inf
[Mean = 1.335, StdDeviation = 4.240]
[Max = 2306.048, Total count = 691130115]
[Buckets = 27, SubBuckets = 2048]
Final few lines of the uncorrected version: 201.471 1.000000 691130114 383479229.39 201.471 1.000000 691130114 447392431.11 201.471 1.000000 691130114 536870912.00 201.471 1.000000 691130114 596523251.36 201.471 1.000000 691130114 671088630.00 203.775 1.000000 691130115 766958458.78 203.775 1.000000 691130115 inf
[Mean = 0.483, StdDeviation = 0.758]
[Max = 203.648, Total count = 691130115]
[Buckets = 27, SubBuckets = 2048]
[The command line used was: wrk -t5 -c32 -d24h -R8000 -U -sSCRIPT URL DATAFILE version string: wrk 4.0.0 [epoll] Copyright (C) 2012 Will Glozer]