✅ How do I interpret profiler results?
It is a recursive call, and the % doesn't really add up. How do I identify what is slowing my code down? Should I profile memory instead of CPU instead?

4 Replies
This is the caller/callee

It looks like...
Start at the top. That's your entry point. You can then see 6 layers of recursion happening with very little cost being added each time (just the block over on the right), and finally you have a recursive call where the time is fairly evenly split between MakeMove, another recursive call, IsInCheck, and MoveGen...
Have a crappy mspaint drawing.
* A -> D is the total time that Parent spent executing.
* A -> B is the time that Parent spent calling into Child 1.
* B -> C is the time that Parent spent calling into Child 2.
* A -> C is the total time that Parent spent calling into other methods.
* C -> D is the time that Parent spent running its own code, and not calling into other methods

Ooo ok