To start with I expect CPU profiler to have following actions:
Start CPU profiling : This action will start tracking all methods/function the code is executing.
Stop CPU profiling : This action will stop tracking all methods/functions the code is executing.
Capture CPU profiling snapshot : This action will capture a Snapshot of all methods/functions that were ran between starting and stopping CPU profiling. It is like a snapshot of what the program did during time interval t1 and t2.
View What the program is doing currently : This action will show what the program is doing currently.
To start with I expect CPU profiler to have following actions: