Skip to content

ci: enable PGO on x86-64-v4 #467

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

Merged
merged 1 commit into from
Jan 2, 2025
Merged

ci: enable PGO on x86-64-v4 #467

merged 1 commit into from
Jan 2, 2025

Conversation

indygreg
Copy link
Collaborator

@indygreg indygreg commented Jan 2, 2025

The GitHub Actions x86-64 runners are using ancient Azure instances
that lack AVX-512. As a result we can't run x86-64-v4 binaries. As
a result we can't perform PGO/BOLT nor run tests using the built
interpreter.

We recently adopted custom runners. Whatever hardware they are
using under the hood appears to support AVX-512 and therefore
the x86-64-v4 instruction set. So we're able to enable PGO
and running tests.

This will theoretically deliver performance wins for the x86-64-v4
builds. But I haven't performed comprehensive testing.

The GitHub Actions x86-64 runners are using ancient Azure instances
that lack AVX-512. As a result we can't run x86-64-v4 binaries. As
a result we can't perform PGO/BOLT nor run tests using the built
interpreter.

We recently adopted custom runners. Whatever hardware they are
using under the hood appears to support AVX-512 and therefore
the x86-64-v4 instruction set. So we're able to enable PGO
and running tests.

This will theoretically deliver performance wins for the x86-64-v4
builds. But I haven't performed comprehensive testing.
@indygreg
Copy link
Collaborator Author

indygreg commented Jan 2, 2025

To my pleasant surprise, this appeared to just work. I'm not sure what the underlying hardware is, but it appears to be sufficiently modern to allow us to have nice things.

@indygreg indygreg marked this pull request as ready for review January 2, 2025 03:18
@indygreg indygreg requested a review from zanieb January 2, 2025 03:18
@zanieb zanieb added the platform:linux Specific to the Linux platform label Jan 2, 2025
@zanieb
Copy link
Member

zanieb commented Jan 2, 2025

Sweet!

cc @kylegalbraith

@indygreg indygreg merged commit 2b45a4d into main Jan 2, 2025
268 checks passed
@indygreg indygreg deleted the gps/x86-64-v4-pgo branch January 2, 2025 04:23
zanieb added a commit that referenced this pull request Jan 5, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
arch:x86_64 platform:linux Specific to the Linux platform
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants