Add allowNative system properties as switch#28
Conversation
|
|
||
| final class InstanceBuilder { | ||
|
|
||
| public static final String ALLOW_NATIVE_ARPACK = "dev.ludovic.netlib.arpack.allowNative"; |
There was a problem hiding this comment.
after second thought, maybe it's better to define it at interface LAPACK instead of here, since it is kind of a public API, @luhenry what do you think?
|
kindly ping @luhenry, could you please take another look? |
|
kindly ping @luhenry again ... |
|
@luhenry, thanks for merging! Could you please trigger a release, so I can use it on Spark? |
You're absolutely welcome, and thank you for your patience! I'll trigger a release in next few days. |
|
Kindly ping @luhenry, do you have an ETA for the next release? 👀 |
|
Working on the release now, should be done by tomorrow. Good news it is that the release will also bring support for using Accelerate on macOS. |
This PR proposes to add the following 3 Java system properties as a switch so that the user can control whether
ARPACK.getInstance(),BLAS.getInstance(), andLAPACK.getInstance()prefer to return the native implementation.Sometimes the shared cluster(e.g., Apache Hadoop YARN) host installs very old or bugly OpenBLAS/MKL libs, for Apache Spark jobs, it does not have a switch to disable using that for a single job. With this patch, it's able to pass those system properties so that the user can prefer using the Java implementation without touching the OS libs.