Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

YJIT: Bump SEND_MAX_DEPTH to 10 #7452

Merged
merged 1 commit into from Mar 7, 2023
Merged

Conversation

k0kubun
Copy link
Member

@k0kubun k0kubun commented Mar 6, 2023

On SFR, this reduced send_klass_megamorphic / side_exit_count from 20.5% to 15.0%.

send_klass_megamorphic is not that common on railsbench, so it had no significant impact there.

@k0kubun k0kubun marked this pull request as ready for review March 6, 2023 23:31
@matzbot matzbot requested a review from a team March 6, 2023 23:31
@maximecb
Copy link
Contributor

maximecb commented Mar 7, 2023

Looks like perf improved quite a bit as well, 12 => 13-14% speedup on SFR.

Would be curious how this affects total memory usage.

Also curious what happens if we bump it all the way to 16. I would expect that there's a long tail of classes seen at call sites that follow a pareto distribution. If that's correct, then a bit more increase might again cut the number of side-exits by half.

@maximecb maximecb merged commit a6de8b0 into ruby:master Mar 7, 2023
97 checks passed
@maximecb maximecb deleted the yjit-class-threshold branch March 7, 2023 15:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants