Shared memory size

Hi all,

When I set a query cudaGetDeviceProperties I get the shared memory size is 16k and number of multi processor is 2. Is the shared memory size is fixed for both multiprocessor or each multiprocessor has 16K memory? I have tried with dynamic shared memory allocation but i could not access more than 16k memory… :rolleyes:

each multiprocessor has 16KB shared memory, please look at A.1.1 in programming guide 2.3

It is 16kb per multiprocessor, which implies 16kb per block because a given block only ever runs on one multprocessor, and shared memory is block local. So 16kb is the maximum amount of shared memory you can allocate.

So if there are 2 multiprocessor how can I be sure that each one is occupied? Or cuda will handle it autometically…

I think this could be helpful: http://forums.nvidia.com/index.php?showtopic=31279
It’s a sticky in this forum too.