From: Junio C Hamano <gitster@pobox.com>
To: Patrick Steinhardt <ps@pks.im>
Cc: git@vger.kernel.org, Karthik Nayak <karthik.188@gmail.com>,
Taylor Blau <me@ttaylorr.com>
Subject: Re: [PATCH] commit: detect commits that exist in commit-graph but not in the ODB
Date: Tue, 17 Oct 2023 11:34:53 -0700 [thread overview]
Message-ID: <xmqqjzrlhzci.fsf@gitster.g> (raw)
In-Reply-To: <ZS4rmtBTYnp2RMiY@tanuki> (Patrick Steinhardt's message of "Tue, 17 Oct 2023 08:37:14 +0200")
Patrick Steinhardt <ps@pks.im> writes:
> Fair point indeed. The following is a worst-case scenario benchmark of
> of the change where we do a full topological walk of all reachable
> commits in the graph, executed in linux.git. We parse commit parents via
> `repo_parse_commit_gently()`, so the new code path now basically has to
> check for object existence of every reachable commit:
> ...
> The added check does lead to a performance regression indeed, which is
> not all that unexpected. That being said, the commit-graph still results
> in a significant speedup compared to the case where we don't have it.
Yeah, I agree that both points are expected. An extra check that is
much cheaper than the full parsing is paying a small price to be a
bit more careful than before. The question is if the price is small
enough. I am still not sure if the extra carefulness is warranted
for all normal cases to spend 30% extra cycles
Yeah, I agree that both points are expected. An extra check that is
much cheaper than the full parsing is paying a small price to be a
bit more careful than before. The question is if the price is small
enough. I am still not sure if the extra carefulness is warranted
for all normal cases to spend 30% extra cycles.
Thanks.
next prev parent reply other threads:[~2023-10-17 18:34 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-09 10:55 [PATCH 0/3] rev-list: add support for commits in `--missing` Karthik Nayak
2023-10-09 10:55 ` [PATCH 1/3] revision: rename bit to `do_not_die_on_missing_objects` Karthik Nayak
2023-10-09 10:55 ` [PATCH 2/3] rev-list: move `show_commit()` to the bottom Karthik Nayak
2023-10-09 10:55 ` [PATCH 3/3] rev-list: add commit object support in `--missing` option Karthik Nayak
2023-10-09 22:02 ` [PATCH 0/3] rev-list: add support for commits in `--missing` Junio C Hamano
2023-10-10 6:19 ` Patrick Steinhardt
2023-10-10 17:09 ` Junio C Hamano
2023-10-11 10:37 ` Karthik Nayak
2023-10-11 16:54 ` Junio C Hamano
2023-10-12 10:44 ` Karthik Nayak
2023-10-12 11:04 ` Patrick Steinhardt
2023-10-12 13:23 ` Karthik Nayak
2023-10-12 16:17 ` Junio C Hamano
2023-10-13 5:53 ` Patrick Steinhardt
2023-10-13 8:38 ` Patrick Steinhardt
2023-10-13 12:37 ` [PATCH] commit: detect commits that exist in commit-graph but not in the ODB Patrick Steinhardt
2023-10-13 18:21 ` Junio C Hamano
2023-10-17 6:37 ` Patrick Steinhardt
2023-10-17 18:34 ` Junio C Hamano [this message]
2023-10-19 6:45 ` Patrick Steinhardt
2023-10-19 8:25 ` Patrick Steinhardt
2023-10-19 17:16 ` Junio C Hamano
2023-10-20 10:00 ` Jeff King
2023-10-20 17:35 ` Junio C Hamano
2023-10-23 10:15 ` Patrick Steinhardt
2023-10-13 17:07 ` [PATCH 0/3] rev-list: add support for commits in `--missing` Junio C Hamano
2023-10-12 16:26 ` Junio C Hamano
2023-10-16 10:38 ` [PATCH v2 " Karthik Nayak
2023-10-16 10:38 ` [PATCH v2 1/3] revision: rename bit to `do_not_die_on_missing_objects` Karthik Nayak
2023-10-16 10:38 ` [PATCH v2 2/3] rev-list: move `show_commit()` to the bottom Karthik Nayak
2023-10-16 10:38 ` [PATCH v2 3/3] rev-list: add commit object support in `--missing` option Karthik Nayak
2023-10-16 16:24 ` [PATCH v2 0/3] rev-list: add support for commits in `--missing` Junio C Hamano
2023-10-16 19:01 ` Karthik Nayak
2023-10-16 20:33 ` Junio C Hamano
2023-10-19 12:10 ` [PATCH v3 " Karthik Nayak
2023-10-19 12:10 ` [PATCH v3 1/3] revision: rename bit to `do_not_die_on_missing_objects` Karthik Nayak
2023-10-19 12:10 ` [PATCH v3 2/3] rev-list: move `show_commit()` to the bottom Karthik Nayak
2023-10-19 12:10 ` [PATCH v3 3/3] rev-list: add commit object support in `--missing` option Karthik Nayak
2023-10-19 22:05 ` Junio C Hamano
2023-10-19 23:35 ` Junio C Hamano
2023-10-20 11:14 ` Karthik Nayak
2023-10-20 14:47 ` Karthik Nayak
2023-10-20 17:45 ` Junio C Hamano
2023-10-20 16:41 ` Junio C Hamano
2023-10-24 11:34 ` Karthik Nayak
2023-10-24 12:26 ` [PATCH v4 0/3] rev-list: add support for commits in `--missing` Karthik Nayak
2023-10-24 12:26 ` [PATCH v4 1/3] revision: rename bit to `do_not_die_on_missing_objects` Karthik Nayak
2023-10-24 12:26 ` [PATCH v4 2/3] rev-list: move `show_commit()` to the bottom Karthik Nayak
2023-10-24 12:26 ` [PATCH v4 3/3] rev-list: add commit object support in `--missing` option Karthik Nayak
2023-10-24 17:45 ` Junio C Hamano
2023-10-25 0:35 ` Junio C Hamano
2023-10-25 9:34 ` Karthik Nayak
2023-10-25 6:40 ` Patrick Steinhardt
2023-10-26 12:37 ` Junio C Hamano
2023-10-26 10:11 ` [PATCH v5 0/3] rev-list: add support for commits in `--missing` Karthik Nayak
2023-10-26 10:11 ` [PATCH v5 1/3] revision: rename bit to `do_not_die_on_missing_objects` Karthik Nayak
2023-10-26 10:11 ` [PATCH v5 2/3] rev-list: move `show_commit()` to the bottom Karthik Nayak
2023-10-26 10:11 ` [PATCH v5 3/3] rev-list: add commit object support in `--missing` option Karthik Nayak
2023-10-27 6:25 ` Patrick Steinhardt
2023-10-27 7:54 ` Karthik Nayak
2023-10-27 7:59 ` Karthik Nayak
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqjzrlhzci.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=karthik.188@gmail.com \
--cc=me@ttaylorr.com \
--cc=ps@pks.im \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.