FramePro is a C++ real-time profiler, designed specifically for games. Add the FramePro code to your application, either by adding FramePro.cpp/h to your project or by linking to the FramePro dll and start adding timing scopes to your code. You can then connect to your game/application from the FramePro app and view the results in number of ways.
FramePro will show you a graph showing the duration of each frame. This makes it easy to see frames which are over budget. Clicking on a frame will show you the thread usage for that frame, showing the scopes heirachically for each thread. You can also view the core usage, and see which cores your threads are running on.
On certain platforms FramePro can also record context switch data. This gives an accurate view of core usage, showing shen threads start/stop, when they are inturrupted and why. It also shows any other system threads or processes that might be inturrupting thread.
Please see the Setup Guide for getting started with FramePro.
For documentation on the macros please see the FramePro API page