Is it implemented or not yet?
I downloaded JMeter 5.4.1 and added property
"backend_metrics_percentile_estimator = R_3" in user.properties
Still same results.

[image: image.png]

[image: image.png]

On Thu, Jun 3, 2021 at 11:43 PM Felix Schumacher <
felix.schumac...@internetallee.de> wrote:

>
> Am 03.06.21 um 20:10 schrieb Deepak Chaudhari:
>
> Thank you very much for your reply.
> Will it be in user.properties?
> Do we need to install the latest JMeter version to reflect the changes?
>
> A build from trunk can be found at
> https://ci-builds.apache.org/job/JMeter/job/JMeter-trunk/
>
> Yes, the property can be set via user.properties.
>
> Felix
>
>
> On Thu, Jun 3, 2021 at 11:14 PM Felix Schumacher <
> felix.schumac...@internetallee.de> wrote:
>
>> You might find https://bz.apache.org/bugzilla/show_bug.cgi?id=65353
>> interesting.
>>
>> With the next nightly build or build from trunk, you should be able to use 
>> the new property "backend_metrics_percentile_estimator" with a value of 
>> "R_3" to lessen the difference between both reports. But keep in mind, that 
>> the HTML Report use a sliding window, while the Aggregate Report does not 
>> (and will eventually OOM).
>>
>> Felix
>>
>>
>> Am 03.06.21 um 17:46 schrieb Deepak Chaudhari:
>>
>> I need to send both the reports to the client and surely the question
>> will come "Why is there so much difference?"
>> If there is any way with which we can generate almost similar aggregate
>> and HTML reports?
>>
>> On Thu, Jun 3, 2021 at 9:00 PM Felix Schumacher <
>> felix.schumac...@internetallee.de> wrote:
>>
>>> Without the actual data it is impossible to say, if the reports are
>>> wrong, or if they follow different ways to calculate a percentile.
>>>
>>> The problem here is, that the two reports are using different algorithms
>>> to calculate the percentiles. We are working with discrete numbers and here
>>> a percentile is more like a range than a single (correct or wrong) number.
>>> Say, you have the values [1, 2, 4, 8, 16, 32, 64, 128, 256, 512] want to
>>> calculate a 90% percentile. For this you take any number that splits the
>>> (sorted) list into two lists, where one list has all elements, that are
>>> smaller (or equal) to the number and one list contains all elements that
>>> are bigger than the number. For this example, any number between 256 and
>>> 511.99 would be a valid 90% percentile. (that is of course a broad
>>> description only)
>>>
>>> The Aggregate report currently uses a memory intensive way and stores a
>>> list with all values and picks the smallest number, that fits the above
>>> description. (This memory hogging behaviour should be fixed and would lead
>>> to less accurate data and less OOMs or slow JMeter instances)
>>>
>>> The HTML report gives you a value that would probably be a good 90%
>>> percentile, if you would have more data like the one, you already have by
>>> picking some value between the lower bound and the upper bound of the
>>> described range (in our example something between 256 and 511.999).
>>>
>>> As your report has very few samples (21 for the biggest difference in
>>> the numbers), the skew between the reported percentiles can look big, but
>>> are not necessarily wrong.
>>>
>>> Note, that if the numbers that both reports tell you are far apart, that
>>> is probably a sign of having either too few samples, or the samples
>>> (durations of the samples) are distributed sparsely near the  percentile
>>> ranges.
>>>
>>> We have discussed in the past to use the same algorithm for both
>>> components, so that you get consistent values, but there were always other
>>> issues, that seemed to be more important.
>>>
>>> Felix
>>> Am 02.06.21 um 15:28 schrieb Deepak Chaudhari:
>>>
>>> Hi,
>>>
>>> I collected JTL file during a test run and using that I'm generating
>>> HTML report and aggregate report. When I compare aggregate and HTML reports
>>> I found that 90th and 95th percentile values are wrong in HTML report.
>>> I tried to change "jmeter.reportgenerator.statistic_window" value in
>>> user.properties but still getting wrong values.
>>>
>>> *Aggregate report:*
>>> [image: image.png]
>>>
>>> *HTML report:*
>>> [image: image.png]
>>>
>>>

Reply via email to