Hi, I have a device constant 1D array declared in the kernel file, and it’s loaded by cudaMemcpyToSymbol command on the host. It’s a separable convolution kernel, and the kernel is first calculated and created on the host and then copied to the device constant 1D array which is declared already. My problem is if the kernel size on the host is to change how do I change the kernel size in the device constant memory. This all happens at runtime but the device constant memory is assigned at compile time.
Is there a way I can do that?
On the CUDA programming guide, under section 18.104.22.168, it says that the shared and constant memory are static storage, but then above that section it gave an example of dynamically allocated shared memory example that is declared as extern variable.
I am just a little confused by this.
Any help is appreciated, thanks.