How to install pardiso solver ( matlab version ) on windows?
조회 수: 54 (최근 30일)
이전 댓글 표시
Hi all,
I'm trying to solve Ax=b where A is a large sparse, real non-symmetric matrix.
I searched pardiso solver and found a matlab version which needs to be installed before use ( the package download address ).
I need to write a makefile for installing, however, my OS is win10 and I don't know how to use makefile. Therefore, I wonder if there is someone kindly help me with that. Thanks a lot!
댓글 수: 1
답변 (3개)
Walter Roberson
2016년 5월 31일
편집: Walter Roberson
2016년 9월 1일
For the gfortran libraries see
One version of the pthreads library for windows is at https://sourceforge.net/projects/pthreads4w/ and see also http://stackoverflow.com/questions/19467455/how-to-set-up-pthreads-on-windows and https://sourceforge.net/p/mingw-w64/wiki2/Compile%20pthreads/ and http://stackoverflow.com/questions/28036686/use-pthreads-in-mingw-in-win7
The Pardiso 5.0 user manual says in section 3.3,
"The current version of PARDISO requires the Intel compilers and Microsoft Visual Studio 2012 compilers are installed on your system. This might require that the machine PARDISO runs on has VS2K8 installed (or the Windows SDK for Windows Server 2012)"
My recollection is that the VS compilers might not support pthreads but that the Intel compilers do. I do not know if there would be a problem in the compiling of the C++ source: with the VS compilers: it might be.
(Semi-related article: https://brianreiter.org/2010/08/24/the-sad-history-of-the-microsoft-posix-subsystem/)
댓글 수: 0
Francisco Ramírez
2016년 5월 31일
Hello Alston, I have the same problem (Trying to compile PARDISO on MATLAB using Win10x64). The first example that I try to compile is "pardisoinit" with the following mex command:
mex -LC:\Users\fjram\libpardiso500-WIN-X86-64 -llibpardiso500-WIN-X86-64 -lmwlapack -lmwblas -lgfortran -lpthread -lm -output pardisoinit common.cpp matlabmatrix.cpp sparsematrix.cpp pardisoinfo.cpp pardisoinit.cpp % no work
However, the above instruction produce the following error:
Error using mex
MEX cannot find library 'gfortran' specified with the -l option.
MEX looks for a file with one of the names:
gfortran.lib
libgfortran.lib
Please specify the path to this library with the -L option.
But I don't have any FORTRAN compiler. This is mandatory? I remove the following compiler flags (the only way to avoid compilation errors):
-lgfortran -lpthread -lm
And I get the following:
mex -LC:\Users\fjram\libpardiso500-WIN-X86-64 -llibpardiso500-WIN-X86-64 -lmwlapack -lmwblas -output pardisoinit common.cpp matlabmatrix.cpp sparsematrix.cpp pardisoinfo.cpp pardisoinit.cpp
Building with 'Microsoft Visual C++ 2015 Professional'.
MEX completed successfully.
But when I execute the MEX file, another kind of error appear:
info = pardisoinit(-2,0)
Invalid MEX-file
'C:\Users\fjram\Documents\MATLAB\pardiso-matlab\pardisoinit.mexw64': No se puede
encontrar el módulo especificado.
Any more suggestions?
댓글 수: 7
Rylan
2021년 8월 10일
편집: Rylan
2021년 8월 10일
@Walter RobersonI also met the same question, i.e. MEX cannot find library 'gfortran' specified with the -l option. However, when I run the command "mex -setup fortran", the output are as follows:
MEX configured to use 'Intel Parallel Studio XE 2021 for Fortran With Microsoft Visual Studio 2017' for FORTRAN language compilation.
In my desktop, both the IntelOne API KIT and the Intel HPC KIT is installed, and the mex file is editted according to MEX: How to modify xml file for unsupported compiler? - MATLAB Answers - MATLAB Central (mathworks.cn). I've confirmed that the fortran compiler can compile the .f90 file.
I think the fotran compiler is already installed, however, it cannot be recongnized for this compilation.
So what should I do?
Barbara
2022년 10월 14일
Maybe this helps: https://www.mathworks.com/matlabcentral/fileexchange/119053-add-pardiso-lib-to-matlab-in-windows-10
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Troubleshooting in MATLAB Compiler SDK에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!