Я определил, что размер массива 13107200. Пытаюсь запустить ядро с 25600 блоками и 512 потоками. В информации о системе указано, что Max_Grid_Dim_X = 2147483647 и Max_Block_Dim_X = 1024. Драйвер Nvidia продолжает падать во время работы программы. Как это исправить?
__global__ void aesEncrypt(node *data, int rounds)
{
int index = blockDim.x * blockIdx.x + threadIdx.x;
addRoundKey(&data[index], 0);
for(int i = 1; i <= rounds; i ++) {
subBytes(&data[index]);
shiftRows(&data[index]);
if(i != rounds)
mixColumns(&data[index]);
addRoundKey(&data[index], i);
}
}
aesEncrypt<<<dim3(25600, 1, 1), dim3(512, 1, 1)>>>(gData, r);