Use OCaml code to find the oldest commit #79
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.


Before, we spawned a separate
git logprocess after each solve. This has the advantage that it can do work independently of the OCaml GC, but it also has some disadvantages:githas to read and decompress the repository for each solve, rather than caching it.Just looking at the time to find the commit, I get:
That is, the OCaml code is a lot slower at loading the data from disk, but once cached it's massively faster.
For total times (running
bench.sh, which does a warm-up first and so excludes loading from disk):My machine:
jade-2 (with
SCHED_RR):