Re: [PATCH] pack-bitmap: avoid traversal of objects referenced by uninteresting tag

2 messages, 2 authors, 2021-03-22 · open the first message on its own page

Re: [PATCH] pack-bitmap: avoid traversal of objects referenced by uninteresting tag

From: Junio C Hamano <hidden>
Date: 2021-03-19 00:14:49

Patrick Steinhardt [off-list ref] writes:
While most benchmarks are probably in the range of noise, the newly
added 5310.8 benchmark shows a performance improvement of 25600%.
which sounds impressive, but ...
quoted hunk
+test_perf 'rev-list with negation (objects)' '
+	git rev-list --not --all --use-bitmap-index --objects >/dev/null
+'
... is this an interesting use case to begin with, without any
positive end?
quoted hunk
+
 test_perf 'rev-list count with blob:none' '
 	git rev-list --use-bitmap-index --count --objects --all \
 		--filter=blob:none >/dev/null

Re: [PATCH] pack-bitmap: avoid traversal of objects referenced by uninteresting tag

From: Patrick Steinhardt <hidden>
Date: 2021-03-22 12:18:05

On Thu, Mar 18, 2021 at 05:13:58PM -0700, Junio C Hamano wrote:
Patrick Steinhardt [off-list ref] writes:
quoted
While most benchmarks are probably in the range of noise, the newly
added 5310.8 benchmark shows a performance improvement of 25600%.
which sounds impressive, but ...
quoted
+test_perf 'rev-list with negation (objects)' '
+	git rev-list --not --all --use-bitmap-index --objects >/dev/null
+'
... is this an interesting use case to begin with, without any
positive end?
Not at all, but it's easy enough to end up with something similar. E.g.
`git rev-list $TAG --not --all` wouldn't typically show anything at all
if `$TAG` is covered by a revision either, but it shows the same
speedup.

I've changed the benchmark to be a bit more realistic here. I've also
added a second benchmark which shows a modest 16-20% speedup when using
`git rev-list HEAD --not $TAG`, where `HEAD` and `$TAG` point to the
same commit. There's probably other cases that may show speedups, but I
hope those are good enough for now.

Patrick
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help