使用idb调试Intel® Xeon Phi协处理器上的本地应用程序

在使用idb对运行在Intel® Xeon PhiTM协处理器上的本地应用程序(Native Code)进行调试之前首先需要建立起调试器的运行环境。该环境的设置也被包含在Intel®编译器的环境设置脚本中,所以可以通过运行下面的命令建立Intel®编译器和调试器的使用环境:
$ source /opt/intel/composerxe/bin/compilervars.sh intel64

和主机程序的调试一样,我们需要在生成协处理器本地应用程序的编译命令行中加上”-g”选项让编译器生成带有调试符号的可执行程序;然后将可执行程序上传到协处理器系统并确认该程序可以正常启动执行。

接下来在主机环境中启动远程调试器:
idbc_mic -tco -rconnect=tcpip:coprocessor-ip-address:port
缺省情况下的端口号是2000

例如:当协处理器使用缺省的网络配置时启动对第一个Intel® Xeon PhiTM协处理器进行调试的命令行就是:
idbc_mic -tco -rconnect=tcpip:mic0:2000

接下来指定目标协处理器上的可执行程序文件和位于主机上的包含调试符号的文件:
(idb) idb file-remote target-bin-file   // target-bin-file就是上传到协处理器系统的可执行文件
(idb) file host-bin-file                     // host-bin-file就是位于主机上包含调试符号的文件,通常就是被上载到协处理器系统的可执行文件相同

然后就可以使用普通主机上调试程序相同的命令来对程序进行调试了,比如:
(idb) list      // 列出源代码
(idb) br       // 设置断点
(idb) r        // 启动程序执行

更多关于使用Intel Debugger对Intel® Xeon PhiTM程序进行调试的信息可以参见包含在Intel®编译器文档中的Intel® Debugger用户手册。

 

For more complete information about compiler optimizations, see our Optimization Notice.