问题标签 [pardiso]

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 投票
3 回答
514 浏览

python - Calling Pardiso 6 in Python

I'm trying to use Pardiso 6 sparse solver library in Python. The problem is that I can't seem to load the Pardiso shared object (SO). Here's the error that I get when calling

I'd really appreciate it if someone could shed some light on this.


PS. I already contacted Pardiso developers and they told me that I need to link against optimized BLAS, but I already have MKL installed via conda.


Update 1: I installed mkl via conda, but it didn't help. Strangely, I added import scipy to the header and the error went away. The same thing happens if I add import mkl. So, for some reason, unless scipy or mkl are manually imported, the .so doesn't know that a lapack installation exists. Anyway, now another error is thrown, which I think might be related the libgfortran library. Here's the error

I double-checked to see if libgfortran is installed, and indeed it is:

I think something similar might be at play, i.e. the library is there but it needs to be triggered (similar to what import scipy seems to have done for liblapack, but I have no idea how I can trigger it.

Note: I found an example in C on Pardiso website and tested the .so file against it via

and it worked with no problem (with the existing libraries on my machine). So, the .so works, it's just that I don't know how to inform it of its dependencies in Python.

Update 2: Here's the output of ldd pardiso_sym:

So, I added the common path, i.e. /lib/x86_64-linux-gnu and /lib64 to PATH and ran the Python script again via:

but the same error is thrown. I also tried adding to LD_LIBRARY_PATH as well, but didn't work either.

0 投票
1 回答
235 浏览

thread-safety - 英特尔 MKL Pardiso 库可以与 MPI 一起运行吗?

我目前正在使用英特尔 MKL 库来解决线性系统。

据我所知,英特尔 MKl 库不支持 MPI 并行化。

  1. 之前
  • 我有一个大目标系统要计算 => 从而构建一个大线性系统来解决
  1. 我的计划是
  • 将大系统拆分成小块(到每个 MPI 进程)=> 构建几个小的线性系统(彼此独立)来解决

这与并行求解器通常会做的不同(将“一个”大矩阵分配给 MPI 进程)。我将拥有几个独立的小矩阵,并让 MPI 进程独立解决它们。

我的问题是,英特尔 MKL Pardiso 求解器是否可以以这种方式使用(同时从几个 MPI 进程中调用以解决独立问题)?

我添加了一张图片以更易于理解的方式描述我将要做什么。

在此处输入图像描述

0 投票
0 回答
235 浏览

python - 如何在 python 中检查 intel MKL pardiso 的版本?

我知道如果我像这样直接将 MKL 导入 python,我可以获得 pardiso 的版本:

但是,如果我使用以下代码导入 intel MKL pardiso:

我使用以下内容来初始化 pardiso 求解器:

在这种情况下,我怎么知道我使用的是哪个版本的 pardiso?

0 投票
0 回答
33 浏览

julia - 在 Windows 上的 Julia 中构建 Pardiso 的问题

我正在尝试将 Julia 中的 Pardiso 包与 Pardiso 库一起使用。但是,我无法构建包。当我查看构建日志时,我看到了这条消息:

在“C:\Users\Rodrigo.julia\packages\Pardiso\yZsYO\deps”中查找找到的库“C:\Users\Rodrigo.julia\packages\Pardiso\yZsYO\deps\libpardiso600-WIN-X86-64.dll ”,尝试加载它...加载失败,原因是:未找到 libpardiso,假设未安装 PARDISO 5/6

我不知道除了 pardiso.lic 和 libpardiso600-WIN-X86-64.dll 文件之外是否还需要其他任何东西。谢谢

0 投票
1 回答
56 浏览

dask - 当单个任务可以在 python 之外消耗大量内存时,dask.delayed 内存管理

我有一些计算从 python 调用 pardiso() 求解器。求解器以对 python 不透明的方式分配自己的内存,但用于访问该内存的指针存储在 python 中。如果我尝试使用 dask.delayed 运行这些计算,有没有办法告诉 dask 计算的预期内存消耗,以便它可以适当地安排它们?

0 投票
0 回答
38 浏览

python - 如何在 python 中获取英特尔 MKL 的 cblas_dgemm 和 pardiso 求解器?

我尝试使用来自 python 的 Intel mkl。我发现的唯一文件建议如下:

我在anaconda3上。上面的代码在 anaconda3 上不起作用,

但我可以使用

直接地。然而,我没有找到任何关于之后要做什么的文件import mkl。例如,我怎样才能得到cblas_dgemm上面例子中的函数。直接调用mkl.cblas_dgemm在我的 anaconda 上不起作用(在 import mkl 之后)。任何想法?最后,我希望调用英特尔 MKL 的 pardiso 求解器,但我真的不知道虽然import mkl适用于我的 anaconda。

0 投票
0 回答
99 浏览

python - 在 python 中从 MKL 2020 访问 pardiso 求解器

如何在 python 中从英特尔的 MKL 访问 pardiso 求解器?在 anaconda3 上,我可以import mkl. 这是我的 mkl 版本。

我在 mkl 的可访问模块中没有看到 pardiso,所以不知道如何从 python 中使用 pardiso 求解器。

0 投票
1 回答
107 浏览

ubuntu - Pardiso 找不到许可证文件

我的 Pardiso C 代码在我的 UBUNTU 系统上编译,但是当我尝试运行代码时,我得到:

许可错误。错误的用户许可用户名:根目录:/root 错误的用户名或主机名。

我尝试了一个新的许可证代码并将 pardiso.lic 文件放在运行目录、主目录和根目录中,但没有运气。

请帮忙

0 投票
0 回答
67 浏览

c++ - 稀疏系统的线性求解器

我想问你关于线性求解器的问题,我在网上看到过,如果我想使用 Ipopt,我可以(在我的情况下)必须使用 Mumps、Pardiso 等线性求解器但是,我选择使用 NLopt . NLopt 是否还需要安装此类求解器或已经集成?我很困惑,因为它声明:支持大规模优化(一些算法可扩展到数百万个参数和数千个约束)。如果我需要使用例如腮腺炎,我只是下载到一个单独的文件夹中,然后在编译期间链接它?

0 投票
1 回答
37 浏览

compiler-errors - 编译 mpi C Pardiso

我正在尝试编译:mpicc -o laplace laplace_mpi.c -L。-lpardiso600-GNU720-X86-64 -llapack -lrefblas -lgfortran -fopenmp -lpthread -ldl -lstdc++ -lm 适用于 gcc 而不是 mpicc 但我得到:/tmp/ccu1hut5.o: In function mpipardiso_driver': laplace_mpi.c:(.text+0x1250): undefined reference to pardiso_mpi_init_c_' 有谁知道解决方案?谢谢,约翰