Shared memory allocation across multiple blocks ...


When assigning shared memory in a kernel, if the kernel has many blocks,
which streaming processor allocates this shared memory?

Or, do all the streaming processors running this kernel allocate this shared memory?

Thank you.

Each block allocates a new shared memory region when it begins executing. It deallocates it when it finishes executing.

The shared memory region is allocated on the streaming processor that the block executes on.