danielsun1106 commented on issue #1135: GROOVY-8298: Slow Performance Caused by 
Invoke Dynamic
URL: https://github.com/apache/groovy/pull/1135#issuecomment-571961230
 
 
   @blackdrag 
   Jochen, I measured the performance of cs, indy1 and indy2 with JMH ( 
https://github.com/danielsun1106/benchmark-labs ), the result is shown as 
follows.
   As we can see, the performance of indy2 is improved a lot:
   
   Benchmark |indy2 VS indy1 | indy2 VS cs
   ---- | ---- | ----
   CallsiteBench.dispatch_megamorphic | 3675% | 25.83%
   CallsiteBench.dispatch_monomorphic | 5.72% | 188.62%
   CallsiteBench.dispatch_polymorphic | 3000% | _-17.11%_
   
   **indy2:**
   ```
   Benchmark                            Mode  Cnt     Score    Error   Units
   CallsiteBench.dispatch_megamorphic  thrpt   15   151.552 ±  2.157  ops/ms
   CallsiteBench.dispatch_monomorphic  thrpt   15  4768.491 ± 41.386  ops/ms
   CallsiteBench.dispatch_polymorphic  thrpt   15   155.040 ±  7.380  ops/ms
   ```
   
   **indy1:**
   ```
   Benchmark                            Mode  Cnt     Score    Error   Units
   CallsiteBench.dispatch_megamorphic  thrpt   15     3.914 ±  0.462  ops/ms
   CallsiteBench.dispatch_monomorphic  thrpt   15  4510.525 ± 46.702  ops/ms
   CallsiteBench.dispatch_polymorphic  thrpt   15     5.283 ±  0.325  ops/ms
   ```
   
   **cs:**
   ```
   Benchmark                            Mode  Cnt     Score    Error   Units
   CallsiteBench.dispatch_megamorphic  thrpt   15   119.447 ± 45.829  ops/ms
   CallsiteBench.dispatch_monomorphic  thrpt   15  1651.584 ± 39.724  ops/ms
   CallsiteBench.dispatch_polymorphic  thrpt   15   186.763 ± 14.549  ops/ms
   ```
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to