问题标签 [openblas]

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.

0 投票
4 回答
2819 浏览

c++ - 什么是犰狳+Atlas、犰狳+OpenBLAS、犰狳+uBLAS、犰狳+MKL?

在许多网站上,他们谈论犰狳+其他东西。他们的意思是什么?

我以以下形式使用犰狳库

在 Linux 环境下。

在这个网站

http://nghiaho.com/?p=1726

Armadillo+OpenBLAS提到。他们的意思是什么?如何使用Armadillo+OpenBLAS


更新

现在是一年多之后。我只是添加这一点,它Armadillo是对诸如BLASor之类的实现的包装OpenBLAS。它不是矩阵运算实现。

0 投票
2 回答
8806 浏览

python - 在 numpy/openblas 上设置运行时的最大线程数

我想知道是否可以在(Python)运行时更改 OpenBLAS 在 numpy 后面使用的最大线程数?

我知道可以在通过环境变量运行解释器之前设置它OMP_NUM_THREADS,但我想在运行时更改它。

通常,当使用 MKL 而不是 OpenBLAS 时,可以:

0 投票
1 回答
4156 浏览

python - 为什么没有 OpenBLAS numpy/scipy 会更快?

我做了两个安装:

  1. brew install numpy(和 scipy)--with-openblas
  2. 克隆 GIT 存储库(用于 numpy 和 scipy)并自己构建

在我克隆了两个方便的脚本以在多线程环境中验证这些库之后:

然后对于我正在执行的每个安装show_config

安装 1 一切都很好:

但是安装 2 的事情就不那么亮了:

因此,似乎当我未能正确链接 OpenBLAS 时。但是现在还好,这里是性能结果。所有测试均在 iMac、Yosemite、i7-4790K、4 核、超线程上进行。

首次安装 OpenBLAS:

麻木:

密码:

没有 OpenBLAS 的第二次安装:

麻木:

密码:

令我惊讶的是,第二种情况比第一种更快。在 scipy 的情况下,添加更多内核后性能没有提高,但即使是一个内核也比 OpenBLAS 中的 4 个内核更快。

有谁知道为什么会这样?

0 投票
2 回答
8827 浏览

numpy - 如何让 NumPy 在 Ubuntu 中使用 OpenBlas?

我同时安装了 BLAS 和 OpenBLAS:

但是,NumPy 仍然说 OpenBLAS 不可用:

我怎样才能解决这个问题?

我不认为我可以卸载libblas3,因为很多东西都依赖于它,包括libblas-dev,甚至libopenblas-dev依赖于它。

我试过

但这没有帮助。

这尤其令人惊讶,因为链接到 OpenBLAS的所有*.so文件:numpy

0 投票
1 回答
2385 浏览

r - 安装 BLAS/ATLAS/MKL/OPENBLAS 会加速用 C/C++ 编写的 R 包吗?

我发现使用 BLAS/ATLAS/MKL/OPENBLAS 之一会提高 R 的速度。但是,它是否仍会改进用 C 或 C++ 编写的 R 包?例如,R 包 Glmnet 用 FORTRAN 实现,R 包 rpart 用 C++ 实现。只是安装 BLAS/...等会提高执行时间吗?还是我们必须重建(构建新的 C 代码)基于 BLAS/...等的包?

0 投票
1 回答
1193 浏览

python - Numpy 与 Blas 和 OpenBlas 需要相同的时间

我用(从系统)安装Numpy(在 virtualenv中)。envOpenBlas

编辑site.cfg

然后,numpy使用pip. 此外,numpy通过系统安装(使用blas)。我用这个脚本测试时间。在这两种情况下,我都有相同的时间。我检查了一下,系统使用Blas和 virtualenv 使用OpenBlas. 为什么需要同样的时间?

我使用 Debian 测试和 python 2.7.9

0 投票
2 回答
5545 浏览

c++ - 如何将 c++ 链接到 OpenBlas?

我安装了 OpenBlas 并可以编译链接到 OpenBlas 的 C 程序使用

如果我尝试使用 g++ 和相同的链接器选项链接 c++ 程序,我会收到错误消息:

有什么提示吗?

0 投票
1 回答
4535 浏览

armadillo - 如何在编译期间强制犰狳库链接到本地​​ OpenBLAS

我需要将犰狳(当前版本为 5.100.1)作为 $HOME(集群应用程序,并且不能安装在每个计算节点上,但 $HOME 是共享文件夹)中的本地库提供。我正在使用 cmake 来管理应用程序,并且已经能够让 cmake 链接到 $HOME(例如 boost)中的本地库,而不是其他地方就好了。犰狳需要 BLAS 和 LAPACK,尽管它可以同时使用(实际上也建议使用)OpenBLAS。但是,我不明白如何强制犰狳使用 OpenBLAS,即使它自己的 cmake .configure 确认它已找到 OpenBLAS。这是在原始犰狳文件夹上运行 ./configure 的输出:

所以它成功地在 $HOME 中找到它,但是如果我在之后查询库到共享库的链接

我看到它已链接到登录节点的 BLAS 和 LAPACK 标准副本,但没有使用 OpenBLAS:

不幸的是,libblas.so.3 和 liblapack.so.3 在节点上不可用:

如何强制犰狳编译并链接到我的本地 OpenBLAS 副本,而不是 /usr/lib64 中 BLAS 和 LAPACK 的标准副本。常见问题解答中有一条说明指出

但从以上结果来看,似乎并非如此。谁能指出我在这里做错了什么?

0 投票
3 回答
5671 浏览

multithreading - 如何使用多 CPU 内核使用 caffe 和 OpenBLAS 训练 NN

我最近在学习深度学习,我的朋友向我推荐了 caffe。使用 OpenBLAS 安装后,我按照文档中的教程MNIST 任务进行操作。但后来我发现它超级慢,只有一个 CPU 内核在工作。

问题是我实验室的服务器没有 GPU,所以我必须使用 CPU。

我用谷歌搜索了这个并得到了一些这样页面。我试着export OPENBLAS_NUM_THREADS=8export OMP_NUM_THREADS=8。但是 caffe 仍然使用一个核心。

如何让 caffe 使用多 CPU?

非常感谢。

0 投票
1 回答
1869 浏览

python - 为什么 numpy.dot 比 numpy.einsum 快得多?

我已经用 OpenBlas 编译了 numpy,我想知道为什么 einsum 比 dot 慢得多(我理解 3 个索引的情况,但我不明白为什么它在两个索引的情况下性能也较低)?这里有一个例子:

有没有办法让 einsum 使用 OpenBlas 和像 numpy.dot 这样的并行化?如果 np.einsum 注意到点积,为什么它不只是调用 np.dot ?