将Ipopt与MKL关联,MUMPS有问题

时间:2018-09-03 23:57:24

标签: intel-mkl ipopt mumps

我正在尝试将MKL与IPOPT联系起来以提高性能。我通读了以下有助于解决许多问题的线程。

Linking Ipopt with Intel MKL

但是,当我使用以下命令配置Ipopt时。

    $ ../configure --prefix=/usr/local/ --with-blas='-L${MKLROOT}/lib/intel64 -Wl,--no-as-needed -lmkl_rt -lpthread -lm -ldl' CFLAGS='-m64 -I${MKLROOT}/include' CXXFLAGS='-m64 -I${MKLROOT}/include'

我收到此错误,似乎在尝试构建ipopt库时会导致问题。

    $ checking for COIN-OR package Mumps... not given: Variable 'MKLROOT'     not defined in '/home/romela/Ipopt-3.12.10/build/ThirdParty/Mumps/coinmumps-uninstalled.pc

但是,如果我只是按照https://www.coin-or.org/Ipopt/documentation/node13.html#SECTION00043100000000000000中的说明使用./get通过ThirdParty安装未优化的库,则会得到以下内容

    $ checking for COIN-OR package Mumps... yes: 1.6.0 

我在.bashrc文件中以及在运行以下命令时将mklvar.sh作为源代码

    $ echo $MKLROOT

我知道

    $ /opt/intel/compilers_and_libraries_2018.2.199/linux/mkl

这似乎表明我正确地采购了MKL目录。如果有人对我的问题有任何见解,将不胜感激。

2 个答案:

答案 0 :(得分:0)

这似乎是关于MUltifrontal大规模并行稀疏直接求解器(MUMPS)的问题,但是您已经用Massachusetts General Hospital Utility Multi-Programming System(MUMPS)标记了它。这是一个容易犯的错误。

如果您更改问题的标记方式,那么可能会更好地回答您的问题。

理想情况下,一些信誉良好的友好Stack Overflow用户会为MUMPS问题解决程序创建一个新标签,并将其与MUMPS nosql数据库区分开。

答案 1 :(得分:0)

对配置调用中的参数使用双引号而不是单引号。 使用单引号,${MKLROOT} 之类的变量不会扩展。