Jruby: Travis CI: testing on arm64

Created on 15 Jun 2020  路  6Comments  路  Source: jruby/jruby

Travis CI now supports testing on arm64 as an alpha feature (see https://docs.travis-ci.com/user/multi-cpu-architectures/), it would be great if JRuby could be tested on that architecture in addition to the default amd64.

The reason I ask is we would like to start running our JRuby app on AWS's new Graviton2 ARM instances due to the big cost savings, and it would be great to know that JRuby would work without issues on ARM

Most helpful comment

Ok, I think this seals the deal: I managed to get the Ruby specs running on Travis ARM64, and we fail just 0.13% of the specs we pass on x86_64. Many of the remaining failures look like they are environment issues (missing syslog, for example) or possibly bad specs.

We will continue to expand testing on ARM64, but I think it's safe to say that JRuby on ARM64 is working very well already!

All 6 comments

That's interesting, I am already using JRuby for my PiCrate gem, which so far seems to run without issues https://discourse.processing.org/t/experiments-with-64-bit-os-on-raspberrypi4/20628.

Good idea! I don't expect will have many troubles, since the heavy lifting has mostly been done by the JVM. All our native bits already support arm64 as well.

This is a non release item, but I marked it for 9.3 since it would be nice to say we pass tests on aarch64.

I have attempted to do this but the support is rather "raw" at this point. See my PR at #6292.

I managed to basically get it to run, but I could only install OpenJDK 11 which had some failures. That may be resolved now with recent work on JRuby master to get newer JDKs in CI, but the environment is still a bit tricky to work with.

For what it's worth, other than the Java 11 issues, tests appear to run just fine on AArch64. We will be expanding our testing over the coming weeks.

Huzzah! I rebased on master and managed to get a passing run of the smaller jruby "smoke test" suite on ARM64 + JDK11.

I'm now poking at expanding to the other more comprehensive suites, but this is a good sign.

Ok, I think this seals the deal: I managed to get the Ruby specs running on Travis ARM64, and we fail just 0.13% of the specs we pass on x86_64. Many of the remaining failures look like they are environment issues (missing syslog, for example) or possibly bad specs.

We will continue to expand testing on ARM64, but I think it's safe to say that JRuby on ARM64 is working very well already!

Was this page helpful?
0 / 5 - 0 ratings