Intel® oneAPI Math Kernel Library
Ask questions and share information with other developers who use Intel® Math Kernel Library.
Announcements
This community is designed for sharing of public information. Please do not share Intel or third-party confidential information here.
6586 Discussions

Using original PARDISO library with Intel MKL

Ahmadi__Afshin
450 Views

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
450 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
450 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
451 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.

JohnNichols
Valued Contributor II
450 Views

please do not ask how

Comment from mecej4:  This means it is really hard. 

Kirill_V_Intel
Employee
450 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