Re: About the performance of indy

2020-01-09 Thread Jochen Theodorou
Am 08.01.20 um 22:37 schrieb MG: These results look great, Daniel G-) With regards to nomenclature: What is your definition of megamorphic as compared to polymorphic ? The web does not seem to be in complete agreement on these terms - I assume you are referring to the number of call site cache

Re: About the performance of indy

2020-01-09 Thread Daniel.Sun
Hi Jochen, I am still thinking about how to improve indy performance further in the method overload cases, e.g. ``` def same(String obj) { return obj } def same(int obj) { return obj } def same(float obj) { return obj } for (int i = 0; i < 10; i++) { [1, 1.0f, '1.0'].each { same(it

Re: About the performance of indy

2020-01-09 Thread Daniel.Sun
The PR#1135[1] implements the PIC for Groovy indy. As the book "Efficient Polymorphic Calls" said[2], "If a send is megamorphic(invokes many different methods), it cannot be handled efficiently by PICs. Fortunately, such sends are the exception rather than the rule.", so I will not spend more