John Hawthorn

Results 39 comments of John Hawthorn

It would be possible to implement something like this. I started doing so but quickly decided against it. Spree needs to know the shipping address before the payment spec (in...

Of course! I think it should port over to the YJIT IR branch fairly easily since most of the changes are in (simplifying) invariants.rs and the codegen change is quite...

Ready to merge this, but going to coordinate with YJIT team to avoid conflicts with the upcoming IR changes 🙂.

I compared this against the parent branch for RailsBench. As expected the counts under "invalidation reasons" were identical to the parent commit, and the exits for `opt_getinlinecache` are now exits...

> can we count on the `__bp__` field in `rb_control_frame_struct` always being present? Does MJIT currently make use of this Currently it's always present, but I don't think we should...

This is still an option, but I really don't want to make iseq any larger 😅. I think for now we've worked around the issue in other ways.

> Are you not using `Process.warmup` or https://github.com/ko1/nakayoshi_fork ? That's the kind of problems it's meant to solve. Many callcaches tend to be allocated after boot as there's no good...

I'd like to explore pre-allocating callcaches, but yeah at least the naive way would be to allocate `ObjectSpace.each_object(Class).sum{ _1.instance_methods.count }` callcaches which at least for us would about 10x the...

Looking through a production heap dump I found more cases than expected (still by far the minority) of callcaches which weren't being referenced (anymore?) by an oldgen Class, so I'll...

> `sql.active_record` is great, but it's low-level and won't capture whether we are doing a #find or a #destroy, etc. Nor will it capture callbacks. `payload[:name]` captures these two. It...