我的C代码可以在我的计算机上本地编译并正常运行。
但是,当我尝试使用icc和-mmic标志进行编译并在Intel Xeon Phi上对其进行测试时,我收到以下消息:
/ cm / local / apps / sge / current / spool / node079 / job_scripts / 5438755:第14行:./ sequential.mic:无法执行二进制文件
我在使用SGE作业提交系统的群集中运行所有测试。
我的makefile包含以下行:
sequential: Makefile
icc -mmic -o sequential.mic sequential.c
qsub sequential.job
提交作业的作业文件为:
#!/bin/sh
#$ -S /bin/sh
#$ -l h_rt=00:10:00
#$ -j y
#$ -l fat,accel=XeoPhi
#$ -cwd
. /etc/bashrc
module load intel/compiler/64/13.3/2013.3.163
./sequential.mic
笔记:
一切都按预期进行。
任何建议都值得欢迎。
最佳答案
由于代码需要在Intel Xeon Phi上本机运行,因此二进制文件也无需在执行之前加载到计算机上。
因此,最简单的方法是使用以下命令加载二进制文件然后执行。
/ usr / bin / micnativeloadex ./sequential.mic