Community
cancel
Showing results for 
Search instead for 
Did you mean: 
267 Views

Using original PARDISO library with Intel MKL

Jump to solution

Hello!

 

I am trying to integrate the original PARDISO library (v 6.0) with Intel MKL 2019 for performance comparison but I am receiving the following error message upon compilation:

libpardiso600-GNU800-X86-64.so: undefined reference to `log2f@GLIBC_2.27'
libpardiso600-GNU800-X86-64.so: undefined reference to `logf@GLIBC_2.27'

Here is the command line:

icc pardiso_unsym.c -o p.out -LPARDISO  libpardiso600-GNU800-X86-64.so -I$MKLROOT/include -L${MKLROOT}/lib/intel64 -lmkl_gf_lp64 -lmkl_sequential -lmkl_core -lm -ldl -lgfortran -fopenmp

 

I am using Linux and the sample file can be downloaded from here: https://www.pardiso-project.org/manual/pardiso_unsym.c

Any idea what could be the issue? I really appreciate any help.

 

Best,

Afshin

0 Kudos
1 Solution
mecej4
Black Belt
267 Views

The library libpardiso600-GNU800-X86-64.so is intended for use with Gfortran 8.x, and is not compatible with Intel Fortran compiled object files. The two Fortran compilers use their own Fortran run time libraries, and without special effort (please do not ask how) it is not possible to link object files compiled with two different compilers, or even with two versions of the same compiler.

You can ask the developer of Pardiso 6 for an Ifort-compatible library, or you can instead use the version of Pardiso that is part of MKL with the Intel compiler. If you use the second option, as Gennady F. pointed out already, you should note that the argument lists of the MKL/Pardiso and the Lugano/Basel-Pardiso are slightly different.

View solution in original post

4 Replies
Gennady_F_Intel
Moderator
267 Views

Intel MKL PARDISO and Pardiso ( since v.5.0) are API not compatible and you cannot use Intel MKL in that case.

mecej4
Black Belt
268 Views

The library libpardiso600-GNU800-X86-64.so is intended for use with Gfortran 8.x, and is not compatible with Intel Fortran compiled object files. The two Fortran compilers use their own Fortran run time libraries, and without special effort (please do not ask how) it is not possible to link object files compiled with two different compilers, or even with two versions of the same compiler.

You can ask the developer of Pardiso 6 for an Ifort-compatible library, or you can instead use the version of Pardiso that is part of MKL with the Intel compiler. If you use the second option, as Gennady F. pointed out already, you should note that the argument lists of the MKL/Pardiso and the Lugano/Basel-Pardiso are slightly different.

View solution in original post

JohnNichols
Valued Contributor I
267 Views

please do not ask how

Comment from mecej4:  This means it is really hard. 

Kirill_V_Intel
Employee
267 Views

Hello Afshin!

If you just want to compare performance between two solvers you don't need to link one with another, just create two separate examples with each of the solvers. 

Best,
Kirill

 

Reply