jmeter-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Philippe Mouawad <p.moua...@ubik-ingenierie.com>
Subject Improve our percentiles computation
Date Wed, 15 May 2019 15:28:09 GMT
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>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message