Status of Linux ARM64 support in XGBoost4J

Hello,

I’m new to XGBoost and hit the error java.io.FileNotFoundException: File /lib/linux/aarch64/libxgboost4j.so was not found inside JAR.

From what I can tell, this platform is not supported out of the box (https://github.com/dmlc/xgboost/blob/4abf24aa4f6dca54b8e0003aed129b083eb068d8/dev/prepare_jvm_release.py#L135-L140), although I’m having some trouble finding any issue tracking this.

Are there any plans to support ARM on Linux? This would not only help deploys on graviton instances, but also for local development on ARM Mac OS machines (for containarized tests).

If for some reason this is not planned, my understanding is that one can compile XGBoost locally to include the support. If I prepare a local release with a modified version of that prepare_jvm_release script, will it “just work”, or does the code not work under linux/aarch64?

Thanks

For the JVM packages, we already have support for MacOS ARM64 (Apple Silicon). It should not be too hard to add support for Linux ARM64. In fact, the Python package already supports Linux ARM64 natively. Let me work on it.

1 Like

Linux ARM64 support is now part of the 2.1.0 release of XGBoost4J.

1 Like