wob*_*obu 7 blas apache-spark netlib
我正在尝试解决我的非工作apache spark和netlib设置问题,我不知道接下来该做什么.
这里有一些信息:
Ubuntu Trusty在每个节点上安装并遵循BLAS包
$ dpkg -l | grep 'blas\|atlas\|lapack'
ii libopenblas-base 0.2.8-6ubuntu1 amd64 Optimized BLAS (linear algebra) library based on GotoBLAS2
$ update-alternatives --get-selections | grep 'blas\|lapack'
libblas.so.3 auto /usr/lib/openblas-base/libblas.so.3
Run Code Online (Sandbox Code Playgroud)我已经构建了一个样本jar来测试netlib-java是否可以检测到这个库,并使用以下代码:
object Main extends App {
println(com.github.fommil.netlib.BLAS.getInstance().getClass().getName())
println(com.github.fommil.netlib.LAPACK.getInstance().getClass().getName())
}
Run Code Online (Sandbox Code Playgroud)
当我执行此代码时,我得到以下响应:
$ java -jar artifacts/BLAStest-assembly-1.0.jar
Mar 29, 2016 3:43:33 PM com.github.fommil.netlib.BLAS <clinit>
WARNING: Failed to load implementation from: com.github.fommil.netlib.NativeSystemBLAS
Mar 29, 2016 3:43:33 PM com.github.fommil.jni.JniLoader liberalLoad
INFO: successfully loaded /tmp/jniloader6790966128222263615netlib-native_ref-linux-x86_64.so
com.github.fommil.netlib.NativeRefBLAS
Mar 29, 2016 3:43:33 PM com.github.fommil.netlib.LAPACK <clinit>
WARNING: Failed to load implementation from: com.github.fommil.netlib.NativeSystemLAPACK
Mar 29, 2016 3:43:33 PM com.github.fommil.jni.JniLoader load
INFO: already loaded netlib-native_ref-linux-x86_64.so
com.github.fommil.netlib.NativeRefLAPACK
Run Code Online (Sandbox Code Playgroud)
所以它似乎在这里工作得很好.但火花无法检测到库.我已将此java依赖项添加到我的程序集jar中
com.github.fommil.netlib:all:1.1.2
Run Code Online (Sandbox Code Playgroud)
如果我尝试使用此包启动火花壳,它也无法正常工作.
spark-shell --packages com.github.fommil.netlib:all:1.1.2
Run Code Online (Sandbox Code Playgroud)
小智 7
看起来你的netlib-java实现正在加载NativeRefBLAS,而不是NativeSystemBLAS.这意味着您包含"com.github.fommil.netlib:all"正常工作,因为如果没有它,您将使用非本机F2J实现.问题是你想使用系统提供的BLAS(OpenBLAS),而不是netlib-java附带的参考实现.这可能只是在火花执行器可见的位置获得正确的共享库.
你说你链接了libblas.so.3,但是如netlib-java自述文件中所述,你还需要配置libblas.so,liblapack.so和liblapack.so.3:
sudo apt-get install libatlas3-base libopenblas-base
sudo update-alternatives --config libblas.so
sudo update-alternatives --config libblas.so.3
sudo update-alternatives --config liblapack.so
sudo update-alternatives --config liblapack.so.3
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5247 次 |
最近记录: |