I have analyzed groovy performance in my multi threaded, cpu and memory intensive, non-network related, proprietary application. Graph attached.
The attached graph depicts 10 runs using
Java openjdk 17.0.9 2023-10-17 LTS. Each peak in the graph shows the start of a run, which then stabilizes in a downward trending slope and ends when stopping the application. After which starts a new run with a new peak. There are 10 peaks/runs, each with Groovy versions 3.0.19, 3.0.20, 4.0.2, 4.0.3, 4.0.4, 4.0.5, 4.0.6, 4.0.7, 4.0.8, 4.0.9.
Between 4.0.6 to 4.0.7 there is a collapse in performance as shown in the attached graph
which persists up until the latest version of 4.0.17.
This means that all Groovy versions of 4.0.7 an above are useless in the application.
Is there some specific change between 4.0.6 and 4.0.7 that might help explain why this issue was introduced? Maybe some feature in the language that one might want to avoid for example?
Is anyone aware of this performance collapse?
Thank you