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

Jochen Theodorou updated GROOVY-11842:
--------------------------------------
    Description: 
As can be seen in the IndyInterfaceUsageTest there is a stack trace element 
showing IndyInterface.  This is bad for inlining and general performance.

  !improved_indy.svg!

of course a programm like 
{code:Java}
  int foo(){1}
  int a
  for (int i=0; i<MAX; i++) {
   a = foo()
  }
{code}
is not much of a test for anything. It was supposed to show better inlining, 
but unlike Groovy 3 all later Groovy version fail to unroll the loop and 
eliminate the assignment to a for later executions. The graph though shows that 
the branch performance is better than Groov 3 or 4. Not only in the long run, 
but also on start. 

  was:
As can be seen in the IndyInterfaceUsageTest there is a stack trace element 
showing IndyInterface.  This is bad for inlining and general performance.

 [^improved_indy.svg] 


> Invokedynamic first invocation should not have a line with IndyInterface
> ------------------------------------------------------------------------
>
>                 Key: GROOVY-11842
>                 URL: https://issues.apache.org/jira/browse/GROOVY-11842
>             Project: Groovy
>          Issue Type: Improvement
>            Reporter: Jochen Theodorou
>            Priority: Major
>         Attachments: improved_indy.svg
>
>
> As can be seen in the IndyInterfaceUsageTest there is a stack trace element 
> showing IndyInterface.  This is bad for inlining and general performance.
>   !improved_indy.svg!
> of course a programm like 
> {code:Java}
>   int foo(){1}
>   int a
>   for (int i=0; i<MAX; i++) {
>    a = foo()
>   }
> {code}
> is not much of a test for anything. It was supposed to show better inlining, 
> but unlike Groovy 3 all later Groovy version fail to unroll the loop and 
> eliminate the assignment to a for later executions. The graph though shows 
> that the branch performance is better than Groov 3 or 4. Not only in the long 
> run, but also on start. 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to