Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-6291

Performance regression between 7.52.0.Beta1 and Final

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • 7.52.0.Final
    • core engine
    • None
    • 2021 Week 16-18 (from Apr 19)
    • Hide

      The source code for the JMH benchmark used to obtain these results can be found here:
      https://github.com/triceo/optaplanner-score-director-benchmark/tree/752

      Attached are async profiler flamegraphs for all the runs.

      Show
      The source code for the JMH benchmark used to obtain these results can be found here: https://github.com/triceo/optaplanner-score-director-benchmark/tree/752 Attached are async profiler flamegraphs for all the runs.
    • Undefined
    • NEW
    • NEW

      There appears to be a performance regression that showed up between 7.52.0.Beta1 and Final, on the OptaPlanner Cloud Balancing example:

        Beta1 Final Diff
      CS-D 197763 181622 - 8 %
      DRL 206996 205583 - 1 %*

      At the same time, the Machine Reassignment experienced a significant improvement:

        Beta1 Final Diff
      CS-D   12005   14176 + 18 %
      DRL   11655   11956 + 3 %

      Numbers in operations per second, on otherwise quiet hardware.
      Asterisk ( * ) indicates results within the margin of error of the benchmark.

      Some possible clues:

      • Both examples make heavy use of groupBy, with DRL only using accumulate.
      • Cloud Balancing is pretty much only groupBy.
      • Machine Reassignment is the only example to use nested groupBy.

              mfusco@redhat.com Mario Fusco
              lpetrovi@redhat.com Lukáš Petrovický (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated:
                Resolved: