Hi Seth, Thanks for the doc and the in-depth analysis. I think the approach you're proposing is a clever low-memory-cost extension of the current IC mechanism, but I'm not sure it's more than a patch over a system that needs to be more fundamentally re-thought for things like constructors and a general increase in hierarchic polymorphism.
We've been brainstorming a bit on-and-off over the last few years about more radical solutions to this problem, such as "minimorphic" feedback (storing a set of maps that all share the same handler), storing (something like) descriptor arrays rather than maps, storing feedback along the lines of "I know it's an own property", embedding full v-tables into objects, or even having different feedback for different constructors (with call-site specific feedback or some other similar feedback forking mechanism). bit.ly/v8-investigation-of-class-performance summarises a few of these options, others are scattered around other docs or in people's heads. - Leszek On Tue, Dec 17, 2019 at 9:55 PM 'Seth Brenith' via v8-dev < [email protected]> wrote: > Hi everyone, > > I'd appreciate any feedback on the document linked below. It outlines an > idea I've been kicking around for a while, which I hope could reduce the > polymorphic->megamorphic performance cliff in some cases. > > > https://docs.google.com/document/d/1j9uXBT_wudNjM1wobHt2KxxjwwgRcAjsTNs5y_0GwpM/edit?usp=sharing > > Thanks! > > -- > -- > v8-dev mailing list > [email protected] > http://groups.google.com/group/v8-dev > --- > You received this message because you are subscribed to the Google Groups > "v8-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/v8-dev/02852c79-6e06-4c4c-aee5-d1327d7521d5%40googlegroups.com > <https://groups.google.com/d/msgid/v8-dev/02852c79-6e06-4c4c-aee5-d1327d7521d5%40googlegroups.com?utm_medium=email&utm_source=footer> > . > -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/v8-dev/CAGRskv8Cz%2B2Hgob0VJZHBj_dZeWEWZRfO1zrA_-62ZPAkhn43w%40mail.gmail.com.
