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

brilift: Bump Cranelift dependency to v0.100.0 #299

Merged
merged 3 commits into from
Oct 7, 2023
Merged

Conversation

sampsyo
Copy link
Owner

@sampsyo sampsyo commented Oct 7, 2023

Just a regular update to the latest version of Cranelift! This time, there was no API breakage. And in fact, it seems like, somewhere since the last time I updated things, Cranelift added support for AOT compilation (and .o file emission) on macOS-arm64. So we no longer need hacks to force things to run in Rosetta2 on Apple Silicon; I have taken these hacks out.

Which was released 9/20/2023. Surprisingly, everything just worked!
Brilift AOT didn't previously support macOS-on-ARM because
`cranelift-object` didn't, which in turn is because the `object` crate
was missing some relevant features. It seems like that support has been
added, possibly in this PR but I'm not sure:
gimli-rs/object#553

Anyway, stuff seems to be working on ARM now, which is cool. Now we can
remove the hacks to insist on Rosetta2 when on Apple Silicon.
@sampsyo
Copy link
Owner Author

sampsyo commented Oct 7, 2023

Just thought I'd include an updated, equally unreadable bar chart for the latest version running on my M1 Max MacBook Pro:

plot

The average speedups are:

brili: 1.00x
brilirs: 12.50x
brilift-jit: 10.87x
brilift-aot: 29.28x

I still don't think these are all that meaningful because so many of our benchmarks are extremely short-running (skewing things heavily in favor of AOT, for example), but that's a problem for another day.

@sampsyo sampsyo merged commit 14c70c8 into main Oct 7, 2023
16 checks passed
@sampsyo sampsyo deleted the cranelift-0100 branch October 7, 2023 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant