我试图将MKL与IPOPT联系起来以提高性能。我已阅读以下主题,这有助于解决我的许多问题。
但是,当我使用以下命令配置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目录。如果有人对我的问题有任何见解,将不胜感激。
这似乎是关于MUltifrontal大规模并行稀疏直接求解器(MUMPS)的问题,但您已使用马萨诸塞州综合医院多功能编程系统(MUMPS)标签对其进行了标记。这是一个容易犯的错误。
如果您更改标记的方式,您可能会更好地回答您的问题。
理想情况下,一些具有足够高声誉的友好Stack Overflow用户将为MUMPS问题解决者创建一个新标记,并将其与MUMPS nosql数据库区分开来。