tekknolagi/skybison

Superclass __init__ methods have a lot of cache misses in STORE_ATTR_INSTANCE_UPDATE

tekknolagi opened this issue · 0 comments

We try to be clever and cache the layout transition but if you have (for example)

class C:
  def __init__(self):
    self.a = 123

class D(C):
  def __init__(self):
    super().__init__()
    self.b = 456

Then the cache for self.a in C.__init__ will get thrashed as it gets called from both C and D. This happens a lot in deltablue with Constraint.