question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

TST: ARMv8 sample CI build

See original GitHub issue

CI for more “exotic” platforms like ARM is on our roadmap. Since there’s a free ARMv8-a machine pool available from shippable I went ahead and drafted a feature branch in my NumPy fork that contains a shippable.yml with a few basic commands to build & test NumPy.

The console results are available here, and hopefully you can see those. In short, python runtests.py seems to build without problems and produce this test output: 1 failed, 4627 passed, 406 skipped, 87 deselected, 10 xfailed in 226.59 seconds

There are probably various discussion points, including whether we really want to do this, but a few initial observations:

  • the above is with Python 2.7 because there seem to be some challenges getting pre-installed 3.6 to work by default with their ARM shared pool image
  • seems like a lot of skipped tests above & we’d have to make sure that the default virtual env isolation is appropriate and there’s no other NumPy system installation causing issues, etc. (I think we are very cautious about this stuff on Travis)
    • cython is (so far) the only dependency that I pip installed so would indeed have to check the environment stuff quite carefully to see what is preloaded or prevent interaction with it
  • I did have to email them to get permission to access the free pool, but they were very fast / responsive (minutes usually so far)

Other Note: I didn’t initiate this as a PR directly to NumPy so that I could avoid trying to register the actual NumPy organization with the service until i.e. core devs / steering committee have weighed in, etc.

Issue Analytics

  • State:closed
  • Created 5 years ago
  • Comments:19 (19 by maintainers)

github_iconTop GitHub Comments

1reaction
tylerjereddycommented, Aug 22, 2018

The discussion surrounding “official” PyPI ARMv8 Cython builds is not looking positive, in short because of ecosystem / standards issues.

As a result, I’ve figured out how to cache Cython wheels using shippable Amazon S3 cache uploads in a way that allows both the 2.7 and 3.7 builds to run in 9 minutes – the same as the best previous results with a wheel-specific URL.

Does this seem like a suitable approach for now? If we ever change Cython versions we pay a 1-time 13 minute build tax for each job in the matrix, but then subsequent builds continue using the cached wheel once refreshed.

0reactions
QuLogiccommented, Oct 24, 2018

This has been enabled, no?

Read more comments on GitHub >

github_iconTop Results From Across the Web

GitHub - d-gaston/armv8-examples
ARMv8 Examples. The examples run on a Raspberry Pi 4 with Ubuntu 20.04.1 64 bit Server. Unfamiliar concepts are explained in source comments...
Read more >
Managing CI/CD pipelines with Arm compute resource classes
In this tutorial, I will introduce the new Arm resource classes and demonstrate how to use them in your pipelines to build, test, ......
Read more >
Building on Multiple CPU Architectures - Travis CI Docs
The default CPU architecture used in Travis CI builds is amd64 . ... If you are already using a build matrix to test...
Read more >
Continuous Cross-Architecture Integration with GitLab
Continuous integration provides cluster facilities to automatically build and test code committed to source code repositories.
Read more >
ARM your continuous integration system with fruits!
Where does that build and test execute? That's where the runners enter. Runners are machines linked to Gitlab that will execute the builds....
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found