intel MKL 和visual studio 2013的配置

转自:https://blog.csdn.net/zsz_shsf/article/details/53435258

调用Intel的MKL库时,编译文件是需要很多选项,intel做了一个link命令的生成器
自动生成link的官方工具:
https://software.intel.com/en-us/articles/intel-mkl-link-line-advisor/

或者可以从安装目录下面找file:///G:/Program%20Files/intelMKL/MKL/intelMKLtool/documentation_2017/en/mkl/common/mkl_link_line_advisor.htm

安装了两个文件,但是 不能用,经过多方探寻找到了稍微好用的解决办法。

先安装Visual Studio 2013,后安装Intel Parallel Studio XE 2015。
假设Intel Parallel Studio XE 2015安装在D:\Program Files (x86)\Intel下

1.新建一个解决方案和项目。解决方案设置为“Release”和“x64”模式。如果是32位就是”x86“,如果想用编译调试模式,就选择“Debug”。

这里写图片描述
这里写图片描述

这里写图片描述

注意,这个比较麻烦,你一定要找准自己的安装目录
在“VC++目录”下设置以下:

可执行文件目录为:G:\Program Files\intelMKL\MKL\intelMKLtool\compilers_and_libraries_2017.0.109\windows\redist\intel64_win\mkl 
包含目录为:G:\Program Files\intelMKL\MKL\intelMKLtool\compilers_and_libraries_2017.0.109\windows\mkl\include 
库目录为:G:\Program Files\intelMKL\MKL\intelMKLtool\compilers_and_libraries_2017.0.109\windows\compiler\lib\intel64_win;G:\Program Files\intelMKL\MKL\intelMKLtool\compilers_and_libraries_2017.0.109\windows\mkl\lib\intel64_win

这里写图片描述
而且这个每次打开工程文件都要设置一下,尚未弄清楚原因

扫描二维码关注公众号,回复: 2536111 查看本文章

在“自定义生成步骤”下,设置“附加依赖项”,选择以下lib文件,缺少什么可能需要尝试以下,一般是这几个:
mkl_intel_c.lib
mkl_intel_thread.lib
mkl_core.lib
libiomp5md.lib
这里写图片描述

感谢:http://blog.csdn.net/zhujiahui622/article/details/50504164

另外当运行调试的时候,如若出现类似这样的错误:

“ConsoleApplication3.exe”(Win32):  已加载“C:\Users\wang\Documents\Visual Studio 2013\Projects\ConsoleApplication3\Debug\ConsoleApplication3.exe”。已加载符号。
“ConsoleApplication3.exe”(Win32):  已加载“C:\Windows\SysWOW64\ntdll.dll”。无法查找或打开 PDB 文件。
“ConsoleApplication3.exe”(Win32):  已加载“C:\Windows\SysWOW64\kernel32.dll”。无法查找或打开 PDB 文件。
“ConsoleApplication3.exe”(Win32):  已加载“C:\Windows\SysWOW64\KernelBase.dll”。无法查找或打开 PDB 文件。
(……)
程序“[8112] ConsoleApplication3.exe”已退出,返回值为 -1073741510 (0xc000013a)。 

只要你观察到的返回值是正确的就可以不用管未打开的PDB文件错误

这是调试信息。

ConsoleApplication3.exe 已加载, 就代表你的程序(ConsoleApplication3.exe) 里面的变量名,函数名 等信息都已经加载,调试时可方便查看。

如果程序不是你自己写的,你就没有该调试符号表,就不能调试。

试试 代码行左边单击鼠标 出现红点(断点) 再按F5运行,程序会停在断点哪一行。
这时鼠标移到变量上,就可查看相应值。 (这种功能是需要调试符号信息依赖的)

符号信息是用来调试的。 也就是让你能在运行时,更具变量名称查询它在内存中的值。(如果你 按我说的做过,就有体会。)
只有ConsoleApplication3.exe 是你自己的程序,所以调试一般就是调试它。

剩下的那些ntdll kernel32之类 都是系统dll 缺少pdb也没有关系,除非你想调试它的代码。
初学者不必深究这些。

这个是对MKL的一些中文介绍:
http://wenku.baidu.com/link?url=9GFM7vQVH_QHwVcZmPzl7NmbFekt-Y5RkEcQRbXtFbNttpVby03KlI_o5Gck3zstoOgF8xh-NZSjC9pgCWz9H5sLXEzqBedYYWYzIo6qy-i

这个是MKL的使用指南(个人感觉比较鸡肋,不如看官方的使用文档)
http://wenku.baidu.com/link?url=I9PEjmMkAFNoYlGFjEqYeUqPZj86_JUxB7dxJS8G4vm1_pnGYG2XpKLfTYIaTrIZ794LVEOdfmySwpv6ngVtCCIfHx2BngJiC5Iu79djikG

这个在配置时有一定作用:
http://www.docin.com/p-564567361.html
这里写图片描述
这里写图片描述
这里写图片描述
http://wenku.baidu.com/link?url=jLyJwQCQeK2mFnDWv5_jBa81AKdWwWq0m551gp49c4GIA4L1N06Du-lBpdeOUQjhl7taHsCiaEgFnAaZiXJ0MauZTz68OvfA8Xxuam6zhIy

这是某一位朋友的建议(比较简单)
1:安装vs2010’
2:安装ivf;
3:在vs2010中的属性,vc++目录那里添加mkl库文件夹的lib,bin,注意的是,lib,bin是有分32位,64位的,而include是不分的,故小心的是include应该整个目录都添加进去。
4:在工具—选项—-INTEL(R)visual fortran—–里面添加lib,bin,include,这里是复制进去路径。
5:在vs2010中的属性,Intel Performance Librarys,use mkl 后面的下拉框选择parallel.

好了,
接下来只需在win32控制台项目中,在c、cpp的main函数中加

#include "mkl.h"

就可以调用mkl库的东西了,我是喜欢用cblas接口的。

查询函数可以到

http://software.intel.com/sites/products/documentation/hpc/mkl/mklman/index.htm

猜你喜欢

转载自blog.csdn.net/u011947630/article/details/81126977
mkl