Hello,
I'll start with my team the development of a switch to better percentiles
computation which will end as a PR contribution.
To recap previous discussions:
- We have currently 2 implementations of Percentiles :
- A custom one used in old listeners
- A new one based on commons-math
- CONS:
- It impacts maintainability as a consequence
- The results are different which confuses users
- Percentiles are not explicitly documented regarding the algorithm
used which also creates confusion :
- https://github.com/apache/jmeter/pull/295
- https://github.com/apache/jmeter/pull/296
- Benefits:
- Have one algorithm in codebase
- Rely on best percentile algo for our use case
- Rely on performing and reliable library HdrHistogram/LatencyUtils
- Improve CO handling
- PREVIOUS ACTIONS:
- It was agreed that switching to HdrHistogram was a good option. This
library is a standard now:
- Used in MicroMeter (used by Spring)
- Used in future JMC
https://mail.openjdk.java.net/pipermail/jmc-dev/2019-May/000984.html
- Felix started a PR:
- https://github.com/apache/jmeter/pull/380/files
- Vladimir mentioned LatencyUtils in this PR:
- Used in MicroMeter
- Based on Gil Tene work who is master of CO related issues as
long as other titles
*PROPOSED ACTION PLAN:*
- We'll start our work using LatencyUtils which seems interesting as it
provides a PauseDetector which will be useful in our case
If you have any note on this, feel free to add your ideas in this thread.
Regards
Philippe M.
UbikLoadPack Team
<https://www.openstreetmap.org/#map=18/50.69454/3.16455>