blas相关内容

线性回归的最高标准是什么?

尝试对多大的系统进行线性回归才是合理的? 具体地说:我有一个具有大约300K样本点和大约1200个线性项的系统。这在计算上可行吗? 推荐答案 您可以将其表示为矩阵方程: 其中矩阵为300K行1200列,系数向量为1200x1,RHS向量为1200x1。 如果将两边乘以矩阵的转置,就会得到未知数的方程组,即1200x1200。您可以使用LU分解或任何其他您想要求解的系数算法。( ..
发布时间:2022-03-14 12:30:09 其他开发

使用GPU的Aradillo(+BLAS)

是否可以使用GPU运行Aradillos计算?有没有办法将GPU BLAS库(例如cuBLAS)与Aradillo一起使用?请注意,我对GPU编程完全陌生。 推荐答案 不,不是。 您不能将CPU的代码假定在GPU上运行,因为两者具有完全不同的内存模型、硬件、编程风格等pp。 ..
发布时间:2022-02-27 20:07:52 其他开发

BLAS v. Julia SharedArray 对象的并行更新

我有兴趣将 Julia SharedArrays 用于科学计算项目.我当前的实现对所有矩阵向量操作都适用于 BLAS,但我认为也许 SharedArray 会在多核机器上提供一些加速.我的想法是简单地逐个索引地更新输出向量,将索引更新移植到工作进程. 以前关于 的讨论此处SharedArrays 和这里关于共享内存对象没有提供明确关于这个问题的指导.看起来很直观很简单,但经过测试,我有点困惑 ..
发布时间:2022-01-23 20:06:49 其他开发

为什么 Fortran 在 julia 基准测试“rand_mat_mul"中很慢?

Julia 主页 (http://julialang.org/) 上的基准测试结果表明,Fortran 是在“rand_mat_mul"基准测试中比 Julia/Numpy 慢约 4 倍. 我不明白为什么从同一个 fortran 库 (BLAS) 调用时 fortran 速度较慢?? 我还对 fortran、julia 和 numpy 的矩阵乘法进行了简单的测试,得到了类似的结果: ..
发布时间:2022-01-23 19:35:16 Python

Cholesky 分解 ScaLapack 错误

我收到以下错误,我不知道为什么. { 1, 1}: 在进入 PDPOTRF 参数号 2 时具有非法值{ 1, 0}:进入 PDPOTRF 参数编号 2 时具有非法值{ 0, 1}:进入 PDPOTRF 参数编号 2 时具有非法值{ 0, 0}:进入 PDPOTRF 参数编号 2 时具有非法值信息 我知道错误消息的含义,但我尽可能遵循网络上可用的过时文档,并尝试从网络上的工作示例代码中拼凑出并行 ..
发布时间:2022-01-14 10:22:00 C/C++开发

BLAS dgemm 中 LDA 参数的目的?

Fortran 参考实现文档指出: * LDA - 整数.* 在入口处,LDA 指定 A 的第一个维度,如声明的那样* 在调用(子)程序中.当 TRANSA = 'N' 或 'n' 时* LDA 必须至少为 max( 1, m ),否则 LDA 必须在* 最小最大值(1,k).* 退出时不变. 但是,给定 m 和 k,我不应该能够推导出 LDA 吗?什么时候允许 LDA 大于 n(或 k)? ..
发布时间:2022-01-14 10:21:26 其他开发

犰狳 + Matlab Mex 段错误

我整天都在摆弄这个,所以我想我可以让每个人都从我的经验中受益,请在下面查看我的答案. 我第一次在 Matlab 中运行已编译的 Mex 文件时遇到问题,因为 Matlab 抱怨它无法打开共享库 libarmadillo.我使用环境变量解决了这个问题LD_LIBRARY_PATH 和 LD_RUN_PATH(DYLD_LIBRARY_PATH 和 LYLD_RUN_PATH 在 osx 中). ..
发布时间:2022-01-12 16:27:20 其他开发

为什么我导入 numpy 后多处理只使用一个核心?

我不确定这是否更多地被视为操作系统问题,但我想我会在这里问一下,以防有人对 Python 的结局有所了解. 我一直在尝试使用 joblib 并行化一个 CPU 繁重的 for 循环,但我发现不是将每个工作进程分配给不同的核心,而是最终所有这些都被分配到同一个核心,并且没有性能提升. 这是一个非常简单的例子...... from joblib import Parallel,delay ..
发布时间:2022-01-12 12:05:49 服务器开发

静态链接 LAPACK

我正在尝试发布一些软件,目前正在编写构建过程的脚本.我被困在我从未想过的事情上,在 x86_64 linux 上静态链接 LAPACK.在配置期间 AC_SEARCH_LIB([main],[lapack]) 工作,但 lapack 单元的编译不起作用,例如 undefiend reference to 'dsyev_' --no lapack/blas 例程未被注意到. 我已经确认我已经安 ..
发布时间:2022-01-11 15:25:28 其他开发

Numpy、BLAS 和 CUBLAS

Numpy 可以针对不同的 BLAS 实现(MKL、ACML、ATLAS、GotoBlas 等)“链接/编译".这并不总是很容易配置,但它是可能的. 是否也可以针对 NVIDIA 的 CUBLAS 实现“链接/编译"numpy? 我在网络上找不到任何资源,在我花太多时间尝试之前,我想确保它完全可行. 解决方案 一句话:不,你不能那样做. 有一个相当不错的 scikit 提供从 ..
发布时间:2022-01-10 16:15:27 Python

在 cuBLAS howto 中转置矩阵乘法

问题很简单:我有两个矩阵 A 和 B,它们是 M 乘 N,其中 M >> N.我想先对 A 进行转置,然后将其乘以 B (A^T *B)将其放入C中,即N乘N.我为A和B设置了所有内容,但是如何正确调用cublasSgemm而不返回错误的答案? 我知道 cuBlas 有一个 cublasOperation_t 枚举用于预先转换内容,但不知何故我并没有正确使用它.我的矩阵 A 和 B 以行优先 ..
发布时间:2022-01-10 15:40:26 其他开发

静态链接到 LAPACK

我正在尝试发布一些软件,目前正在编写构建过程的脚本.我被困在我从未想过的事情上,在 x86_64 linux 上静态链接 LAPACK.在配置期间 AC_SEARCH_LIB([main],[lapack]) 有效,但 lapack 单元的编译不起作用,例如 undefiend 引用 'dsyev_' --no lapack/blas 例程不被注意. 我已经确认我已经安装了这些库,甚至我自己 ..
发布时间:2022-01-04 21:34:58 其他开发

Armadillo 中的并行化

Armadillo C++ 线性代数库文档 陈述了用 C++ 开发库的原因之一成为“通过现代 C++ 编译器中存在的 OpenMP 轻松实现并行化",但 Armadillo 代码没有使用 OpenMP.我如何获得与犰狳并行化的好处?这是通过使用高速LAPACK 和BLAS 替代品 之一来实现的吗?我的平台是 Linux、Intel 处理器,但我怀疑这个问题有一个通用的答案. 解决方案 好吧 ..
发布时间:2021-12-30 21:40:53 C/C++开发

用于性能、缓存的 Numpy Pure Functions

我正在用 numpy 编写一些中等性能的关键代码.此代码将位于最内层循环中,计算的运行时间以小时为单位.快速计算表明,在计算的某些变体中,此代码将执行大约 10^12 次. 所以函数是计算sigmoid(X),另一个是计算它的导数(梯度).Sigmoid 具有对于 y=sigmoid(x), dy/dx= y(1-y) 在 numpy 的 python 中,这看起来像: sigmoid ..
发布时间:2021-12-20 15:57:04 Python