我正在开发一个需要进行重线性代数计算的程序.
现在我正在使用LAPACK/BLAS例程,但我需要利用我的机器(24核Xeon X5690).
我发现像pblas和scalapack这样的项目,但它们似乎都专注于分布式计算和使用MPI.
我没有可用的集群,所有计算都将在一台服务器上完成,并且使用MPI看起来像是一种过度杀伤力.
有人对此有任何建议吗?
在尝试并行计算几个矩阵的特征值和特征向量时,我发现LAPACK dsyevr函数似乎不是线程安全的.
这是C中的一个最小代码示例,它演示了这个问题:
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <assert.h>
#include <omp.h>
#include "lapacke.h"
#define M 8 /* number of matrices to be diagonalized */
#define N 1000 /* size of each matrix (real, symmetric) */
typedef double vec_t[N]; /* type for length N vector */
typedef double mtx_t[N][N]; /* type for N x N matrices */
void
init(int m, int n, mtx_t *A){
/* init m symmetric n x x matrices …Run Code Online (Sandbox Code Playgroud) 当我尝试导入numpy时,我收到以下错误:
/usr/local/lib/python2.7/dist-packages/numpy/linalg/__init__.py in <module>()
49 from .info import __doc__
50
---> 51 from .linalg import *
52
53 from numpy.testing import Tester
/usr/local/lib/python2.7/dist-packages/numpy/linalg/linalg.py in <module>()
27 )
28 from numpy.lib import triu, asfarray
---> 29 from numpy.linalg import lapack_lite, _umath_linalg
30 from numpy.matrixlib.defmatrix import matrix_power
31 from numpy.compat import asbytes
ImportError: /usr/lib/liblapack.so.3: undefined symbol: gotoblas
Run Code Online (Sandbox Code Playgroud)
我已经尝试过解决方案发布错误导入numpy:lapack_lite.so:未定义符号和GotoBLAS错误安装matplotlib与pip在virtualenv上debian wheezy
我已经尝试了以下所有选项:
vvkulkarni@galileo:~$ sudo update-alternatives --config liblapack.so.3
There are 3 choices for the alternative liblapack.so.3 (providing /usr/lib/liblapack.so.3).
Selection Path Priority Status …Run Code Online (Sandbox Code Playgroud) 我想知道LAPACK E和LAPACK 之间有什么区别.我想用QZ分解进行特征分析,但我不确定是否应该从LAPACK E或LAPACK开始.我感谢任何帮助.
我目前在通过PyCharm的软件包管理器安装scipy时遇到问题.我已经成功安装了numpy并且在系统变量中安装了Microsoft Visual Studio C/C++编译器.
但是,当在PyCharm中安装scipy时,会发生以下错误:
执行命令:pip install scipy
发生错误:numpy.distutils.system_info.NotFoundError:找不到lapack/blas资源
我已经看到了在windows上安装blas/lapack的其他资源,但我不确定它是否适用于PyCharm的安装.
如果有人有解决方案/资源重定向我,请告诉我.
我正在使用Octave和R来使用简单的矩阵计算SVD并得到两个不同的答案!代码如下:
[R
> a<-matrix(c(1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1), 9, 4)
> a
[,1] [,2] [,3] [,4]
[1,] 1 1 0 0
[2,] 1 1 0 0
[3,] 1 1 0 0
[4,] 1 0 1 0
[5,] 1 0 1 0
[6,] 1 0 1 0
[7,] 1 0 0 1
[8,] 1 0 0 1
[9,] 1 0 0 1
> a.svd <- svd(a)
> a.svd$d
[1] 3.464102e+00 1.732051e+00 1.732051e+00 1.922963e-16
> a.svd$u
[,1] [,2] [,3] [,4]
[1,] -0.3333333 0.4714045 -1.741269e-16 7.760882e-01
[2,] …Run Code Online (Sandbox Code Playgroud) 我想使用Fortran和LAPACK对一个真正的对称矩阵进行三角对比化.LAPACK基本上提供了两个例程,一个在完整矩阵上运行,另一个在打包存储中的矩阵上运行.虽然后者确实使用较少的内存,但我想知道速度差异是否可以说什么呢?
伦敦玛丽皇后学院的VAMP插件是一个惊人的BSD许可软件集合.所有这些插件都是Sonic Visualizer软件 的基础.也可以使用插件Sdk来构建插件.
您可以为OSX/Linux/Win32目标构建插件.
Queen Mart大学在这里很好地解释了插件架构以及如何为上面指定的不同平台构建.
Java版本,jVamp也可用.一个Python包装器也.
但是,如何为iOS平台构建?
所以,我尝试将Makefile移植到iOS.
首先我更改了文件
build/osx/Makefile.osx
Run Code Online (Sandbox Code Playgroud)
通过这种方式:
CFLAGS := -O3 -ftree-vectorize -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -arch x86_64 -I../vamp-plugin-sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/Headers/ -DUSE_PTHREADS
CXXFLAGS := $(CFLAGS)
LDFLAGS := -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -arch x86_64 -lqm-dsp ../vamp-plugin-sdk/libvamp-sdk.a -framework Accelerate -lpthread -exported_symbols_list=vamp-plugin.list -install_name qm-vamp-plugins.a
PLUGIN_EXT := .a
include build/general/Makefile.inc
Run Code Online (Sandbox Code Playgroud)
然后建立
macbookproloreto:qm-vamp-plugins loreto$ make -f build/osx/Makefile.osx
cc -O3 -ftree-vectorize -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk -arch x86_64 -I../vamp-plugin-sdk -I/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/Headers/ -DUSE_PTHREADS -I. -I../qm-dsp -c -o g2cstubs.o g2cstubs.c
c++ -O3 -ftree-vectorize -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk …Run Code Online (Sandbox Code Playgroud)