首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >星星之火netlib-java BLAS

星星之火netlib-java BLAS
EN

Stack Overflow用户
提问于 2016-03-29 13:49:28
回答 1查看 6K关注 0票数 8

我正在试着排除我的apache火花和netlib设置的故障,我不知道下一步该做什么。

这里有一些信息:

  • 火花1.3.1 (但也尝试了1.5.1)
  • 具有3个节点的Mesos集群
  • Ubuntu信任每个节点,并安装在BLAS包下面 $ dpkg -l \ grep‘BLAS’blas‘atlas_ ii libopenblas’-base 0.2.8-6 ubuntu1 amd64优化的blas(线性代数)库,基于GotoBLAS2 $update-GotoBLAS2-GotoBLAS2$update- grep‘blas’blas‘Lbblas.so.3 auto /usr/lib/openblas-base/libblas.so.3

我已经构建了一个示例jar来测试netlib-java是否能够检测到这个库,下面的代码如下:

代码语言:javascript
复制
object Main extends App {
  println(com.github.fommil.netlib.BLAS.getInstance().getClass().getName())
  println(com.github.fommil.netlib.LAPACK.getInstance().getClass().getName())
}

当我执行这段代码时,我会得到以下响应:

代码语言:javascript
复制
$ 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

所以在这里似乎很好用。但星星之火无法探测到图书馆。我已将此java依赖项添加到程序集jar中。

代码语言:javascript
复制
com.github.fommil.netlib:all:1.1.2

此外,如果我试图启动这个包的火花外壳,它不工作。

代码语言:javascript
复制
spark-shell --packages com.github.fommil.netlib:all:1.1.2
EN

回答 1

Stack Overflow用户

发布于 2016-04-19 15:21:49

看起来您的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:

代码语言:javascript
复制
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
票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36286313

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档