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

Test on macOS M1 where available #7766

Merged
merged 2 commits into from
Jan 30, 2024
Merged

Test on macOS M1 where available #7766

merged 2 commits into from
Jan 30, 2024

Conversation

hugovk
Copy link
Member

@hugovk hugovk commented Jan 30, 2024

GitHub Actions now has macOS M1 runners:

Python 3.9.1 was the first to support Apple Silicon:

But 3.9 is not currently available for M1:

So let's test 3.10-3.13 on M1, and 3.8-3.9 on Intel.

I bumped the PYTHONOPTIMIZE jobs from 3.8/3.9 to 3.10/3.11 to avoid complicating the matrix includes/excludes. And needed to install Ghostscript, it wasn't already on the image.

Here's how long it took to test on M1 (left) and Intel (right). M1 is faster for all, around twice as fast for 3.13 and PyPy3.10, and nearly three times as fast for PyPy3.9!

image

That's reduced from about 49 minutes to 25 minutes!

@radarhere radarhere merged commit cae3506 into python-pillow:main Jan 30, 2024
53 of 56 checks passed
@hugovk hugovk deleted the m1 branch January 30, 2024 21:45
shinny-mayanqiong added a commit to shinnytech/tqsdk-ci that referenced this pull request May 31, 2024
@hugovk
Copy link
Member Author

hugovk commented Aug 24, 2024

GitHub Actions now has Python 3.9 available on both macos-13/Intel and macos-14/M1:

actions/setup-python#696 (comment)

That's 1m22s quicker on M1 :)

Shall we switch 3.9 from Intel to M1?

Or shall we keep at least one job on Intel to verify tests still pass on the older architecture? I favour this, it's not such a huge time saving and it's good to have more test coverage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants