SM Used by a particular program

there aren’t any tools to do this.

If you have access to the source code and want to modify kernel code, you can write code to keep track of it. Here is a recent discussion about it.