What can cause discrepancies in reported KPI values?
Symptom:
I am viewing the kpi.jtl metrics in the Aggregate Report listener in a local JMeter for the same label, and the report does not match the metrics shown in BlazeMeter's reporting. Why?
Reason:
The percentiles might not always match exactly between JMeter and BlazeMeter because the library Taurus uses to measure response times (HDRHistogram) sacrifices some precision for memory efficiency.
The average response time is calculated based on actual data points, so the value is the same in both JMeter and BlazeMeter. However, percentiles are calculated differently by HDRHistogram.
Instead of counting all values individually, the library uses buckets to aggregate the data. Each bucket represents a range of values, and as the numbers get larger, more data points fall into the same bucket. This approach saves memory while still maintaining an acceptable level of approximate deviation.
The deviation depends on the configuration of the HDRHistogram and can range from about 10% to 0.001%. For Taurus, the default configuration uses a 0.1% deviation.