インターンシップでオープンACCを勉強している学部生です。
PGI ワークステーション コンパイラ (バージョン 14.1) が正常に動作することをテストするために、基本的なサンプル コードを自分で作成しました。コマンド ライン命令 'pgcc -acc lab04.c -Minfo' で動作しました。
しかし、私には奇妙な問題があります。@@ どこにも出力がありません!! @@
コンパイラはうまく機能し、カーネルもうまく機能すると確信しています。しかし、私が推測するエラーがあるに違いありません。
みんな私を助けてくれませんか?
コード全体を掲載します。
#include <stdio.h>
#include <stdlib.h>
float scaled(float* v1, float* v2, float a, int n)
{
int i;
float sum = 0.0f;
#pragma acc kernels loop
for(i=0;i<n;i++)
{
v1[i]+=a*v2[i];
sum+=v1[i];
}
return sum;
}
int main(int argc, char* argv[])
{
int n;
float *vector1;
float *vector2;
if( argc > 1 )
n = atoi( argv[1] );
else
n = 100000;
if( n <= 0 ) n = 100000;
vector1=(float*)malloc(n*sizeof(float));
vector2=(float*)malloc(n*sizeof(float));
scaled(vector1, vector2, 3.3, n);
printf("programming done\n");
return 0;
}