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

Use manylinux2014 to get aarch64/ppc64le support #5083

Closed
hrw opened this issue Dec 4, 2019 · 9 comments
Closed

Use manylinux2014 to get aarch64/ppc64le support #5083

hrw opened this issue Dec 4, 2019 · 9 comments

Comments

@hrw
Copy link

hrw commented Dec 4, 2019

Manylinux2014 image got released some time ago. One of things it brings is support for !x86 architectures.

Cryptography is using Travis CI so two things can be joined and used to generate wheel files for aarch64 and ppc64le architectures.

Amount of software installed to be able to run 'pip install cryptography' would be cut. Also install times would be nicer.

@reaperhulk
Copy link
Member

manylinux2014 supports aarch64? Yes we should absolutely support that (and first we should add a job to test against it). Looks like GitHub Actions doesn't support aarch64 so that's a reason to keep using Travis for now.

I care less about ppcle64, but assuming there are no nasty surprises adding a CI job there is okay too.

However...We currently generate wheels via Azure Pipelines and aarch64/ppcle64 isn't available there. We'll need a solution for that before we can actually ship wheels.

@mattsb42-aws
Copy link
Contributor

FYI, CodeBuild supports ARM now[1].

[1] https://aws.amazon.com/about-aws/whats-new/2019/11/aws-codebuild-adds-support-for-arm--gpu--and-x-large-compute-typ/

@hrw
Copy link
Author

hrw commented Feb 14, 2020

@reaperhulk you can also use Travis CI for that.

@alex
Copy link
Member

alex commented Apr 26, 2020

Hmm, so we attempted to use travis to do aarch64/ppc builds. They were outrageously slow.

On the one hand, I'd like to offer aarch64 wheels. On the other hand, we shouldn't offer wheels for platforms we're not testing, and the travis arch64 builders are simply too slow to use.

@hrw
Copy link
Author

hrw commented Apr 28, 2020

Can I get a link to your travis ci builds?

Maybe you can run tests in parallel?

@alex
Copy link
Member

alex commented Apr 28, 2020

84e3e62 is the commit where we added tests on these arches. e978ba7 is where we removed it.

https://travis-ci.org/github/pyca/cryptography/builds/679485851 was a fairly typical build with them enabled -- 2-3x the runtime of any other tests. (I guess ppc and s390x were actually ok, I suppose we could have kept them).

If you're interested in finding a way to speed up our tests, we'd love to see it! More than happy to help as we can.

@hrw
Copy link
Author

hrw commented Apr 28, 2020

The problem is that aarch64 cores are usually slower than x86-64 ones so processors get more of them. Will take a look.

@alex
Copy link
Member

alex commented Apr 28, 2020

Abstractly I guess that's true, but AFAICT Travis provides the same number of x86-64 cores as they do aarch64 cores. (Not that it matters for this, but AFAIK both AWS and Apple's aarch64 cores are close to x86-64 in performance per core)

@reaperhulk
Copy link
Member

I'm going to close this in favor of #5292 since quite a bit of discussion has happened there now and we just need one tracking bug.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 17, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Development

No branches or pull requests

4 participants