バブルソートコードを作成しました。ユーザー関数 createProgram の clbuildprogram がエラーを出している 私のカーネルは次のように見えます:
__kernel void sort_kernel(__global const float *a, __global const float *b)
{
const int n=100;
int j;
float temp;
int gid = get_global_id(0);
b[gid]=a[gid];
for(j=0; j < n-gid; j++)
{
if(b[j+1]<b[j])
{
temp=b[j];
b[j]=b[j+1];
b[j+1]=temp;
}
}
}
clbuildprogram は、ランタイム エラーに従ってエラーを出しています。
***カーネルのエラー: :1:1: エラー: 不明な型名 '_kernel'
_kernel void sort_kernel(__global const float *a, __global const float *b) //, ^
:1:9: エラー: 予想される識別子または '(' _kernel void sort_kernel(__global const float *a, __global const float *b) //, ^
:21:3: エラー: 外部宣言が必要です } ^
:23:1: エラー: 外部宣言が必要です } ^
:23:1: エラー: 外部宣言が必要です***
何がエラーなのか、どうすれば修正できるのか教えてください...?