Here is a first version of the profiler header file and id generator
. There is some documentation in the source. The header itself allow to record profile, create a text printout, write it to disk and create a profiler_tool_t
to help you create visualization tools.
I tested it on Windows 7 (msvc, clang), Windows 10 (msvc) and linux Manjaro (clang, gcc). It's only for x64 processor.
If you try to use it, I would be interested on feedback about how easy/hard it was to incorporate in your codebase and if it was helpful or not. Any other feedback is also welcomed.
Here is a preview of the UI
. It's only for Windows, and quite frankly not really ready for users (no configuration, panel don't interact correctly with each other, somewhat confusing UI...). It more intended to see if it runs at all on other's computer and to at least give one way to visualize a recorded profile. The top and left panel have some options if you press 'O' while the mouse is over them.
Let me know if it works at all for you.
Any feedback is welcomed.