0

私のタイプの定義

#define NA 70       
#define NTHR 16

typedef struct {
float
    FSUM[NA],
    ZIJ[NA],
    MASS[NA],
    SUB[NA],
    FMASS[NA*NA],
    FRAC[NA*NA],
    MENT[NA*NA],
    QENT[NA*NA],
    ELIJ[NA*NA],
    SIJ[NA*NA];
} Convect;


typedef struct {
    Convect cpa[NTHR];
} ConvectArray;

ConvertArrayaを openCL カーネルに渡したい (および取得したい) 。

カーネルでまったく同じタイプを定義しました。パスとリトリーブはできますが、最終的にこのコードによってマシンがクラッシュ/フリーズします。setKernelArg をコメント アウトし、この引数の enqueuReadBuffer を実行すると、コードが再度実行されます。

質問:

そのようなタイプをカーネルとの間で送受信できますが、間違っていますか?

また

cl_memの配列用のバッファを作成する必要がありconvectますか?

また

他の何か?

4

0 に答える 0