Вы можете вычислить свободную постоянную память после компиляции ваших ядер и распределять ее статически.
__constant__ int c[ALL_I_CAN_ALLOCATE];
Затем скопируйте ваши данные в постоянную память с помощью cudaMemcpyToSymbol ().
Я думаю, что это может ответить на ваш вопрос, но ваши требования к постоянной памяти превышают пределы GPU.
Я порекомендую другие подходы, т. Е. Использовать разделяемую память, которая может передавать данные, если все потоки в полупериоде считывают из того же места.