问题标签 [mtj]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
centos - 在 CentOS / Fedora 上安装 OpenBLAS
在一个 Java 项目中,我使用matrix-toolkits-java (MTJ) 来进行高效的矩阵乘法。这依赖于netlib-java,而后者又依赖于机器上安装的 BLAS 和 LAPACK 的优化实现。它专门寻找/usr/lib64/libblas.so.3
并/usr/lib64/liblapack.so.3
找到这些库。
通过 Yum安装时blas
,lapack
我们从参考中获得符号链接/usr/lib64/libblas.so.3
并/usr/lib64/liblapack.so.3
指向 .so 文件blas
并lapack
通过 Yum 安装。
现在我们想使用比参考更快的实现,在我的例子中是 OpenBLAS。与我自己编译还是通过 Yum 安装无关,我最终得到/usr/lib64/libopenblas-r0.2.18.so
.
现在,根据互联网上的任何指南,我应该将参考实现的符号链接替换为 OpenBLAS 实现的符号链接,最终得到如下内容:
好的,我可以做到!我可以使用ln
或通过来做到这一点alternatives
。如果我这样做了,我的代码就会愉快地使用快速的 OpenBLAS。
但是,当ldconfig
运行时,我很棒的符号链接消失了,它们被参考 BLAS 和 LAPACK 安装覆盖。然后我的软件又悲伤又慢了。
所以我的问题是,如何在 CentOS/Fedora 上安装 OpenBLAS 以使运行ldconfig
不会破坏它?我无法删除blas
andlapack
包,因为主机的其他客户端可能会依赖它。相反,我会以某种方式让操作系统理解 OpenBLAS 是blas
和lapack
.
mtj - 使用矩阵工具包java解决任务
我有矩阵 A 和向量 t。而且我需要找到向量x,这样A*x = t所以只有2个步骤,将maxtrix A和向量t转换成三角形,然后找到向量x(或者mb可以用这个库一步完成, 同上)。如何使用 MTJ 做到这一点?关于 MTJ 的文档或信息确实很少。