You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@groovy.apache.org by "Paul King (Jira)" <ji...@apache.org> on 2020/09/08 02:08:00 UTC

[jira] [Updated] (GROOVY-9715) Groovy Benchmark Tests and Performance Tracking

     [ https://issues.apache.org/jira/browse/GROOVY-9715?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Paul King updated GROOVY-9715:
------------------------------
    Priority: Minor  (was: Blocker)

> Groovy Benchmark Tests and Performance Tracking
> -----------------------------------------------
>
>                 Key: GROOVY-9715
>                 URL: https://issues.apache.org/jira/browse/GROOVY-9715
>             Project: Groovy
>          Issue Type: New Feature
>            Reporter: Suminda Dharmasena
>            Priority: Minor
>
> Despite Groovy being a dynamic language I believe it can still compete with other JVM languages on performance. One main step would be to track the performance of features as part of the testing and also in comparison to other languages.
>  
> Also though dynamic in feel, most of the dynamic effects can be deduced at compile time especially when using @CompileStatic. So the scope of this feature can be expanded so there is no difference between when using it or without it, i.e., monkey matching can become available in static code.
>  
> Also, in static code, more optimisations can be done like those found in: [https://github.com/dotty-linker/dotty] where whole program optimisations and library-specific optimisations are done.
>  
> Also, eliminate unnecessary runtime casts and checks in the generated byte code.
>  
> Also, use techniques like those used in GraalVM to optimise bytecode in runtime.
>  
> Also, be friendly towards Google R8/D8 and ProGuard though ideally optimally compiled code would not have any more room to optimise.
>  
> Regularly post on performance and performance improvements to communicate the commitment to performance improvements to the larger community.  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)