On Sun, Dec 29, 2019 at 10:22 AM Brian Harris <brianfromore...@gmail.com>
wrote:

> Hello!
>
> I was hoping to get one point of clarification about avoiding megamorphic
> call sites, after reading these excellent articles:
>
>
> http://www.insightfullogic.com/2014/May/12/fast-and-megamorphic-what-influences-method-invoca/
>
> https://shipilev.net/blog/2015/black-magic-method-dispatch/
> https://gist.github.com/djspiewak/464c11307cabc80171c90397d4ec34ef
>
>
> When the runtime type of the call receiver is being observed, is it
> considered whether that type actually overrides the method in question? For
> example, when the method is an interface's default method that none of the
> runtime call receivers override, can we expect to get a monomorphic call
> site regardless of how many different receiver types are observed at
> runtime, given there is only one method body to invoke?
>
In Hotspot, CHA is currently (AFAIK) disabled for default methods (
https://bugs.openjdk.java.net/browse/JDK-8036580).  So you have to be
careful putting hot code into them.  Overriding the method in the impl and
just calling super will at least restore some performance if type profiling
at the callsite helps.

>
> Thanks
> Brian
>
> --
> You received this message because you are subscribed to the Google Groups
> "mechanical-sympathy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to mechanical-sympathy+unsubscr...@googlegroups.com.
> To view this discussion on the web, visit
> https://groups.google.com/d/msgid/mechanical-sympathy/CAFtUM9Zt%2BwJvkDix_ZEYA%2B5u6hA86VQW7d5ceEyvxetiLvq%2BfA%40mail.gmail.com
> <https://groups.google.com/d/msgid/mechanical-sympathy/CAFtUM9Zt%2BwJvkDix_ZEYA%2B5u6hA86VQW7d5ceEyvxetiLvq%2BfA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
-- 
Sent from my phone

-- 
You received this message because you are subscribed to the Google Groups 
"mechanical-sympathy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to mechanical-sympathy+unsubscr...@googlegroups.com.
To view this discussion on the web, visit 
https://groups.google.com/d/msgid/mechanical-sympathy/CAHjP37EiQQKRfJvm3AVv87DiUpimxckyTVTtHRxgZDYUhfMC4g%40mail.gmail.com.

Reply via email to