静的(コンパイル時)に長さが決まる配列 __shared__ float x[5]; 動的(実行時)に長さが決まる配列 __global__ dfunc() { extern __shared__ float x[]; } __host__ hfunc(dim3 gdim, dim3 bdim, unsigned int len) { unsigned int size; size = sizeof(float)*len; dfunc<<<gdim, bdim, size>>>(); } 動的に長さが決まる配列を複数使いたい場合 とりあえず、全ての配列の合計のサイズの配列を1つだけ確保して、ポインタを適切に設定する。 __global__ dfunc(unsigned int len_x, unsigned int len_i) { extern __shared__ float a[];