Я пытаюсь скопировать 2D-массив из CPU в GPU. Со стороны хоста я отправляю базовый указатель 2D-массива, P - количество элементов в одном измерении
int *d_a;
cudaMalloc(d_a,P*P*sizeof(int));
copyKernelHostToDevice((int(*)[P])d_a,(int(*)[P])hAligned_a);
copyKernelHostToDevice((int(*)[P])d_b,(int(*)[P])hAligned_b);
inline void copyKernelHostToDevice(int (*A)[P],int (*B)[P]){
for(int i=0;i<P;i++)
cutilSafeCall(cudaMemcpyAsync(A[i],B[i],P*sizeof(int),cudaMemcpyHostToDevice));
}
но приведенный выше код дает мне ошибку во время выполнения
cudaSafeCall () Ошибка API времени выполнения 11: неверный аргумент.
Я что-то упустил?
P значительно больше ... и 2048