is there a build in variable that lets the kernel know about the size of shared mem it has dynamically allocaetd?
(ie value of the Ns parameter from execution config <<< Dg, Db, Ns, S >>>)
No.
But since you were the one to set the dynamic shared size, right at evaluation time, you could pass it in as an argument if you need it.
I do this myself in some code to let my kernel decide how much scratch space it has to work with.