首页 文章

在Intel MIC上运行代码时,设备不可用错误

提问于
浏览
4

当我尝试在英特尔MIC上运行我的代码时,它会发出错误,例如“卸载错误:无法卸载到MIC - 设备不可用”

我的示例代码是

#include <stdio.h>
#include <omp.h>

int main()
{
    int N=10;
    int i, a[N];

#pragma offload target(mic)
#pragma omp parallel
#pragma omp for

    for(i = 0; i < N; i++)
    {
        a[i]=i;
        printf("a[%d] :: %d \n", i, a[i]); 
        printf(".....................:\n\n");
    }

    return 0;
}

2 回答

  • 2

    发生了两件事之一 . 卡未启动,您可以通过以下方式检查:

    sudo micctrl -s
    

    或者运行时无法找到依赖库 . 这很可能是由于没有获取编译器环境变量:

    source /opt/intel/composerxe/bin/compilervars.sh intel64
    
  • 1

    我相信你还没有设置编译器的环境 .

    编译环境:

    source /opt/intel/composerxe/bin/compilervars.sh intel64
    

    还要设置卸载库 .

    #include "offload.h"
    

相关问题