feat(pumpkin-core): Add additional (coarse) timing statistics - #554
feat(pumpkin-core): Add additional (coarse) timing statistics#554EmirDe wants to merge 4 commits into
Conversation
ImkoMarijnissen
left a comment
There was a problem hiding this comment.
Overall, the current changes look good to me.
I recall that when I was doing fine-grained profiling when we were rewriting the solver that the time spent in measuring could be quite influential on performance, especially when there were many decisions/failures, so it would be good to profile!
We could consider using something like minstant or coarsetime if it turns out to be a bottleneck.
For fine-grained profiling, I made it so that it is not run by default, and instead it is a compile-time flag that needs to be set, similar to how we do it for checking propagations. I want to run some tests to see how often to particular propagators run and how often they propagate (but this is for another PR). |
In preparation for larger-scale profiling.
Adding measurements so that we can see how much time is being spent in:
This should be inexpensive to measure since we only record this once per fixpoint propagation call or conflict analysis.
I will later open a separate PR where we do a bit more detailed statistics per propagator.
Now this is a draft PR to see if there are any issue, overall it seems ready to me, but I have yet to run it on some instances.