shared memory dynamic allocation ?

In my knowledge, cudaMalloc allocates global memory.
I wonder if there is a way to allocate shared memory dynamically.

please see B.12 in programming guide

Thank you

What’s the limit of the size of this extra dynamically allocated memory?

total size of shared memory is 16KB, include

(1) execution configuration

(2) formal parameter of kernel function

(3) static shared memory allocation

(4) dynamic shared memory allocation