我了解到clang编译器可以将OpenMP区域转移到GPU上。但是,我对使用clang编译代码感到困惑。我们集群中安装的clang版本是3.9.0(tags / RELEASE_390 / final 288133)。我想要转移的代码基本上是矩阵相乘:
#pragma omp target parallel for shared(C,P,T) private(i,j,k)
for (i=0; i<N; i++) {
for (j=0; j<N; j++) {
for (k=0; k<N; k++) {
C[i][j] += P[i][k]*T[k][j];
}
}
}
我正在使用编译器
clang -O3 -fopenmp-targets=x86_64-unknown-linux-gnu mm.c
clang-3.9: warning: argument unused during compilation: '-fopenmp-targets=x86_64-unknown-linux-gnu'
我不知道我安装的clang版本是否能够将代码卸载到GPU上,如果可以,我该如何操作。欢迎任何评论。